Other Parts Discussed in Thread: OMAP3530, OMAP3525
I seem to be having a good amount of difficulty getting the cl6x linker to recognize opencv libraries compiled for the arm. What is the correct way to point the linker to the libraries?
This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
The ARM and the C6000 DSP are completely different architectures. The cl6x linker is a linker for the C6000 DSP architecture which is inside the OMAP3525 and OMAP3530 devices.
You should be targeting the ARM code generation tools for the OpenCV libraries.
So do I have to build the opencv libraries for the DSP? I can run opencv on the arm, but that's not the goal.
David,
I may be misunderstanding your question, but I can say that the cl6x linker cannot link with libraries that are compiled for the ARM. You cannot mix and match ARM code and DSP code in that manner with C6Run. It is possible, when creating the static library using the c6runlib-ar tool, to specify DSP side libraries that you want to give to cl6x. But these libraries would be ones needed to satisfy DSP-side linking requirements. Any ARM-side libraries that you application requires should be provided to the final GCC link step for the ARM.
If I'm not understanding what you are doing, please provide some more details so I can help.
Regards, Daniel
Here's what I'm doing.
I wrote a program making OpenCV function calls. I want to run this on the Omap 3530 using the C6Run to take advantage of whatever I can run on the DSP.
While trying to run the C6Runapp-cc, the linker tells me that if can't find the calls in the .o file. I'm assuming this is because it can't find what library files I'm using. I've tried to point the linker to these files but I'm also assuming that they aren't compiled correctly. Do I need to compile these for a specific architecture?
If you are using C6RunApp, that means you intend to run all your code on the DSP. If your application contains OpenCV calls, the only way those calls can be resolved is if the OpenCV APIs are present on the DSP. This means you need to have the OpenCV libraries for the DSP (if they exist) or you need to provide an implementation of those APIs in source so that they can be built for the DSP. I know work is being done to create an OpenCV 1.0 port for the DSP, but I'm not aware that this has been completed. So I'm supposing you have neither of these items, in which case you will not be able to build an application that makes OpenCV calls.
Regards, Daniel
This helps. I have a couple of options I'm going to try. It seems as though there might be pieces of OpenCV code already working on the DSP side of Omap3530.
Thanks