符號查找錯誤:未定義符號:_gfortran_internal_malloc64

符號查找錯誤:未定義符號:_gfortran_internal_malloc64

這裡是 Ubuntu 13.04。

我試圖使用一個名為 的程序smartpca,第一次嘗試使用它時,它引發了有關liblapack.

我安裝了libatlas3-base,問題解決了。然後它又引發了另一個關於 的錯誤libgfortran.so.1。由於我安裝了所有軟體包,因此我在和libfortran之間創建了一個連結。libgfortran.so.3libgfortran.so.1

然後我再次運行該程序,它引發了該錯誤:

./smartpca: symbol lookup error: ./smartpca: undefined symbol: _gfortran_internal_malloc64

根據我的閱讀,我了解到在 Fedora 上您必須安裝gfortran 4.1.

我該如何解決這個問題?

答案1

好的,我找到了解決方案。我需要從原始碼製作 EIGENSOFT。這有助於:

這是在 Ubuntu 電腦上安裝 eigensoft 的一種方法。

首先安裝依賴項:gfortran liblapack-dev

現在 cd 到 src 目錄並如下建置: $ make all $ make install

此時,eigensoft/bin 目錄中應該會有一些檔案。請注意,安裝不需要管理員權限,並且不會將檔案放置在 eigensoft 目錄樹之外的任何位置。

要卸載,請 cd 到 src 目錄並運行: $ make clobber

若要檢查 eigensoft 是否已恢復至預安裝狀態,請檢查 git 狀態(如果已從 git 儲存庫複製 eigensoft)。

答案2

適用於 Matlab R2012a、Ubuntu 13.04

錯誤:

libgfortran.so.1:無法開啟共享物件檔案:沒有這樣的檔案或目錄 /MATLAB/share/libfst.so:未定義的符號:_gfortran_internal_malloc64

解決方案:

  1. 去:http://heasarc.gsfc.nasa.gov/lheasoft/linux.html
  2. 下載適用於 64 位元 Linux (x86_64) 的 libgfortran 補丁http://heasarc.gsfc.nasa.gov/FTP/software/lheasoft/release/updates/heasoft6.14-libgfortran-pc-linux64.tar.gz
  3. 解壓縮檔案並將其複製到 /usr/lib/x86_64-linux-gnu/
  4. 享受!

相關內容