1

我正在尝试将libtcod静态链接到我的 C++ 项目,但没有成功。我收到许多链接错误,包括:

./tuto:加载共享库时出错:libtcodxx.so.1:无法打开共享对象文件:没有这样的文件或目录

有没有人对那个图书馆有类似的问题?

4

2 回答 2

1

当前的 libtcod (1.6.0) 发行版中提供了动态库。您可以动态链接 libtcod,但需要创建符号链接:

    cd /var/lib/libtcod
    ln -s libtcod.so libtcod.so.1
    ln -s libtcodxx.so libtcodxx.so.1

使用以下命令编译:

    g++ src/*.cpp -o tuto -I/var/lib/libtcod/include -L/var/lib/libtcod -ltcod -ltcodxx -Wl,-rpath=/var/lib/libtcod -Wall
于 2014-12-15T15:35:46.347 回答
0

链接到库时使用哪些标志?你用过-static标志吗,你指定了-ltcod吗?如果没有,请添加-static -ltcod到命令行的末尾。或者您可以强制告诉 gcc 与静态构建库链接: gcc %YOUR_OTHER_FLAGS_ANDFILES% -l:libtcod.a -L%PATH_TO_TCOD_STATIC_BUILDED_FILE%

于 2014-07-30T14:35:49.020 回答