2014-05-09 3 views
10

पर असेंबली त्रुटि जीसीसी 4.8.1 मैं casablanca बनाने की कोशिश कर रहा हूं, जैसा कि वे their page पर कहते हैं। क्योंकि मेरे पास है का उपयोग कर CXX=gcc-4.8 ठीक नहीं है स्थापित किया है, तो मैं इसे हटा दिया बस कर रही:कैसाब्लांका: लिनक्स केंद्र

cmake .. -DCMAKE_BUILD_TYPE=Release 

यह फ़ाइलें बनाता है और मैं इन त्रुटियों को मिल रहा हूँ जब मैं make कार्य करें:

Scanning dependencies of target casablanca 
[ 1%] Building CXX object src/CMakeFiles/casablanca.dir/streams/linux/fileio_linux.cpp.o 
/tmp/ccoWLl81.s: Assembler messages: 
/tmp/ccoWLl81.s:97: Error: expecting string instruction after `rep' 
/tmp/ccoWLl81.s:188: Error: expecting string instruction after `rep' 
/tmp/ccoWLl81.s:298: Error: expecting string instruction after `rep' 
/tmp/ccoWLl81.s:310: Error: expecting string instruction after `rep' 
/tmp/ccoWLl81.s:322: Error: expecting string instruction after `rep' 
/tmp/ccoWLl81.s:334: Error: expecting string instruction after `rep' 
/tmp/ccoWLl81.s:371: Error: expecting string instruction after `rep' 
/tmp/ccoWLl81.s:494: Error: expecting string instruction after `rep' 
/tmp/ccoWLl81.s:508: Error: expecting string instruction after `rep' 
/tmp/ccoWLl81.s:522: Error: expecting string instruction after `rep' 
/tmp/ccoWLl81.s:536: Error: expecting string instruction after `rep' 
/tmp/ccoWLl81.s:550: Error: expecting string instruction after `rep' 
/tmp/ccoWLl81.s:2028: Error: expecting string instruction after `rep' 
/tmp/ccoWLl81.s:2057: Error: expecting string instruction after `rep' 
/tmp/ccoWLl81.s:2086: Error: expecting string instruction after `rep' 
/tmp/ccoWLl81.s:3975: Error: expecting string instruction after `rep' 
/tmp/ccoWLl81.s:6186: Error: expecting string instruction after `rep' 
/tmp/ccoWLl81.s:10355: Error: expecting string instruction after `rep' 
make[2]: *** [src/CMakeFiles/casablanca.dir/streams/linux/fileio_linux.cpp.o] Error 1 
make[1]: *** [src/CMakeFiles/casablanca.dir/all] Error 2 
make: *** [all] Error 2 

किसी को भी है इस समस्या से मुलाकात की? क्या यह gcc4.8.1 की वजह से है? इसे कैसे जोड़ेंगे?

उत्तर

15

समस्या यह है कि जीसीसी 4.8 एएमडी चिप्स के प्रदर्शन प्रदर्शन से बचने के लिए "प्रतिनिधि; ret" निर्देश उत्पन्न कर रहा है। पुराने असेंबलर इसे एक त्रुटि के रूप में पहचानते हैं।

विवरण यहां हैं:

https://gcc.gnu.org/ml/gcc-help/2011-03/msg00286.html

ठीक है, ताकि आप एक कोडांतरक जो इस अनुदेश स्वीकार करता है के एक नए संस्करण के लिए अपने binutils अद्यतन करने के लिए है।

+0

इस उत्तर ने हाल ही में अमेज़ॅन ईसी 2 सेंटोस बॉक्स (3.4.37-40.44.amzn1.x86_64) पर एक ही त्रुटि तय की है। रण 'यम अपडेट बिनुटिल्स' जो इसे 2.23.52.0.1 पर ले गया और मेरी समस्या दूर हो गई। सुनिश्चित नहीं है कि यह दुर्भाग्य से पहले कौन सा संस्करण था। –

+1

CentOS6 के लिए, मुझे 'सुडो योम स्थापित करना था devtoolset-2-binutils-devel' – MarkHu

4
sudo yum update binutils 

---> पैकेज binutils.x86_64 0: 2.22.52.0.1-10.36.amzn1 अद्यतन किया जाएगा

---> पैकेज binutils.x86_64 0: 2.23.52.0.1-30.64 .amzn1 एक अद्यतन होगा

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