Есть ли способ указать все библиотеки GDCM в CMakeList одновременно?
Это может быть очень простой вопрос, но я не могу найти ответ.
Я только что установил библиотеку GDCM на свою рабочую станцию Windows 7 и скомпилировал ее с помощью CMake, а затем создал сгенерированное решение с использованием VS2012 Express. Однако я не уверен, какие библиотеки GDCM включить в CMakeLists, и мне было интересно, существует ли более простой способ указать все библиотеки одновременно (например, VTK_LIBRARIES для VTK). Я попытался GDCM_LIBRARIES, и это не возвращает значение, как и GDCM. В частности, я ищу заменить:
TARGET_LINK_LIBRARIES (TestvtkGDCMImageReader vtkgdcm gdcmMSFF gdcmDSED gdcm2vtk)
с чем-то более общим.
1 ответ
Как правило, GDCM_LIBRARIES
будет определяться файлом использования, который вы включаете после нахождения пакета GDCM в CMake; однако, это в настоящее время не установлено. Вы можете просто сделать это самостоятельно, установив переменную со всеми именами библиотеки GDCM.
Например, глядя на библиотеки, включенные в бинарный дистрибутив Windows 2.4.0, я мог сделать это в своем CMakeLists.txt
:
set( GDCM_LIBRARIES
gdcmDICT gdcmDSED gdcmIOD gdcmMEXD gdcmMSFF gdcmcharls gdcmexpat gdcmgetopt
gdcmjpeg12 gdcmjpeg16 gdcmjpeg8 gdcmopenjpeg gdcmzlib
# since you built the vtk component, you might also include them here
vtkgdcm gdcm2vtk
)
# then you can replace your line with this
target_link_libraries( TestvtkGDCMImageReader ${GDCM_LIBRARIES} )
Проверьте, где установлены созданные вами библиотеки GDCM, и убедитесь, что у вас есть все библиотеки.