로 brew gcc 설치하면 움직이지 않았을 때의 해결책.png)
mac (Mojave)로 brew gcc 설치하면 움직이지 않았을 때의 해결책
이전
최근 C언어의 TA를 하거나 atom에서 VScode로 갈아타거나 하고 있으므로, 드디어 C, C++의 환경 정비를 하려고 그 주변을 조사하고 있다고,
g++로 하면 동경의 #include <bits/stdc++.h>
를 사용할 수 없는가...!
AtCoder에서 C++을 사용하는 사람들이 사용하고 있습니다 #include <bits/stdc++.h>
나도 사용하고 싶다! (゚Д゚)
발생한 문제
막상 컴파일했다.
그리고 나온 오류
ld: warning: ignoring file /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/lib/libSystem.tbd, file was built for unsupported file format ( 0x2D 0x2D 0x2D 0x20 0x21 0x74 0x61 0x70 0x69 0x2D 0x74 0x62 0x64 0x2D 0x76 0x33 ) which is not the architecture being linked (x86_64):
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/lib/libSystem.tbd Undefined symbols for architecture x86_64: "___cxa_atexit", referenced from: __static_initialization_and_destruction_0(int, int) in ccEBCemd.o
ld: symbol(s) not found for architecture x86_64 collect2:
error: ld returned 1 exit status
...라이브러리...?64bit...?(´· ω ·`)
심볼릭 링크는 붙였고 풀 패스로 호출해도 통과하지 않는다.
clang으로 컴파일은 통과하기 때문에 코드가 잘못되어 있는 것도 아니다.
(덧붙여서 그 주위의 통상의 세팅에 대해서는 이쪽의 기사에 신세를졌습니다
htps : // 코 m / 엔 gTks / ms / 펑 2 7b4d264 7 052c6 # 5-stdch )
먼저 결론
Xcode 압데하면 치료했습니다. 잔디.
도중 과정
3시간이나 반나절인지 4고 8고고 더 소지한 pro와 air 양쪽 모두 시험해, 거구 이것은 이제 무리라고 stack overflow에 던진다.
h tps : // s t c ゔ ぇ rf ぉ w. 코 m / 쿠에 s 치온 s / 58643485 / 엔 s ぇ ぇ ぇ ぇ ぇ ん ド ー ー ー ー ー ー ー ー ーー인 s타르/58687589 #58687589
코멘트 해 주신 분 중(분)편이,
"sysroot가 command line tool SDK에 세트되어있는 것처럼 보이기 때문에 이것을 두드려보십시오"g++ --sysroot=/ -o test test.cpp
그러면 에러 내용이 바뀌었다.
매우 잊어버렸지만 대체로 이런 느낌이었다.
fatal error: wchar.h: No such file or directory
#include <wchar.h>
^~~~~~~~~
.... 표준 라이브러리가 어땠어?
그 증거에 도서관 include 없이
int main(){}
컴파일을 시도하면 거의 통과합니다.
...아, 도서관이군요.
그러면 이쪽은 잘 일어나고 있는 문제인 것 같고, 아무래도 Mojave라고/usr/include 근처인가 표준 라이브러리가 어딘가 되어 버리고 있는 것 같다. (매운)
(최근의 패치에서는 고치고 있을지도 모른다)
참고:
htps : // 코 m / 타무타 무타 / ms / 0 a d8 a 11 5d 195 afcb
htps : // 놀라운 l. 코m/쿠에 s치온 s/169308
이 표준 라이브러리 어딘가 버렸어 문제를 해결하려면 Xcode나 gcc를 재설치하는 것 같다.
제 경우에는 압데로 치료했습니다. (4고 8고고 있을 때 gcc를 다시 넣었지만)
어? 평소 압데 하지 않는 것이 나쁘다?
미안해...(´·ω·`)
막상 컴파일했다.
그리고 나온 오류
ld: warning: ignoring file /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/lib/libSystem.tbd, file was built for unsupported file format ( 0x2D 0x2D 0x2D 0x20 0x21 0x74 0x61 0x70 0x69 0x2D 0x74 0x62 0x64 0x2D 0x76 0x33 ) which is not the architecture being linked (x86_64):
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/lib/libSystem.tbd Undefined symbols for architecture x86_64: "___cxa_atexit", referenced from: __static_initialization_and_destruction_0(int, int) in ccEBCemd.o
ld: symbol(s) not found for architecture x86_64 collect2:
error: ld returned 1 exit status
...라이브러리...?64bit...?(´· ω ·`)
심볼릭 링크는 붙였고 풀 패스로 호출해도 통과하지 않는다.
clang으로 컴파일은 통과하기 때문에 코드가 잘못되어 있는 것도 아니다.
(덧붙여서 그 주위의 통상의 세팅에 대해서는 이쪽의 기사에 신세를졌습니다
htps : // 코 m / 엔 gTks / ms / 펑 2 7b4d264 7 052c6 # 5-stdch )
먼저 결론
Xcode 압데하면 치료했습니다. 잔디.
도중 과정
3시간이나 반나절인지 4고 8고고 더 소지한 pro와 air 양쪽 모두 시험해, 거구 이것은 이제 무리라고 stack overflow에 던진다.
h tps : // s t c ゔ ぇ rf ぉ w. 코 m / 쿠에 s 치온 s / 58643485 / 엔 s ぇ ぇ ぇ ぇ ぇ ん ド ー ー ー ー ー ー ー ー ーー인 s타르/58687589 #58687589
코멘트 해 주신 분 중(분)편이,
"sysroot가 command line tool SDK에 세트되어있는 것처럼 보이기 때문에 이것을 두드려보십시오"g++ --sysroot=/ -o test test.cpp
그러면 에러 내용이 바뀌었다.
매우 잊어버렸지만 대체로 이런 느낌이었다.
fatal error: wchar.h: No such file or directory
#include <wchar.h>
^~~~~~~~~
.... 표준 라이브러리가 어땠어?
그 증거에 도서관 include 없이
int main(){}
컴파일을 시도하면 거의 통과합니다.
...아, 도서관이군요.
그러면 이쪽은 잘 일어나고 있는 문제인 것 같고, 아무래도 Mojave라고/usr/include 근처인가 표준 라이브러리가 어딘가 되어 버리고 있는 것 같다. (매운)
(최근의 패치에서는 고치고 있을지도 모른다)
참고:
htps : // 코 m / 타무타 무타 / ms / 0 a d8 a 11 5d 195 afcb
htps : // 놀라운 l. 코m/쿠에 s치온 s/169308
이 표준 라이브러리 어딘가 버렸어 문제를 해결하려면 Xcode나 gcc를 재설치하는 것 같다.
제 경우에는 압데로 치료했습니다. (4고 8고고 있을 때 gcc를 다시 넣었지만)
어? 평소 압데 하지 않는 것이 나쁘다?
미안해...(´·ω·`)
3시간이나 반나절인지 4고 8고고 더 소지한 pro와 air 양쪽 모두 시험해, 거구 이것은 이제 무리라고 stack overflow에 던진다.
h tps : // s t c ゔ ぇ rf ぉ w. 코 m / 쿠에 s 치온 s / 58643485 / 엔 s ぇ ぇ ぇ ぇ ぇ ん ド ー ー ー ー ー ー ー ー ーー인 s타르/58687589 #58687589
코멘트 해 주신 분 중(분)편이,
"sysroot가 command line tool SDK에 세트되어있는 것처럼 보이기 때문에 이것을 두드려보십시오"
g++ --sysroot=/ -o test test.cpp
그러면 에러 내용이 바뀌었다.
매우 잊어버렸지만 대체로 이런 느낌이었다.
fatal error: wchar.h: No such file or directory
#include <wchar.h>
^~~~~~~~~
.... 표준 라이브러리가 어땠어?
그 증거에 도서관 include 없이
int main(){}
컴파일을 시도하면 거의 통과합니다.
...아, 도서관이군요.
그러면 이쪽은 잘 일어나고 있는 문제인 것 같고, 아무래도 Mojave라고/usr/include 근처인가 표준 라이브러리가 어딘가 되어 버리고 있는 것 같다. (매운)
(최근의 패치에서는 고치고 있을지도 모른다)
참고:
htps : // 코 m / 타무타 무타 / ms / 0 a d8 a 11 5d 195 afcb
htps : // 놀라운 l. 코m/쿠에 s치온 s/169308
이 표준 라이브러리 어딘가 버렸어 문제를 해결하려면 Xcode나 gcc를 재설치하는 것 같다.
제 경우에는 압데로 치료했습니다. (4고 8고고 있을 때 gcc를 다시 넣었지만)
어? 평소 압데 하지 않는 것이 나쁘다?
미안해...(´·ω·`)