cmake

2011-10-21 16 views
14

में बढ़ावा का न्यूनतम संस्करण सेट करें मैं सिस्टम पर उपलब्ध न्यूनतम बूस्ट संस्करण को परिभाषित करना चाहता हूं। मैंने निम्नलिखित दृष्टिकोण की कोशिश की। दुर्भाग्यवश यह काम नहीं किया, क्योंकि यह सिस्टम पर उपलब्ध केवल 1.40.0 को बढ़ावा देने के साथ संकलित करने का प्रयास करता है।cmake

SET(Boost_USE_STATIC_LIBS OFF) 
SET(Boost_USE_MULTITHREAD OFF) 
SET(BOOST_MIN_VERSION "1.47.0") 

FIND_PACKAGE(Boost REQUIRED) 

FIND_PACKAGE(Boost REQUIRED) 
if (NOT Boost_FOUND) 
     message(FATAL_ERROR "Fatal error: Boost (version >= 1.47.0) required.\n") 
endif (NOT Boost_FOUND) 

INCLUDE_DIRECTORIES(${Boost_INCLUDE_DIRS}) 
LINK_DIRECTORIES(${Boost_LIBRARY_DIRS}) 

संकलन से पहले, सही बूस्ट संस्करण को नियंत्रित करने के लिए मुझे cmake कैसे मिला?

उत्तर

12

पर this आधार पर ऐसा लगता है कि FIND_PACKAGE पर ध्यान नहीं देता SET(BOOST_MIN_VERSION "1.47.0") बजाय आप FIND_PACKAGE(Boost 1.47.0 REQUIRED) या थोड़ा अच्छे FIND_PACKAGE(Boost ${BOOST_MIN_VERSION} REQUIRED)

+0

धन्यवाद FIND_PACKAGE (बूस्ट $ {BOOST_MIN_VERSION} आवश्यक) काम इस्तेमाल कर सकते हैं। – tune2fs

+1

@ tune2fs यह केवल मामूली संस्करणों के लिए काम करता है। यदि आपने 2.0 को बढ़ावा दिया था (ऐसा लगता है कि ऐसी कोई चीज़ मौजूद है) तो यह इसे ढूंढने में विफल रहेगी। – juanchopanza

 संबंधित मुद्दे