में स्रोत_ग्रुप में फ़ाइलों को जोड़ना मुझे सीएमके के साथ कोई समस्या है जिसमें मुझे विजुअल स्टूडियो के अंदर फ़ोल्डर्स/फ़िल्टर में अपनी फाइलें नहीं मिल सकतीं।सीएमके
# Add folders to filters
file(GLOB_RECURSE DATABASE_SRCS RELATIVE ${CMAKE_CURRENT_SOURCE_DIR}/database *.cpp *.h)
file(GLOB_RECURSE LOG_SRCS RELATIVE ${CMAKE_CURRENT_SOURCE_DIR}/log *.cpp *.h)
file(GLOB_RECURSE NETWORK_SRCS RELATIVE ${CMAKE_CURRENT_SOURCE_DIR}/network *.cpp *.h)
file(GLOB_RECURSE THREADING_SRCS RELATIVE ${CMAKE_CURRENT_SOURCE_DIR}/threading *.cpp *.h)
file(GLOB_RECURSE UTILS_SRCS RELATIVE ${CMAKE_CURRENT_SOURCE_DIR}/utils *.cpp *.h)
source_group(database FILES ${DATABASE_SRCS})
source_group(log FILES ${LOG_SRCS})
source_group(network FILES ${NETWORK_SRCS})
source_group(threading FILES ${THREADING_SRCS})
source_group(utils FILES ${UTILS_SRCS})
एक मुद्दा यह है कि इस समस्या का कारण हो सकता है कि GLOB_RECURSE
की फ़ाइलों को ${CMAKE_CURRENT_SOURCE_DIR}
में हैं, लेकिन /database
(या जो भी अन्य निर्देशिका) के सापेक्ष वापसी है।
उदाहरण के लिए, database/
में dbcore.cpp
नामक एक फ़ाइल है। यह फ़ाइल DATABASE_SRCS
को dbcore.cpp
के रूप में जोड़ा जाता है, लेकिन मुख्य निर्देशिका (यानी ${CMAKE_CURRENT_SOURCE_DIR}
) में फ़ाइलें भी शामिल हो जाती हैं, लेकिन database/
, ../common.h
जैसे सापेक्ष पथ है।
एक और मुद्दा यह हो सकता है कि विजुअल स्टूडियो प्रोजेक्ट के अंदर डिफ़ॉल्ट "शीर्षलेख फ़ाइलें" और "स्रोत फ़ाइलें" फ़िल्टर पहले से मौजूद हैं।
मैं सीएमके 2.8.6 और विजुअल स्टूडियो 11/2012 का उपयोग कर रहा हूं।