Saya mencoba menginstal paket dalam R (paket "ks"). Gagal dengan pesan kesalahan:
/usr/bin/ld: cannot find -lgfortran
Saya sudah menginstal paket Ubuntu build-essential:
sudo apt-get install build-essential
Saya juga mencoba menambahkan tautan simbolis:
sudo ln -s /usr/lib/x86_64-linux-gnu/libgfortran.so.3 /usr/lib/libgfortran.so
sudo ln -s /usr/lib/libgfortran.so.3.0.0 /usr/lib/libgfortran.so
sudo ldconfig
Saya menggunakan gcc dan g ++ secara teratur, tetapi belum memiliki alasan untuk menggunakan gfortran.
Saya telah melihat orang lain dengan masalah ini pada gcc-4.7 ( http://ubuntuforums.org/showthread.php?t=2123821 ), jadi saya ingin tahu apakah ini dari menginstal manual gcc-4.7. Saya mengikuti resep dari jawaban yang diterima di sini dan di sini .
Menjalankan lsb_release -a
cetakan
Ubuntu 12.04.2 LTS
dan menjalankan uname -r
cetakan
3.2.0-39-generik-pae
Adakah yang bisa memberikan saran mengapa ld
tidak berhasil?
Jawaban:
Anda perlu menginstal gfortran. Kesalahan menunjukkan bahwa lib statis untuk penautan build-time tidak ada lib dinamis yang Anda coba sesuaikan.
sumber
sudo apt-get install gfortran
, saya mendapatkan0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
... Ada pemikiran?dpkg -S /usr/lib/gcc/x86)64-linux-gnu/4.6/libgfortran.a
jawaban bahwa ini darigfortran-4.6
paket. Gcc sedang mencari file .a. Jika Anda menginstal versi gcc lain, linker mencari di dalam direktori yang bernama serupa untuk libgfortran.a.-L
(yang sebagian besar sama). Jika gagal, Anda harus menginstal versi gfortran 4.7 dari ppa yang Anda gunakan untuk gcc 4.7. Apa versi gfortran yang Anda miliki sekarang?Penjelasan lebih sedikit untuk jawaban Cloud Oliver.
Cari tahu versi gcc yang saat ini digunakan melalui perintah ini.
Entri dengan
*
memberitahu versi GCC mana yang digunakan. Cukup tekan enter untuk menyimpan pengaturan saat ini.Jika mencetak "tidak ada alternatif untuk gcc", Anda mungkin harus menggunakan perintah ini untuk mengetahui versi:
cd
ke direktori gcc kanan (ganti nomor versi dengan milikmu):Anda dapat mencari
libgfortran.a
dengan perintah berikut (opsional). Dalam kasus saya itu ada di/usr/lib/gcc/x86_64-linux-gnu/4.8/
direktori.Buat symlink:
sumber
Apa yang saya lakukan, saya periksa di ubuntu apakah versi g ++, gcc, dan g sama atau tidak.
Saya kira lebih baik jika Anda memiliki ketiga versi yang sama.
Bagi saya ini menyelesaikan semua masalah yang saya hadapi saat menginstal paket "TTR" di R menggunakan RStudio di Ubuntu.
sumber
Larutan:
sumber
cd
garis yang terpisah setidaknya?cd /usr/lib/gcc/x86_64-linux-gnu/4.9.3
dulusudo ln -s /usr/lib/gcc/x86_64-linux-gnu/4.8/libgfortran.a libgfortran.a