我正在尝试创建一个静态库以在我的 PHP 扩展中使用。为此,我正在.c
使用gcc -c file.c -o file.o
和获取文件来编译我的.o
文件。然后我使用ar rcs lib.a *.o
将所有编译的对象归档到一个.a
文件中。
这样做之后,我.a
在编译我的 PHP 扩展时引用了这个文件,但是我得到了以下错误:
*** Warning: Linking the shared library <extension>.la against the
*** static library lib.a is not portable!
如果我使用.o
文件而不是.a
文件,我会得到:
*** Warning: Linking the shared library <extension>.la against the non-libtool
*** objects file1.o file2.o is not portable!
我做错了什么,正确的做法是什么?