這是我的第一個問題,如果沒有很好的闡述或者愚蠢的話,那麼對不起。如何在C++中使用Octave庫
我想使用與C++
八度音庫我使用Qt的創造者在Ubuntu(Linux的小白)
#include "octave/oct.h"
int main(int argc, char *argv[])
{
QApplication a(argc, argv);
Matrix matrix(3,4);
return a.exec();
}
起初我有一些未定義的引用錯誤。我發現程序缺少庫,所以我查找了庫「liboctave.so」。我在usr/lib/octave-3.2.4中找到它。更確切地說,有一個名爲「liboctave.so」的符號鏈接指向「liboctave.so.3.2.4」文件。我使用QtCreators「添加庫」功能將庫添加到我的項目中。該程序生成此代碼在我的.pro文件中
unix:!macx:!symbian: LIBS += -L$$PWD/../../../../usr/lib/octave-3.2.4/ -loctave
INCLUDEPATH += $$PWD/../../../../usr/lib/octave-3.2.4
DEPENDPATH += $$PWD/../../../../usr/lib/octave-3.2.4
程序內置沒有錯誤。甚至沒有抱怨未定義的參考。但是,當我運行它,我得到
啓動/家庭/馬丁/項目/測試構建桌面/測試...
/home/martin/Projects/test-build-desktop/test: error while loading shared libraries: liboctave.so: cannot open shared object file: No such file or directory
/home/martin/Projects/test-build-desktop/test exited with code 127
我想不通爲什麼它無法找到該文件。我用裸眼看着這個文件。
我發現問題可能是許可,所以我將「liboctave.so.3.2.4」文件複製到項目位置,重命名爲「liboctave.so」併爲每個人添加了所有權限。然後使用Qtcreator「添加庫」功能添加這個庫,我仍然得到相同的錯誤。
請幫我
謝謝!首選的作品。但是,我必須使用與聲明環境變量的shell會話運行可執行文件。當我嘗試使用QtCreator執行可執行文件時,它不起作用。但那只是我對Linux的缺乏認識。 – 2011-12-15 13:18:33