【发布时间】:2012-06-19 04:04:05
【问题描述】:
美好的一天!我在 Eclipse 中运行一个 c++ 项目 main.cpp。我想使用我现有的 .so 文件并将其链接到 main.cpp。我正在搜索这个,但找不到适合我的方法。我正在使用ubuntu。谢谢你的帮助!
【问题讨论】:
标签: c++ ubuntu shared-libraries
美好的一天!我在 Eclipse 中运行一个 c++ 项目 main.cpp。我想使用我现有的 .so 文件并将其链接到 main.cpp。我正在搜索这个,但找不到适合我的方法。我正在使用ubuntu。谢谢你的帮助!
【问题讨论】:
标签: c++ ubuntu shared-libraries
要链接到库,您需要为编译器(或链接器)提供-l 标志和库名称。例如,如果你想链接一个名为 libjustine.so 的库,你需要为你的编译器(如果 C 为 gcc,如果 C++ 为 g++)提供一个标志 -ljustine,然后编译器将指示链接器链接到库路径中的文件 libjustine.so(通常至少为 /usr/lib/ 和 /usr/local/lib/ )。
但是,如果您想定义自己的库目录,例如项目目录中的 lib/ 目录,则需要使用 -L 标志并提供所需的库目录(相对到当前目录)这样,例如-L/lib/,因此编译器可以指示链接器从 lib/ 而不是例如 /usr/lib/ em> 默认在哪里查找文件。
【讨论】:
-L 标志来定义库的路径,相对于当前目录。