簡體   English   中英

重新安裝的子彈物理引擎未正確鏈接?

[英]Fresh installation of bullet physics engine is not linking properly?

有一個相對較新的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;
}

該文件沒有任何內容,但是會引發大量未定義的引用錯誤,例如“ /tmp/ccH09wLR.o:(.rodata._ZTV17btTypedConstraint[_ZTV17btTypedConstraint]+0x30):未定義引用__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

然后它將同時編譯並運行。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM