Hi,
I have been investigating something strange when cross compiling tango for an ARM processor and I don’t seem to find the issue, maybe someone has figured this out already.
I have followed the steps to cross compile omniORB from source (http://www.tango-controls.org/resources/howto/how-cross-compile-omniorb/) and used similar ./configure for zeromq.
The “make”, “sudo make install” process completed successfully, creating static (.a) and shared(.so) libraries for omniORB and zeromq
When I cross compile the tango library, all succeeds but only a static library gets generated for tango. This has the effect that binaries statically link the tango library - which makes them huge. (60-70MB)
I can see from the config.log that the gcc (not g++) does not support shared libraries, which is strange to me.
What I have done so far:
OS: Ubuntu 16.04 LTS
Tested with various ARM compilers with the same results:
- arm-angstrom-linux-gnueabi-g++ (Linaro GCC 4.7-2013.02-01)
- arm-linux-gnueabi-g+±4.7 (Ubuntu/Linaro 4.7.4-3ubuntu12)
- arm-linux-gnueabi (Ubuntu/Linaro 5.4.0-6ubuntu1~16.04.4)
I have also compiled tango on a Raspberry Pi, think it was g+±4.7 and that compiled the shared tango libraries and my tango binaries was < 2MB.
Is there something I can check or do?
Kind regards,
Theuns