linux控制编译so 位数,Linux下解决64位下Apache编译模块时/usr/lib/libexpat.so问题
Linux下给apache编译libapreq2模块时候报错:/usr/lib/libexpat.so: could not read symbols: File in wrong format
尝试了几种方式都不行,大概步骤都是如下:
perl -MCPAN -e shell
>>> install Apache2::Request
... 一直到make,然后报错
用perl Makefile.PL --with-apache2-apxs=/path/apxs,make时候也报错。
很是郁闷,然后修改Makefile.PL、configure、force install等等,都是未果。
问题都是64位下的libexpat.so有点问题。换个64位编译软件碰到了不少麻烦唉。
最后解决办法是:
>>> install Apache2::Request
... #到报错时停止
>>> look Apache2::Request
#会跳到一个libapreq2-2.08-FPquPs类似的目录,可以看到目录下有Makefile.PL,configure等文件或目录。
删除configure文件
删除apreq2-config文件
重新运行:./buildconf,可以看到一大堆检测啥的程序在跑,跑完就OK了。
perl Makefile.PL --with-apache2-apxs=/path/apxs
make && make install
现在可以看到在apache的modules下有mod_apreq2.so了。搞定!
本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!
