2012-12-15 174 views
2

我正在用C代碼創建.so文件。我需要將一些其他.so文件鏈接到正在創建的.so文件。怎麼做?如何將.so文件鏈接到.so文件

我試過這個-L{path to file containing library} -l${library name}是不是正確?

回答

2

如果你的庫文件被稱爲/path/to/libfile.so,那麼通常你需要指定以下參數鏈接:

-L/path/to -lfile 

注意,我們只包括-L的目錄,同時省略了lib前綴以及來自-l.so後綴。

+0

謝謝,我的確如你所說的一樣。但是我面臨一些問題。我需要從SASL機制調用Web服務。我使用了C++軸並創建了存根文件,並編寫了一個示例代碼來調用webservice。現在我需要將Axis C++代碼集成到SASL插件機制中(比如plain.c)。在這裏,我在make文件中添加了.h文件和.so文件。作爲結果,我得到了一個.so文件。但.so文件沒有按預期工作。如果我添加結果.so並給出一個命令「sasl2-shared-mechlist」,我將得到可用的機制列表。但是,我的變化沒有得到列出的機制。 – 2vision2

+2

@ 2vision2「未按預期工作」不是任何人都可以幫助您的問題描述。也許如果你以更詳細的方式描述問題,人們可以提供幫助,但正如你所寫的,你期望人們用水晶球來解決問題(而且幾乎每個人的水晶球似乎都被打破了)。 – mah

+0

@mah謝謝,它的有效。將.so文件(生成的plain.c和Axis C++代碼)添加到/ lib64目錄後。如果我給出命令「Shared-mech-lists」,我可以看到可用的機制列表。如果我將Axis C++代碼添加到生成.so的plain.c中,我沒有得到機制列表。 – 2vision2