현재 다음 명령을 사용하여 Linux에서 컴파일된 간단한 공유 라이브러리가 있습니다.
gcc -c -fPIC foo.c -o foo.o
gcc -shared -o foo.so foo.o
AIX에서 동일한 내용을 컴파일하려면 동료에게 지침을 전달해야 합니다. 내 동료들이 AIX에서 gcc를 사용할지 아니면 기본 컴파일러를 사용할지 모르겠습니다.
이러한 gcc 명령어는 AIX에서도 작동합니까? 그렇지 않다면 어떤 수정이 필요합니까? Linux gcc 버전은 4.4.7입니다. 누구든지 기본 AIX 컴파일러 사용에 대한 지침을 제공할 수 있습니까? xlC?
감사해요.
답변1
AIX에서는 3개의 컴파일러를 사용할 수 있습니다.
- 걸프 협력 협의회
- 최신 XL C/C++ Enterprise Edition
- VisualAge C++ Professional의 이전 버전
GCC 2.x 이상의 경우 공유 라이브러리를 생성하는 구문은 다음과 같습니다.
gcc -shared -Wl,-soname,your_soname -o library_name file_list library_list
예:
gcc -fPIC -g -c -Wall a.c
gcc -fPIC -g -c -Wall b.c
gcc -shared -Wl,-soname,libmystuff.so.1 -o libmystuff.so.1.0.1 a.o b.o -lc
위의 AIX 기본 컴파일러에 대한 자세한 지침은 이 페이지를 참조하세요.
http://www.ibm.com/developerworks/aix/library/au-gnu.html
(AIX 및 System V 시스템의 공유 라이브러리 섹션 참조)