Building application using Argus API with Remote Development Visual C++ for Linux Development

Hello,

I am trying to rebuild the ‘oneShot’ sample ARGUS package application remotely using Visual C++ for Linux Development but fail.

I get the following link error:

/home/ubuntu/projects/DVE-Demo/obj/ARM/Debug/main.o: In function main': 1> /home/ubuntu/projects/DVE-Demo/main.cpp:61: undefined reference to Argus::CameraProvider::create(Argus::Status*)’
1> /usr/bin/ld: link errors found, deleting executable /home/ubuntu/projects/DVE-Demo/bin/ARM/Debug/DVE-Demo.out' 1> collect2: error: ld returned 1 exit status 1> 1>C:\Work\DVE-Demo\DVE-Demo\DVE-Demo\obj\ARM\Debug\main.o : error : 1>C:\Work\DVE-Demo\DVE-Demo\DVE-Demo\main.cpp:61: undefined reference to Argus::CameraProvider::create(Argus : error : Status*)’
1>collect2 : error : ld returned 1 exit status

The linker finds libargus.so library but it does not find for some reason the function’s entry.
The library does contain the function ‘Argus::CameraProvider::create’ (checked with ‘nm’ utility).

I am just trying to develop on a more ‘convinient’ platform…

I guess it’s probably a Linux beginner’s question but would be glad if someone could help me.

Many thanks,

Joseph

Yossiw
Does any other sample code can pass builded?
Could you tell what problem you won’t use the default compile tools?

Hello Shane,

Thanks for the reply.
I found the problem. I should have pass the shared library under ‘Linker->Input->Library Dependencies’. The reason I didn’t is because the confusing remark at the bottom of the form saying that the ‘lib’ prefix along with the ‘.a’ suffix will be added the the library name, meaning that the library is a static one and not shared one.
Then I added the static library in 'Linker->Input->Additional Dependencies along with the full path.
Instead of doing this at the first place I tried to add manually the static and shared library on the linker command line which caused the linker to fail.
I hope that in the next versions the comments will be more clear and less confusing.

Joseph

Yossiw
Would you point where need to modify to avoid confusing. It’s better if you can have a draft.

Hello Shane,

I will prepare a draft. I am refering to the 2015 version and don’t know if there is are changes regarding the issues I mentioned.