When the library is being created by CMake itself I would have expected a SONAME by default: "Default is to set "soname" on all shared libraries and modules as long as the platform supports it."

Is armLinux a valid value for CMAKE_SYSTEM_NAME?
Quick glimpse at some documentation suggests you may want "Linux" instead since there are no armLinux platform files.

I assume that may also set the proper flags for SONAME to work by default(?)

Nils

On 07/19/2013 11:31 AM, Дмитрий Дороговцев wrote:


2013/7/19 Nils Gladitz <[email protected] <mailto:[email protected]>>

    Does /home/mgh/proj/test/lib/libfoo.so not have a SONAME while
    your native libfoo.so does?

    The linker may use the SONAME when available and might fall back
    to the path as seen on the command line
    (/home/mgh/proj/test/lib/libfoo.so) otherwise?

    Nils



Yes, you are totally right! I have explicitly set soname to library with
set( CMAKE_SHARED_LINKER_FLAGS "-Wl,-soname,libfoo.so" )
and after this final executable shows its dependencies as host one.
Thank you very much. I have one more question, though: should I
set soname every time explicitly or this should be done by toolchain
linker?


--

Powered by www.kitware.com

Visit other Kitware open-source projects at 
http://www.kitware.com/opensource/opensource.html

Please keep messages on-topic and check the CMake FAQ at: 
http://www.cmake.org/Wiki/CMake_FAQ

Follow this link to subscribe/unsubscribe:
http://www.cmake.org/mailman/listinfo/cmake

Reply via email to