मैं निम्नलिखित लेआउट के साथ एक परियोजना है शामिल नहीं पा सकते हैं:CMake फ़ाइलों
/build
/source
+--- CMakeLists.txt
|
+--- /bin
| +--CMakefiles.txt
| +--main.cpp
|
+--- /jsoncpp
| +--- /json
| | +--json.h
| | +--json-forwards.h
| |
| +--jsoncpp.cpp
| +--CMakeLists.txt
|
+--- /jsonreader
+-- jsonreader.cpp
+-- jsonreader.h
+-- CMakeLists.txt
/source/CMakeLists.txt में मैं कोड की इस पंक्ति है,
include_directories(jsoncpp jsonreader)
लेकिन फिर निर्माण निर्देशिका में चल रहे 'cmake जी "MSYS Makefiles" ../source' Makefile उत्पन्न करता है और फिर 'बनाने' निम्न त्रुटि उत्पन्न करता चल:
Scanning dependencies of target updater
[ 33%] Building CXX object bin/CMakeFiles/updater.dir/main.cpp.obj
In file included from k:/own-projects/updater-Project/withJsonCpp/source/bin/main.cpp:2:0:
../source/jsonreader/jsonreader.h:2:18: fatal error: json.h: No such file
or directory
compilation terminated.
make[2]: *** [bin/CMakeFiles/updater.dir/main.cpp.obj] Error 1
make[1]: *** [bin/CMakeFiles/updater.dir/all] Error 2
make: *** [all] Error 2
मैं क्या कर रहा हूँ गलत और मैं इसे कैसे हल कर सकता हूं?
क्या आप अपने शामिल करने के लिए jsoncpp/json नहीं जोड़ना चाहिए। या आपकी सी ++ फाइलों में आप रिश्तेदार पथ का उपयोग करते हैं? – drescherjm
@drescherjm: मेरे सी ++ में मैं केवल "शामिल" हेडर का उपयोग करता हूं। "हेडर के स्थान की परवाह किए बिना यह गलत है? Jsoncpp/json जोड़ना काम नहीं करता है। – Amani
मुझे विश्वास है कि आप अपने शामिल पथों को $ { CMAKE_SOURCE_DIR} – drescherjm