[CMake] Splitting in multiple directories

portolan michele.portolan at imag.fr
Fri Jul 15 08:48:32 EDT 2016


Yes, it was add_subirectory.

I tried once more after cleaning up the CMakeList.txt and now it 
works....I must have ad some spurious settings generating the error.

Thanks,


Michele


Le 13/07/2016 à 22:48, Alexander Neundorf a écrit :
> On Tuesday 12 July 2016 09:00:43 portolan wrote:
>> Hello,
>>
>> I am new to Cmake and I have a pretty strange behaviour: I set my c+++
>> project to work with a single CMakefile.txt, and now I am trying to have
>> a more proper version with a .txt for each subdirectory
>>
>> Pretty normal stuff, my source tree is:
>>
>> <root> --Lib                (my sources)
>>
>>                --Logger   (as the name says, a logger)
>>
>>               --Lib_UT  (Unitary tests for CxxTest)
>>
>>               --Lib_UT_Runner      (the Cxx-generated test runner)
>>
>>
>> I have a Lib_UT/CMakefile.txt and Lib_UT_Runner/CMakefile.txt, I call
>> them using include_directory(Lib_UT) and
>
> I guess you mean add_subdirectory() ?
>
>
>> include_directory(Lib_UT_Runner) and everything is fine (apart from the
>> runner executable being in a different directory)
>>
>> BUT is I do the same for the logger, Lib_UT_Runner has a linking error
>> where it cannot link to LibLogger.so. But the shared library is
>> correctly generated and it is on the command line :
>>
>> /usr/bin/c++      -lpthread CMakeFiles/Lib_UT_Runner.dir/Runner.cpp.o
>> -o Lib_UT_Runner ../Lib_UT/libLib_UT.so ../libLib.so ../libLogger.so
>> -lpthread
>> -Wl,-rpath,/home/michele/mast-devel/cmake_debug/Lib_UT:/home/michele/mast-de
>> vel/cmake_debug:/home/michele/mast-devel/cmake_debug/Logger
>>
>> I tried using find_library, but I always get not-found
>
> what's the error message ?
>
> Posting relevant bits of your CMakeLists.txt (related to subdirs, creating
> targets and linking) would be helpful too.
>
> Alex
>



More information about the CMake mailing list