Hej, A short side-question - you mentioned you are compiling a DLL, yet you mention also you are on OSX. I'd expect a .dylib on OSX? Anywaysz, I think Andreas already answered your question quite clearly: you probably misinterpret the output of nm, since your CMakeLists.txt file looks exactly as it should.
Sincerely, Jakob On Mon, Mar 7, 2016 at 9:29 PM, Ivan <i...@sleepyiora.pw> wrote: > Hello! > I hope someone could finally help me. I spent about two days to find > solution for my problem, but with no luck. > > Here is my problem: > > I want to create a shared library (dll on Windows, .so on Linux, .dylib on > OS X) that contains some functions. This library should export only these > functions and nothing else. I guarantee that these function are pure C > functions, so no C++ STL is needed to call them. > > Then I want to create an application that call functions from the shared > library mentioned above. I mean that the application should not have these > functions inside. I want OS linker to link the application with the library > at runtime, when it initializes the application. I know, how to do this on > Windows with Visual Studio: create DLL project, write functions and > compile, then there will be two files: .dll and .lib, link the .lib file > with the application and at runtime Windows will find the .dll. But how can > I do so with CMake? > > Here is my CMakeLists.txt: > > cmake_minimum_required(VERSION 3.3) > project(untitled19) > > set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11") > > set(LIBRARY_SRC library.cpp) > > add_library(libra SHARED ${LIBRARY_SRC}) > > set(SOURCE_FILES main.cpp) > add_executable(untitled19 ${SOURCE_FILES}) > target_link_libraries(untitled19 libra) > > > This works and both library and executable are compiled. Unfortunately > library seems to be linked into the executable: ‘nm’ command shows that the > executable itself exports needed functions! > > I think there should be a solution for this, but I cannot find it. Can anyone > help me? > > For more clarification: I’m using OS X El Capitan. > > —— > > Best regards, Ivan. > > > > > -- > > Powered by www.kitware.com > > Please keep messages on-topic and check the CMake FAQ at: > http://www.cmake.org/Wiki/CMake_FAQ > > Kitware offers various services to support the CMake community. For more > information on each offering, please visit: > > CMake Support: http://cmake.org/cmake/help/support.html > CMake Consulting: http://cmake.org/cmake/help/consulting.html > CMake Training Courses: http://cmake.org/cmake/help/training.html > > Visit other Kitware open-source projects at > http://www.kitware.com/opensource/opensource.html > > Follow this link to subscribe/unsubscribe: > http://public.kitware.com/mailman/listinfo/cmake >
-- Powered by www.kitware.com Please keep messages on-topic and check the CMake FAQ at: http://www.cmake.org/Wiki/CMake_FAQ Kitware offers various services to support the CMake community. For more information on each offering, please visit: CMake Support: http://cmake.org/cmake/help/support.html CMake Consulting: http://cmake.org/cmake/help/consulting.html CMake Training Courses: http://cmake.org/cmake/help/training.html Visit other Kitware open-source projects at http://www.kitware.com/opensource/opensource.html Follow this link to subscribe/unsubscribe: http://public.kitware.com/mailman/listinfo/cmake