我正在为我的实习编写一个Apache模块。我正在使用C(我不熟悉Perl或Python)。
我需要使用HTML Parser来解决我正在编写此模块的问题。我正在考虑libxml2用于此目的。
我很困惑应该如何链接模块中的库?我应该在编译模块时链接库还是应该在配置文件中使用LoadFile指令来加载库。
我主要担心的是,虽然我在Ubuntu上开发这个,但我不知道在部署服务器上运行的操作系统是什么。所以我希望它的部署,并发症和成功。
编辑:@Grim:感谢您的回复:)
我使用以下命令编译了模块:
apxs -I / usr / include / libxml2 / -c mod_xmltest.c
sudo apxs -n xmltest_module -i mod_xmltest.la
我相信这不会链接模块中的库,我在启动服务器时遇到“Unresolved Symbols”错误,因此我使用LoadFile指令加载libxml2库。它似乎有效。
你觉得这样会有什么问题吗?我认为这使我的模块更具可移植性,因为在部署服务器上,管理员可以明确指定libxml2库的位置。
答案 0 :(得分:1)
您应该在编译模块时链接库。
当然有通常的可移植性问题(至少它涉及到非posix操作系统)。在这种情况下,其中一些由apxc解决。不可能说出可能发生的并发症,但你所描述的内容都不会导致任何并发症。