2012-07-03 9 views
7

में हैं मैक ओएसएक्स-शेर पर pkg-config के साथ एक अजीब समस्या देख रहा हूं। चल रहा है जब मॉड्यूल है कि मैं डाउनलोड किया मैं निम्न त्रुटि प्राप्त के लिए अजगर स्थापना: जब/usr/स्थानीय/lib फ़ोल्डर में जाँचpkg-config .pc फ़ाइलों को नहीं ढूंढ सकता है हालांकि वे पथ

aspen:python toddysm$ sudo ./setup.py install 
Password: 
`pkg-config --libs --cflags cld` returns in error: 
Package cld was not found in the pkg-config search path. 
Perhaps you should add the directory containing `cld.pc' 
to the PKG_CONFIG_PATH environment variable 
No package 'cld' found 

The `cld` C++ library is absent from this system. Please install it. 

हालांकि मैं libs देख सकते हैं और .pc फ़ाइल pkgconfig सबफ़ोल्डर

में है
aspen:~ toddysm$ cd /usr/local/lib/ 
aspen:lib toddysm$ ls -al 
total 2640 
drwxr-xr-x 6 root wheel  204 Jul 2 17:38 . 
drwxr-xr-x 9 root wheel  306 Jul 2 15:17 .. 
-rwxr-xr-x 1 root wheel 1339516 Jul 2 17:38 libcld.0.dylib 
lrwxr-xr-x 1 root wheel  14 Jul 2 17:38 libcld.dylib -> libcld.0.dylib 
-rwxr-xr-x 1 root wheel  918 Jul 2 17:38 libcld.la 
drwxr-xr-x 3 root wheel  102 Jul 2 17:38 pkgconfig 
aspen:lib toddysm$ cd pkgconfig/ 
aspen:pkgconfig toddysm$ ls -al 
total 8 
drwxr-xr-x 3 root wheel 102 Jul 2 17:38 . 
drwxr-xr-x 6 root wheel 204 Jul 2 17:38 .. 
-rw-r--r-- 1 root wheel 279 Jul 2 17:38 cld.pc 

पीकेजी_CONFIG_PATH को/usr/local/lib/को कमांड लाइन का उपयोग करने के लिए इंगित करने में मदद नहीं करता है। इसे किसी कारण से ~/.bash_profile में सेट करना pkg-config कमांड के रूप में अपरिचित है।

मेरी धारणा यह है कि मुझे कुछ निर्भरता याद आ रही है लेकिन यह सुनिश्चित नहीं है कि क्या। लिनक्स पर कोशिश करते समय मुझे पाइथन देव पैकेज पायथन 2.7-देव गायब था, लेकिन मुझे यकीन नहीं है कि मैक पर यह कैसे जांचें (चाहे वहां है या नहीं)।

किसी भी मदद की सराहना की जाएगी।

उत्तर

19

आप का उपयोग डिफ़ॉल्ट रूप से निर्देशिका pkg-config में लग रहा है सूचीबद्ध कर सकते हैं:

pkg-config --variable pc_path pkg-config 

PKG_CONFIG_PATH पूर्ण /usr/local/lib/pkgconfig पथ चर के साथ जोड़ दिया की जरूरत है।

+0

ऊपर दिए गए आदेश से पूर्ण स्पू यहां आज़माएं। ऐसा लगता है कि cld.cp pkg_config पथ में पाया जाता है लेकिन त्रुटि भ्रामक है: – toddysm

+0

यहां स्पू का लिंक: http://pastebin.com/2Qv4Y3p4 – toddysm

+0

@ ब्रेट हैले, आपको नहीं पता था कि आप डिफ़ॉल्ट से पूछ सकते हैं। हाँ, मैन पेज में यह सब है। धन्यवाद! –

1

ऐसा लगता है कि हालांकि PKG_CONFIG_PATH ठीक से सेट किया गया था, इसलिए पाइथन लिपि इसे उठा नहीं रहा था। स्क्रिप्ट को देखते हुए यह उप-प्रोसेस में pkg-config शुरू करता है और मुझे यकीन नहीं है कि पर्यावरण परिवर्तनीय जानकारी subprocess को पास की जाती है या नहीं। फिर भी मैंने पुस्तकालयों और .cp फ़ाइल को/opt/local/lib/में कॉपी करके समस्या हल की है जो कि डिफ़ॉल्ट फ़ोल्डर है जहां pkg-config दिखता है।

8

पर्यावरण चर को export 'एड को कमांड के लिए उपयोगी होने की आवश्यकता है।

$ export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig 
$ pkg-config --libs --cflags cld 
संबंधित मुद्दे