0

私は非常に強力なコマンドラインユーザーではなく、Vim +コンソールよりもIDEを好むため、Vmwareの下にUbuntuがあり、Code::Blocksを使用しています。

C++ ラッパーを使用するプログラムを fortran ライブラリにコンパイルしようとしています。ただし、コンパイルすると次のエラーが発生します。

undefined reference to `_gfortran_compare_string'

このタイプのエラーはたくさんあり、これに似たエラーが他にもたくさんあります。

私はgfortran 4.6.3を持っています。おそらくリンクの問題であると検索したところ、リンカに -lgfortran オプションを使用するように言われました。これを Code::Blocks のリンカー オプションに追加すると、何も変更されず、エラーが続きます。それで、ここにいくつかの質問があります:

  1. これはリンカーの正しいオプションですか?
  2. リンカに fortran ライブラリへの直接パスを与える必要があるのでしょうか?
  3. Fortran ライブラリがインストールされている場所を見つけるにはどうすればよいですか? (Linuxについてはよくわかりません((( )
  4. 私が間違っていることと、それを修正する方法。
4

2 に答える 2

0

プロジェクトまたは lgfortran にリンクするライブラリとして gfortran を追加しましたか? l は、ライブラリ gfortran をコードにリンクするための g++ の単なるオプションです。私は Code::Blocks に慣れていませんが、使用したいライブラリを入力して gfortran を直接追加できる場所を探す必要があります。私の推測では、Code::Blocks 側がこの場所を見つけるのに役立つと思います。

キム・カリング

于 2012-05-29T16:18:30.343 に答える
0

私の推測では、/bin/lib /usr/lib または /usr/local/lib のようなものです。ファイルシステムを調べてください。残念ながら、私は仕事で Linux を持っていません。多分他の誰か?

キム・カリング

于 2012-05-29T16:32:56.827 に答える