मैं बहुत ही सरल CMakeLists.txt
CMake: "लक्ष्य मंच गतिशील जोड़ने का समर्थन नहीं करता"
CMAKE_MINIMUM_REQUIRED(VERSION 2.8)
FIND_PACKAGE(VTK REQUIRED)
PROJECT(test CXX)
कि वास्तव में कुछ नहीं करता है। पैकेज वीटीके सही ढंग से /usr/lib/vtk-5.8/VTKConfig.cmake
के तहत पाया जाता है। इस फ़ाइल में संकेत मिलता है कि शेयर की गई लाइब्रेरी libfoobar.so
निष्पादनयोग्य में जोड़ा जा करने की आवश्यकता होगी प्रकार
ADD_LIBRARY(foobar SHARED IMPORTED)
के बयानों के एक नंबर शामिल हैं।
ऊपर स्क्रिप्ट का उपयोग कर Makefiles बनाने पर है, तथापि, CMake शिकायत है कि
CMake Warning (dev) at /usr/lib/vtk-5.8/VTKTargets.cmake:244 (ADD_LIBRARY):
ADD_LIBRARY called with SHARED option but the target platform does not
support dynamic linking. Building a STATIC library instead. This may lead
to problems.
Call Stack (most recent call first):
/usr/lib/vtk-5.8/VTKConfig.cmake:200 (INCLUDE)
/usr/share/cmake-2.8/Modules/FindVTK.cmake:73 (FIND_PACKAGE)
CMakeLists.txt:4 (FIND_PACKAGE)
This warning is for project developers. Use -Wno-dev to suppress it
इस चेतावनी का क्या मतलब है और यह कैसे के साथ पेश किया जाता है?
यह सीएमके 2.8.9 के साथ एक लिनक्स सिस्टम है। हालांकि यह त्रुटि संदेश उन सभी संकुलों के लिए प्रकट होता है जिनमें ADD_LIBRARY(foobar SHARED IMPORTED)
है, VTK-5.8 का उपयोग यहां एक उदाहरण के रूप में किया जाता है।
दरअसल। किसी कारण से, इस लिनक्स मशीन पर 'TARGET_SUPPORTS_SHARED_LIBS' सेट नहीं है। स्पष्ट रूप से 'SET_PROPERTY (वैश्विक संपत्ति TARGET_SUPPORTS_SHARED_LIBS TRUE) सेट करना 'चेतावनियों से दूर है। –