【发布时间】:2015-08-18 01:45:12
【问题描述】:
完全错误:
error while loading shared libraries: libsfml-graphics.so.2.2.0: cannot open shared object file: No such file or directory
这可能是我第 5 次遇到 SFML 错误。奇怪的是,此错误仅在运行可执行文件时发生,而不是在编译期间发生。我不知道是什么导致了错误(除了程序找不到文件),因为在我重新安装 Ubuntu 之前它就像一个魅力。我试过sudo ldconfig,也用过sudo apt-get install libsfml-dev,但我没有使用它链接SFML,而是从提取的档案中链接。
【问题讨论】:
-
如果您是从源代码构建,请确保在可执行文件的目录中包含
.so。 -
@OMGtechy 你是什么意思'在可执行文件的目录中包含
.so'?就像把它放在链接器设置中(我使用 Code::Blocks btw) -
错误是什么?尝试使用
-z defs编译你的exe,你得到任何错误吗? -
错误是
cannot open shared object file: No such file or directory,但我的文件夹中有所有必要的文件 -
@bboy3577 如果您自己构建它,您需要包含在与可执行文件相同的目录中构建的
.so文件。这是因为它需要在运行时加载它。如果您不自己建造,那是无关紧要的:)
标签: c++ linux shared-libraries sfml