gcc - "/ Usr/bin/ld: पुस्तकालय नहीं मिल सकता"




linker fortran (2)

के रूप में ../libanne4.0/lib एक रिश्तेदार पथ है, आप इसे एक पूर्ण एक में बदलने की कोशिश कर सकते हैं

इसके अलावा आप जांच कर सकते हैं कि लिंकर प्रक्रिया में लिब्स तक पहुंचने और पढ़ने का अधिकार है या नहीं।

अद्यतन: लिंकर को विकल्प- -l<name> का उपयोग कर निर्दिष्ट लाइब्रेरी प्राप्त करने के लिए पुस्तकालय का -l<name> होना चाहिए lib<name>.[a|so] -L lib<name>.[a|so] और पैरामीटर को -L को इंगित करना चाहिए कि पुस्तकालय स्थित था ।

-L को आगे बढ़ाने की जरूरत है- -l विकल्प (एस)

-l और / या -L कई बार निर्दिष्ट कर सकता है

मेरफाइल का उपयोग करते हुए फोरट्रान कोड संकलित करने का यह मेरा पहला प्रयास है ओएस उबंटू 12.04 एलटीएस 64 बिट है। मुझे निम्न त्रुटियों का सामना करना पड़ा:

gfortran  -o przm3123.exe canopy.o chem.o cnfuns.o cropdate.o datemod.o debug.o debug_cn.o f2kcli.o floatcmp.o furrow.o general.o i_errchk.o infnan.o inivar.o ioluns.o iosubs.o lambertw.o m_readvars.o utils.o wind.o fcscnc.o przm3.o rsexec.o rsinp1.o rsinp2.o rsinp3.o rsmcar.o rsmisc.o rsprz1.o rsprz2.o rsprz3.o rsprzn.o rsutil.o rsvado.o -L ../libanne4.0/lib -lwdm -ladwdm -lutil
/usr/bin/ld: cannot find -lwdm
/usr/bin/ld: cannot find -ladwdm
collect2: ld returned 1 exit status
make: *** [przm3123.exe] Error 1

Makefile में मुख्य तत्व है:

przm2_LIBS = -L ../libanne4.0/lib -lwdm -ladwdm -lutil

क्या इस त्रुटि को ठीक करने के लिए मैं कुछ भी कर सकता हूं? क्या मैं अन्य कंपाइलर की कोशिश करूँ?


नाम "adwdmlib.a" में कुछ गड़बड़ है एक लिंकिंग फ्लैग "-l adwdm" कंपाइलर को "libadwdm.a" नाम के साथ एक lib फ़ाइल की उम्मीद करने के लिए, "adwdmlib.a" नहीं बताएगा। क्या यह सहायक या प्रासंगिक है? यदि आपकी लाइब्रेरी का नाम "adwdmlib.a" है, तो शायद यह संभव है कि आपका लिंकर इसे क्यों नहीं ढूंढ सकता है





gfortran