【问题标题】:eclipse sfml library issueseclipse sfml 库问题
【发布时间】:2011-04-08 16:11:42
【问题描述】:

我提取了一个使用 sfml 库在 C++ 中编写的应用程序,但在 Eclipse 中设置库时遇到了问题。我指定了包含路径、lib 路径并包含了所有需要链接的 .so 库。该应用程序编译得很好,但它在运行时抱怨缺少库。为什么会这样?我不是已经在项目设置中包含了库的路径吗?我什至尝试将所有 .so 文件放在可执行目录中,但没有成功。

【问题讨论】:

    标签: c++ linker include-path


    【解决方案1】:

    可执行文件中只存储了共享库的名称。在程序启动时,动态链接器然后在其搜索路径中搜索指定的库。您可以通过在环境变量 LD_LIBRARY_PATH 中放置冒号分隔或在 /etc/ld.so.conf 中指定它们来添加/指定搜索路径(至少如果您使用某些基于 unix 的操作系统)。在 Windows 上,搜索动态链接库 (DLL) 时会使用整个 PATH 环境变量。

    要查看给定应用程序使用的共享库的路径,请运行ldd applicationPath

    【讨论】:

    • 所以我运行了那个命令,它说我试图链接的库在 /usr/local/lib 中。为什么是这样?我的 Eclipse 项目设置中没有定义该路径的选项。如何让它在项目文件夹中查找共享库?
    • 也许你必须像这样启动它(假设appname是appname):LD_LIBRARY_PATH=。 ./appname
    猜你喜欢
    • 1970-01-01
    • 2011-08-16
    • 2011-07-14
    • 2021-01-04
    • 2012-09-23
    • 2013-06-12
    • 1970-01-01
    • 1970-01-01
    • 2018-07-21
    相关资源
    最近更新 更多