[英]Linking a static library to an Apache module
我正在嘗試開發Apache模塊,因此我想知道如何將靜態庫鏈接到模塊(如果可能的話)。
自然地,它可以很好地編譯和安裝,並且在加載模塊時Apache會失敗。 消息是:
Cannot load /usr/lib/apache2/modules/mod_example.so into server: /usr/lib/apache2/modules/mod_example.so: undefined symbol: zmq_socket
我要鏈接的庫是zeromq,我正在使用apxs2
生成的makefile。 在這里,我添加了-lzmq
。 如果刪除與zmq相關的代碼,則該模塊運行正常。
我的平台是Ubuntu 12.04 64位gcc4.6.3。
好吧,顯然生成的makefile不是一個好主意。 我用基本的編譯命令替換了makefile引用,例如:
apxs2 -c -lzmq mod_example.c
alk在問題注釋中的建議也可以工作(將庫位置添加到LD_LIBRARY_PATH
),因為我正在鏈接另一個與apache相關的庫(apreq),該庫沒有任何問題。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.