2012-07-20 63 views
0

我想在qt environment.i中使用fann庫製作一個項目來測試一個簡單的fann例子並添加 「LIBS + = -L/usr/local/LIB -lfann「到」 pro文件」,但每當嘗試運行例如我又以這個錯誤:如何添加FANN庫在Linux的QT Creator中

undefined reference to 'sin'  libfann.so 
undefined reference to 'exp'  libfann.so 
undefined reference to 'log'  libfann.so 
undefined reference to 'cos'  libfann.so 
undefined reference to 'pow'  libfann.so 
undefined reference to 'sqrt'  libfann.so 
undefined reference to 'floor' libfann.so 

。 。 。 它似乎有一個數學函數的問題,但應該如何解決它?

+0

什麼解決辦法?我嘗試在fann的示例目錄中運行make runtest,並失敗並出現此錯誤。 – 2013-10-30 02:17:16

回答

0

好吧,最終發現了這個錯誤。這是一個linking the library的問題。

有幾種方法來解決這個問題:

  1. 複製從范文芳所需的.h和.c文件,並將它們添加到您的項目(例如,如果你運行XOR例如,你應該複製並粘貼fann.h和fann.c直接到你的項目)

  2. 更好的方法:建立靜態庫「libfann.a」並將其添加到項目中。

    • 打造IT,以下:

    • 的README.md文件添加:

      • 與QMAKE :如果你的李bfann.so安裝在「usr/local/lib」中,使用「LIBS + = -L/usr/local/lib -lfann」代替「LIBS + = -lfann」
      • with Cmake:添加最後兩行
        # after add_executable(${PROJECT_NAME} "main.cpp") link_directories(/usr/local/lib) # -L flags target_link_libraries(${PROJECT_NAME} fann) # -l flags