/ / Sysgcc: ld.exe नहीं मिल सकता -lcurl -ljsoncpp - c ++, windows, रास्पबेरी-पीआई, क्रॉस-कंपाइलिंग

Sysgcc: ld.exe नहीं मिल सकता -lcurl -ljsoncpp - c ++, windows, रास्पबेरी-पीआई, क्रॉस-कंपाइलिंग

मैं एक रास्पबेरी पीआई 2 पर एक परियोजना पर काम कर रहा हूंमॉडल बी। मैंने सीधे पीआई पर कोडिंग और संकलन शुरू किया और अब मैं विंडोज 7 पीसी पर काम करना चाहता हूं। मैंने पहले से ही SysGCC क्रॉस-कंपाइलर स्थापित किया है और एक सरल हैलो-वर्ल्ड प्रोग्राम संकलित करने में कामयाब रहा है। समस्या है, मेरे प्रोजेक्ट के लिए मैं कर्ल और जेसनसीपीपी का उपयोग करता हूं। मूल रूप से रास्पबेरी पर मुझे इसे संकलित करने में कोई समस्या नहीं है, लेकिन विंडोज़ पर क्रॉस-कंपाइलर मुझे निम्न त्रुटि देता है:

c:/sysgcc/raspberry/bin/../lib/gcc/arm-linux-gnueabihf/6/../../../../arm-linux-gnueabihf/bin/ld.exe: cannot find -lcurl
c:/sysgcc/raspberry/bin/../lib/gcc/arm-linux-gnueabihf/6/../../../../arm-linux-gnueabihf/bin/ld.exe: cannot find -ljsoncpp

मैं एक मेकफ़ाइल का उपयोग नहीं करता हूं या इसलिए क्योंकि मैंने वास्तव में और रास्पि पर कभी भी काम नहीं किया है, यह इस आदेश के साथ ठीक काम करता है:

g++ ../src/rpi/main.cpp ../src/rpi/connection.cpp ../src/rpi/jsonparser.cpp ../src/rpi/idchecker.cpp ../src/rpi/eventoperator.cpp -o ../bin/main -lcurl -ljsoncpp

विंडोज सिस्टम पर मैंने इसे इस तरह के कमांड के साथ करने की कोशिश की:

arm-linux-gnueabihf-g++.exe -std=c++11 ../src/rpi/main.cpp ../src/rpi/connection.cpp ../src/rpi/jsonparser.cpp ../src/rpi/idchecker.cpp ../src/rpi/eventoperator.cpp -o ../bin/main -L"C:/SysGCC/raspberry/arm-linux-gnueabihf/sysroot/usr/include/jsoncpp/json/" -L"C:/SysGCC/raspberry/arm-linux-gnueabihf/sysroot/usr/include/arm-linux-gnueabihf/curl/" -lcurl -ljsoncpp

तो मैंने पढ़ा कि मुझे कंपाइलर / लिंकर बताना हैजहां पुस्तकालय हैं, लेकिन मैं वास्तव में समझ नहीं पा रहा हूं कि क्यों यह रास्पि पर -एल ध्वज के बिना पूरी तरह से काम करता है। मुझे लगता है कि मैंने पुस्तकालयों को रास्पि के समान फ़ोल्डर में रखा है, इसलिए मुझे समझ में नहीं आता कि वे क्यों हैं नहीं मिला। मुझे आशा है कि कोई मेरी मदद कर सकता है अयस्क मुझे यह सामान कैसे काम करता है इस बारे में कुछ बुनियादी बुनियादी स्पष्टीकरण देता है, क्योंकि मुझे मेरी समस्या के लिए कोई काम करने वाला ट्यूटोरियल या अन्य सहायक प्रश्न नहीं मिलते हैं।

उत्तर:

जवाब के लिए 0 № 1

रास्पबेरी-पीआई पर पुस्तकालयों की तरह सिस्टम निर्देशिका से जुड़ा होने की संभावना है /usr/lib या /usr/local/lib। विंडोज़ पर, आपको -एल ध्वज के साथ सही पथ निर्दिष्ट करने की आवश्यकता है।