2015-04-09 8 views
9

मैं unf_ext -v '0.0.6' इंस्टॉल बंडल करने की कोशिश कर रहा हूँ, लेकिन मैं इस त्रुटि प्राप्त हो रही:त्रुटि स्थापना/bundling मणि unf_ext -v '0.0.6'

Gem::Ext::BuildError: ERROR: Failed to build gem native extension. 

checking for main() in -lstdc++... yes 
checking for ruby/encoding.h... yes 
creating Makefile 

make "DESTDIR=" clean 

make "DESTDIR=" 
compiling unf.cc 
In file included from unf.cc:1: 
In file included from ./unf/normalizer.hh:4: 
In file included from /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/vector:265: 
In file included from /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/__bit_reference:15: 
In file included from /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/algorithm:628: 
In file included from /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/memory:604: 
/Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/iterator:341:10: fatal error: '__debug' file not found 
#include <__debug> 
     ^
1 error generated. 
make: *** [unf.o] Error 1 

make failed, exit code 2 

मैं gem update --system दौड़े हैं और मैं brew install coreutils है लेकिन मुझे लगता है मुझे अभी भी एक ही त्रुटि मिल रही है।

अद्यतन: उत्तर
डाउनलोड और Apple Developer से commandlinetoolsosx10.10forxcode6.2.dmg स्थापित। कुछ भी अनइंस्टॉल करने की आवश्यकता नहीं है।

+0

कोरिन्ने, मेरा मानना ​​है कि आप मैक OSX उपयोग कर रहे हैं। 'मणि मूल विस्तार बनाने में विफल'। एक्सकोड के लिए गायब कमांड लाइन टूल्स के कारण आम तौर पर त्रुटि होती है। क्या आपने उन्हें स्थापित किया है? यदि नहीं, तो उन्हें एक्सकोड-> प्राथमिकताएं-> डाउनलोड, या xcode-select --install के साथ कमांड लाइन से इंस्टॉल करें और अपने मणि स्थापना को पुनः प्रयास करें। – Sam

उत्तर

7

यह नए एक्सकोड टूल में एक बग है। यह मेरे मामले में eventmachine तोड़ दिया। डमी फ़ाइलों और पुनर्स्थापन लिंक के उत्तरों के लिए Missing C++ header <__debug> after updating OSX Command Line Tools 6.3 देखें। मैं 6.2 तक गिर गया और समस्या चली गई।

8

ऐसा करने से मेरे लिए काम किया:

echo '#define _LIBCPP_ASSERT(x, m) ((void)0)' | sudo tee -a /Library/Developer/CommandLineTools/usr/include/c++/v1/__debug > /dev/null 

फिर bundle चलाते हैं।

और, के बाद से यह केवल जब तक एप्पल एक पैच जारी एक अस्थायी ठीक करने के लिए है, के साथ कि नई बनाई गई फ़ाइल निकालें:

sudo rm /Library/Developer/CommandLineTools/usr/include/c++/v1/__debug 
+1

वह पूरी तरह से मेरे लिए काम किया। आपने धमाल मचाया। –

+0

शानदार समाधान - धन्यवाद! – webdevguy

संबंधित मुद्दे