我正在为实习写一个Apache模块。我使用C来完成这个任务(我对Perl或Python不太熟悉)。
我需要使用HTML解析器来解决我编写这个模块的问题。为此,我考虑使用libxml2。
我很困惑我应该如何链接模块中的库?我应该在编译模块时链接库,还是应该使用配置文件中的load file指令来加载库。
我主要关心的是,当我在Ubuntu上开发这个时,我不知道在部署服务器上运行的操作系统是什么。所以我希望它的部署、无并发症和成功。
编辑:@grim:谢谢回复:)
我用以下命令编译了模块:
apxs-i/usr/include/libxml2/-c mod_xmltest.c
sudo apxs-n xmltest_模块-i mod_xmltest.la
我相信这不会链接模块中的库,我在启动服务器时遇到“未解决的符号”错误,所以我使用loadfile指令加载libxml2库。它似乎起作用了。
你认为这样会有什么问题吗?我认为这使得我的模块更易于移植,就像在部署服务器上,管理员可以显式地指定libxml2库的位置一样。