2014-12-06 55 views
-1

我想在Ubuntu上編譯這個,但它不鏈接,我不明白爲什麼。如何在Ubuntu上編譯ELSD?鏈接錯誤

http://ubee.enseeiht.fr/vision/ELSD/爲解決由SSC告訴我補充輪候冊--verbose,看看有什麼連接在做

[email protected]:~/projects/elsd_1.0$ make 
cc -I/usr/local/include -L/usr/local/lib -o elsd elsd.c valid_curve.c process_curve.c process_line.c write_svg.c -llapack_LINUX -lblas_LINUX -llibf2c -lm 
/usr/bin/ld: cannot find -llapack_LINUX 
/usr/bin/ld: cannot find -lblas_LINUX 
/usr/bin/ld: cannot find -llibf2c 
collect2: error: ld returned 1 exit status 
make: *** [elsd] Error 1 
[email protected]:~/projects/elsd_1.0$ 

[email protected]:~/projects/elsd_1.0$ ls /usr/local/lib 
blas_LINUX.a libcblaswr.a python2.7 site_ruby 
lapack_LINUX.a node_modules python3.4 tmglib_LINUX.a 
[email protected]:~/projects/elsd_1.0$ 

[email protected]:~/projects/elsd_1.0$ ls /usr/local/include 
blaswrap.h clapack.h f2c.h 
[email protected]:~/projects/elsd_1.0$ 
+1

您可以添加'-Wl, - verbose'來查看鏈接器在做什麼?也許它可以提供更多關於錯誤的線索。 – SSC 2014-12-06 05:00:18

+0

謝謝SSC,工作,我會回答這個問題。 – Phil 2014-12-06 09:00:50

回答

0

我的郵件的問題,我的主要問題是CLAPACK。

  1. 下載解壓到目錄CLAPACK-3.2.1的clapack.tgz,進入該目錄。

  2. MV make.inc.example make.inc

  3. 類型做出

  4. 現在我有blas_LINUX.a lapack_LINUX.a tmglib_LINUX.a此目錄中。

  5. 複製從頭文件包括到/ usr /本地/包括有於chmod一+ R ....給讀訪問

  6. 在elsd_1.0編輯Makefile和變化「-llapack_LINUX -lblas_LINUX」到 「-llapack -lblas」

我想我做了一件與步驟4中的.a文件也許我移動到/ usr/local/lib目錄。

無論如何,只要CLAPACK可以連接,那麼它的工作原理。