Ok, it works in case ITK Static -> RTK Static. When i try to build ITK Shared -> RTK Shared, i have got: [ 19%] Linking CXX executable ../../bin/rtkamsterdamshroud CMakeFiles/rtkamsterdamshroud.dir/rtkamsterdamshroud.cxx.o: In function `rtk::ThreeDCircularProjectionGeometryXMLFileReader::New()': rtkamsterdamshroud.cxx:(.text._ZN3rtk45ThreeDCircularProjectionGeometryXMLFileReader3NewEv[_ZN3rtk45ThreeDCircularProjectionGeometryXMLFileReader3NewEv]+0xe): undefined reference to `typeinfo for rtk::ThreeDCircularProjectionGeometryXMLFileReader' rtkamsterdamshroud.cxx:(.text._ZN3rtk45ThreeDCircularProjectionGeometryXMLFileReader3NewEv[_ZN3rtk45ThreeDCircularProjectionGeometryXMLFileReader3NewEv]+0x41): undefined reference to `typeinfo for rtk::ThreeDCircularProjectionGeometryXMLFileReader' rtkamsterdamshroud.cxx:(.text._ZN3rtk45ThreeDCircularProjectionGeometryXMLFileReader3NewEv[_ZN3rtk45ThreeDCircularProjectionGeometryXMLFileReader3NewEv]+0xc9): undefined reference to `rtk::ThreeDCircularProjectionGeometryXMLFileReader::ThreeDCircularProjectionGeometryXMLFileReader()' CMakeFiles/rtkamsterdamshroud.dir/rtkamsterdamshroud.cxx.o: In function `std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > const rtk::GetProjectionsFileNamesFromGgo<args_info_rtkamsterdamshroud>(args_info_rtkamsterdamshroud const&)': rtkamsterdamshroud.cxx:(.text._ZN3rtk30GetProjectionsFileNamesFromGgoI28args_info_rtkamsterdamshroudEEKSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS8_EERKT_[_ZN3rtk30GetProjectionsFileNamesFromGgoI28args_info_rtkamsterdamshroudEEKSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS8_EERKT_]+0x3c1): undefined reference to `rtk::RegisterIOFactories()' CMakeFiles/rtkamsterdamshroud.dir/rtkamsterdamshroud.cxx.o: In function `rtk::ProjectionsReader<itk::Image<double, 3u> >::GenerateOutputInformation()': rtkamsterdamshroud.cxx:(.text._ZN3rtk17ProjectionsReaderIN3itk5ImageIdLj3EEEE25GenerateOutputInformationEv[_ZN3rtk17ProjectionsReaderIN3itk5ImageIdLj3EEEE25GenerateOutputInformationEv]+0x8e1): undefined reference to `rtk::RegisterIOFactories()' collect2: error: ld returned 1 exit status applications/rtkamsterdamshroud/CMakeFiles/rtkamsterdamshroud.dir/build.make:141: recipe for target 'bin/rtkamsterdamshroud' failed make[2]: *** [bin/rtkamsterdamshroud] Error 1 CMakeFiles/Makefile2:512: recipe for target 'applications/rtkamsterdamshroud/CMakeFiles/rtkamsterdamshroud.dir/all' failed make[1]: *** [applications/rtkamsterdamshroud/CMakeFiles/rtkamsterdamshroud.dir/all] Error 2 Makefile:129: recipe for target 'all' failed make: *** [all] Error 2
On Fri, Oct 26, 2018 at 2:59 AM Simon Rit <[email protected]> wrote: > Hi, > It seems that you are trying to compile against an installed ITK_DIR. This > is no longer possible, see this thread: > https://github.com/SimonRit/RTK/issues/207 > Can you try to compile against your build directory (set ITK_DIR to the > build directory)? > Thanks, > Simon > > On Thu, Oct 25, 2018 at 5:16 PM Julia Semyakishkina < > [email protected]> wrote: > >> Hello. >> I can't build RTK in Linux. I've done all default steps described in >> wiki, but on configure i've got: >> CMake Error at utilities/lp_solve/CMakeLists.txt:9 (include): >> include could not find load file: >> >> ITKModuleMacros >> >> >> Hm.. it tries include module that exists in src ITK dir, not install... >> I mean >> "ls /usr/local/lib/cmake/ITK-4.13 | grep ITKModuleMacros" prints nothing >> "ls /home/user/src/ITK/CMake | grep ITKModuleMacros" prints >> ITKModuleMacros.cmake >> >> OK, i have just tried to add CMAKE_MODULE_PATH=/home/user/src/ITK/CMake >> and got next error: >> >> CMake Error at CMakeLists.txt:250 (message): >> Modules can only be built against an ITK build tree; they cannot be >> built >> against an ITK install tree. >> >> Let's look at the code: >> >> if(NOT ITK_SOURCE_DIR) >> if(NOT EXISTS ${ITK_CMAKE_DIR}/ITKModuleMacros.cmake) >> message(FATAL_ERROR "Modules can only be built against an ITK build >> tree; they cannot be built against an ITK install tree.") >> endif() >> list(APPEND CMAKE_MODULE_PATH ${ITK_CMAKE_DIR}) >> include(ITKModuleExternal) >> else() >> itk_module_impl() >> endif() >> >> Yea, ITK_SOURCE_DIR is not set in my case, but why there is must be >> ITKModuleMacros.cmake at my ITK_CMAKE_DIR dir that points to ITK >> installation dir ? >> >> If i set ITK_CMAKE_DIR to /home/user/src/ITK/CMake where ITKModuleMacros >> is, it resets back to ITK installation directory at >> # -------------------------------------------------------- >> # Find ITK (required) >> if(NOT ITK_SOURCE_DIR) >> find_package(ITK 4.12.0 REQUIRED) >> endif() >> >> >> So, the only way i see is to build inside ITK, but i am not familiar with >> this. Could anyone help me how to build RTK inside ITK. >> _______________________________________________ >> Rtk-users mailing list >> [email protected] >> https://public.kitware.com/mailman/listinfo/rtk-users >> >
_______________________________________________ Rtk-users mailing list [email protected] https://public.kitware.com/mailman/listinfo/rtk-users
