I have an executable in Ada compiled with gprbuild.the executable use some simple function (like sin e cos).This executable is operating in a App binded to a POS (Partition Operating System) designed with vxwork. Once recompiled the whole process it appears a bunch of multiple function declaration errors between the POS_API.o and the ada executable (hello.o) . These functions (sin, cos, ...) are all in the same library. Unfortunately the most easy solution to de-reference all this function in POS is not permitted (bound of design).Any suggestions on how to compile or proceed? Is this any possibility to compile without a specific library or some function in order to avoid the multiple reference error?
How to exclude with GPRbuild some functions?
138 Views Asked by Giovanni At
1
There are 1 best solutions below
Related Questions in ADA
- Is there a way to make array entries complex variables in NumPy?
- Rotating matrix of points for a custom angle
- sparse sparse product A^T*A optim in Eigen lib
- parallelizing matrix multiplication through threading and SIMD
- How to do Matrix Chain Multiplication (MCM) with Java threads?
- How to work with huge matrices in R?
- how to generalize square matrix multiplication to handle arbitrary dimensions
- OpenCV Mats of Type Float and Matrix Multiplication
- Is sum or matrix multiplication faster?
- What does three.js's Matrix4.multiply() method do?
Related Questions in VXWORKS
- Is there a way to make array entries complex variables in NumPy?
- Rotating matrix of points for a custom angle
- sparse sparse product A^T*A optim in Eigen lib
- parallelizing matrix multiplication through threading and SIMD
- How to do Matrix Chain Multiplication (MCM) with Java threads?
- How to work with huge matrices in R?
- how to generalize square matrix multiplication to handle arbitrary dimensions
- OpenCV Mats of Type Float and Matrix Multiplication
- Is sum or matrix multiplication faster?
- What does three.js's Matrix4.multiply() method do?
Related Questions in GPRBUILD
- Is there a way to make array entries complex variables in NumPy?
- Rotating matrix of points for a custom angle
- sparse sparse product A^T*A optim in Eigen lib
- parallelizing matrix multiplication through threading and SIMD
- How to do Matrix Chain Multiplication (MCM) with Java threads?
- How to work with huge matrices in R?
- how to generalize square matrix multiplication to handle arbitrary dimensions
- OpenCV Mats of Type Float and Matrix Multiplication
- Is sum or matrix multiplication faster?
- What does three.js's Matrix4.multiply() method do?
Trending Questions
- UIImageView Frame Doesn't Reflect Constraints
- Is it possible to use adb commands to click on a view by finding its ID?
- How to create a new web character symbol recognizable by html/javascript?
- Why isn't my CSS3 animation smooth in Google Chrome (but very smooth on other browsers)?
- Heap Gives Page Fault
- Connect ffmpeg to Visual Studio 2008
- Both Object- and ValueAnimator jumps when Duration is set above API LvL 24
- How to avoid default initialization of objects in std::vector?
- second argument of the command line arguments in a format other than char** argv or char* argv[]
- How to improve efficiency of algorithm which generates next lexicographic permutation?
- Navigating to the another actvity app getting crash in android
- How to read the particular message format in android and store in sqlite database?
- Resetting inventory status after order is cancelled
- Efficiently compute powers of X in SSE/AVX
- Insert into an external database using ajax and php : POST 500 (Internal Server Error)
Popular # Hahtags
Popular Questions
- How do I undo the most recent local commits in Git?
- How can I remove a specific item from an array in JavaScript?
- How do I delete a Git branch locally and remotely?
- Find all files containing a specific text (string) on Linux?
- How do I revert a Git repository to a previous commit?
- How do I create an HTML button that acts like a link?
- How do I check out a remote Git branch?
- How do I force "git pull" to overwrite local files?
- How do I list all files of a directory?
- How to check whether a string contains a substring in JavaScript?
- How do I redirect to another webpage?
- How can I iterate over rows in a Pandas DataFrame?
- How do I convert a String to an int in Java?
- Does Python have a string 'contains' substring method?
- How do I check if a string contains a specific word?
I'm afraid this isn't really an answer: largely because it's more than ten years since I worked with VxWorks and Ada, and things have got a bit hazy. Also, it's a bit long for a comment on your question
As I used it, VxWorks comes with a whole suite of software that you configure to hold just the components you need into your kernel: in this case, that would presumably include the maths package, functions like
sin()
, as well as the OS functions liketaskSpawn()
.The Ada/VxWorks build process that we used generates a partially-linked object file, with references to
sin()
,taskSpawn()
unresolved (I can't remember how this is achieved; if using GNUld
, maybe the-r
or--relocatable
switch?). When VxWorks loads this object file over the configured kernel, the unresolved references get resolved, and away we go.Now, I don't know what sort of thing your POS_API does. Is it a skin over a configured VxWorks kernel? Does it load yoour Ada program itself? If it is itself a VxWorks program, how come it's exporting
sin()
?I suspect that the problem is to do with the way you've linked your executable. Maybe you could show us your GPR file? Otherwise, I'm just whistling in the dark.