gpt4 book ai didi

c++ - 全新安装的子弹物理引擎无法正确链接?

转载 作者:行者123 更新时间:2023-11-28 02:05:01 25 4
gpt4 key购买 nike

安装了相对较新的 ubuntu LTS,我按照此处找到的通用动态库构建说明进行操作:http://www.bulletphysics.org/mediawiki-1.5.8/index.php/Installation

安装看起来很顺利(没有错误或警告),之后我在/usr/local/include/bullet 中找到了所有必需的文件。我目前正在尝试通过以下 shell 命令编译文件:

g++ bulletTest.cpp -lGL -lGLU -I/usr/local/include/bullet/

bulletTest.cpp 是:

#include <iostream>
#include <btBulletDynamicsCommon.h>
int main (void)
{
btBroadphaseInterface* broadphase;
return 0;
}

这个文件没有任何内容,但是抛出了大量 undefined reference 错误,例如“/tmp/ccH09wLR.o:(.rodata._ZTV17btTypedConstraint[_ZTV17btTypedConstraint]+0x30): undefined reference to `__cxa_pure_virtual'”我在论坛/SO 上找不到任何其他投诉,所以我相信这一定是我的构建/安装有问题。在尝试 gcc 和 g++ 编译器时会发生这些类型的错误。

有人有想法吗?

编辑:将我的 shell 命令更改为 g++ bulletTest.cpp -lGL -lGLU -lBulletDynamics -lBulletCollision -lBulletSoftBody -lLinearMath -I/usr/local/include/bullet/

它编译但不运行,错误是:加载共享库时出错:libBulletDynamics.so.2.82:无法打开共享对象文件:没有这样的文件或目录

最佳答案

所以这是很多小东西。首先,不要引用“lbullet”引用每个所需的库:

g++ bulletTest.cpp -o bulletTest -lGL -lGLU -lBulletDynamics -lBulletCollision -lBulletSoftBody -lLinearMath -I /usr/local/include/bullet/

此外,我必须设置 LD_LIBRARY_PATH 变量

export LD_LIBRARY_PATH=/usr/local/lib

然后它会同时编译和运行。

关于c++ - 全新安装的子弹物理引擎无法正确链接?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37865912/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com