मैं सी ++ इंटेल कंपाइलर (icpc) के साथ एक साधारण कोड संकलित करने के लिए सख्त प्रयास करता हूं जिसका उपयोग मैंने अपने पिछले मैकबुक 10.14.1 पर संकलित करने के लिए किया था।

अब, चूंकि हेडर अब 10.15 कैटालिना के साथ मौजूद नहीं हैं, इसलिए कंपाइलर को stdlib.h खोजने में कठिनाई होती है। यहां मुझे जो आउटपुट मिलता है:

icpc -std=c++11 -O3 -xHost -fp-model strict -prec-div -prec-sqrt -fma -ftz -mp1 -qopenmp -Wall -c -I/opt/intel/compilers_and_libraries_2020.2.258/mac/mkl/include  -mkl=parallel main.cpp -o main.o
In file included from /Library/Developer/CommandLineTools/usr/include/c++/v1/math.h(301),
                 from /opt/intel/compilers_and_libraries_2020.2.258/mac/compiler/include/math.h(177),
                 from /Library/Developer/CommandLineTools/usr/include/c++/v1/cmath(304),
                 from TSAF.h(1),
                 from main.cpp(1):
/Library/Developer/CommandLineTools/usr/include/c++/v1/stdlib.h(20): catastrophic error: cannot open source file "stdlib.h"
  #include_next <stdlib.h>
                          ^

compilation aborted for main.cpp (code 4)
make: *** [Makefile:13: main.o] Error 4
./main_intel.exe: No such file or directory

मैंने नेट से कई संभावित कामकाज की कोशिश की लेकिन कोई भी काम नहीं किया। मैं अपने मैकबुक की सुरक्षा प्रणाली को हटाकर एक निर्देशिका /usr/include/ बनाने से बचना चाहूंगा।

मैंने सोचा कि शायद यह XCode_12.0.1 डाउनलोड करके काम करेगा लेकिन वही समस्याएं बनी हुई हैं।

फिलहाल, मेरे पास कैटालिना ओएस 10.15.7 संस्करण है, सभी को अपडेट कर दिया गया है।

संपादित करें 1: कुछ ऐसा है जो मुझे समझ में नहीं आता है: मेरे पिछले मैकबुक 10.14 पर, मुझे इंटेल संकलन के लिए क्लैंग सी ++ के हेडर का उपयोग करने की आवश्यकता नहीं थी।

अगर कोई मुझे सुझाव/सुराग/ट्रैक दे सकता है, तो यह ठीक रहेगा।

0
youpilat13 23 अक्टूबर 2020, 18:21

1 उत्तर

सबसे बढ़िया उत्तर

टर्मिनल में कमांड चलाएँ

sudo xcode-select --reset

और फिर जांचें कि क्या कमांड लाइन टूल्स के बजाय उचित डेवलपर टूल चुने गए हैं

xcode-select -p
1
S.M. 23 अक्टूबर 2020, 15:51