내 PHP 확장 프로그램 내에서 사용할 정적 라이브러리를 만들려고합니다. 이를 위해 gcc -c file.c -o file.o
을 사용하여 .c
파일을 컴파일하고 .o
개의 파일을 얻습니다. 그런 다음 ar rcs lib.a *.o
을 사용하여 컴파일 된 모든 개체를 .a
파일로 보관합니다. 내가 할, 내가 대신 .a
파일의 .o
파일을 사용하는 경우정적 라이브러리 만들기
*** Warning: Linking the shared library <extension>.la against the
*** static library lib.a is not portable!
:
이 일을 한 후, 내 PHP 확장을 컴파일 할 때 나는이 .a
파일을 참조 합니다만, 나는 다음과 같은 오류가 발생합니다 :
*** Warning: Linking the shared library <extension>.la against the non-libtool
*** objects file1.o file2.o is not portable!
무엇이 잘못 되었습니까? 올바른 방법은 무엇입니까?
볼 수 있습니다 메이크 파일의 일부 링크 플래그를 corrcting하여 해결 한'경고 : 공유 라이브러리 .la를 libtool이 아닌 객체 인 file1.o file2.o에 연결하면됩니다. ' –
rid
libtool을 전혀 사용하지 않는다면 libtool을 사용하여 모든 것을 빌드해야합니다. –
나는 사랑하고 싶지만, 어떻게 해야할지 모르겠다. 나는'libtool'을 사용하지 않고있다. PHP가있다. – rid