0
我想從C++文件中使用C中的VLFeat Libaries。他們的g ++教程提供了一個基本的「Hello World」示例,其編譯如下:如何向C++中添加要在C++中使用的C庫的庫路徑
g++ main.cpp -o vlfeat-test -I /disk/no_backup/lesi/vlfeat-0.9.20/ -L /disk/no_backup/lesi/vlfeat-0.9.20/bin/glnxa64/ -lvl
這工作正常。我現在想的是到庫添加到我的.bashrc,所以我並不需要額外的標誌:
export CPLUS_INCLUDE_PATH=$CPLUS_INCLUDE_PATH:/disk/no_backup/lesi/vlfeat-0.9.20
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/disk/no_backup/lesi/vlfeat-0.9.20/bin/glnxa64
,並使用它像這樣:
g++ main.cpp -o vlfeat-test
不幸的是,我得到以下錯誤:
/tmp/cc6tzB55.o: In function `main':
main.cpp:(.text+0x10): undefined reference to `vl_get_printf_func'
collect2: error: ld returned 1 exit status
我在做什麼錯?
下面是本教程的「Hello World」的代碼:
extern "C" {
#include <vl/generic.h>
}
int main (int argc, const char * argv[]) {
VL_PRINT ("Hello world!\n") ;
return 0;
}
VLFeat庫鏈接:http://www.vlfeat.org/index.html
是的,這沒有把戲。謝謝! – user4457190