IBM xlc 컴파일러에 플래그를 전달하는 방법은 무엇입니까?

IBM xlc 컴파일러에 플래그를 전달하는 방법은 무엇입니까?

aix에서 samba4를 빌드하고 싶은데 gcc에서 오류가 발생하여 xlc ibm 컴파일러를 사용해 보고 싶지만 이 오류가 발생합니다.

    "../source4/heimdal/lib/gssapi/gssapi/gssapi_spnego.h", line 49.28: 1506-277 (S) Syntax error: possible missing ';' or ','?
"../source4/heimdal/lib/gssapi/gssapi/gssapi_spnego.h", line 41.1: 1506-485 (S) Parameter declaration list is incompatible with declarator for GSSAPI_CPP_START.
"../source4/heimdal/lib/gssapi/gssapi/gssapi_spnego.h", line 49.28: 1506-277 (S) Syntax error: possible missing ';' or ','?
"../source4/heimdal/lib/gssapi/gssapi/gssapi_spnego.h", line 41.1: 1506-485 (S) Parameter declaration list is incompatible with declarator for GSSAPI_CPP_START.
Waf: Leaving directory `/usr/local/src/samba-4.0.25/bin'
Build failed:
 -> task failed (err #1): 
        {task: cc dnsrecord.c -> dnsrecord_1.o}
 -> task failed (err #1): 
        {task: cc dnsutils.c -> dnsutils_1.o}
make: The error code from the last command is 1.

온라인에서 검색해서 찾았어요

http://www-01.ibm.com/support/docview.wss?uid=swg1LI75061

흥미로운 점은 "‍‍‍‍‍를 -‍qcpluscmt사용하여 C 컴파일러가 C++ 스타일을 허용하도록 할 수 있습니다." 입니다.

그래서 나는 다음 줄로 컴파일하려고했습니다.

CFLAGS='-qcpluscmt' CXXFLAGS=$CFLAGS CPPFLAGS='-I/opt/freeware/include' LDFLAGS=' -L/opt/freeware/lib' ./configure --prefix=/opt/mg --check-c-compiler=xlc
 make clean
CFLAGS='-qcpluscmt' CXXFLAGS=$CFLAGS CPPFLAGS='-I/opt/freeware/include' LDFLAGS=' -L/opt/freeware/lib' make

하지만 나에게 같은 오류가 발생했습니다. 뭐가 문제 야?

답변1

플래그는 정확합니다. 외부 헤더를 배치하는 중에 오류가 발생했습니다.

관련 정보