C/C++静态连接PHP5:libphp5.a以及libphp5.la的使用

C/C++静态连接php5需要使用到libtool,主要使用libphp5.la。

编译成目标文件:
[shell]
libtool –mode=link cc -export-dynamic -I/usr/include -g -O2 /home/john/Documents/php-5.5.7/libs/libphp5.la ./main.lo -o main
[/shell]

通过libphp5.la静态连接libphp5.a:
[shell]
libtool –mode=compile cc -I/usr/local/include/php -I/usr/local/include/php/Zend -I/usr/local/include/php/main -I/usr/local/include/php/TSRM -I/usr/local/include -g -O -c main.c
[/shell]

不过生成的可执行文件很大,php5.5的话大概有27MB,包含一些基本的内置扩展,这样和使用动态连接没有什么区别了,动态链接库也有27MB。