1. ホーム
  2. gcc

[解決済み] コンパイル時に127のエラーが発生する。

2022-03-05 19:32:32

質問

今学期、Discovery STM32 F4を使った新しい科目ができましたが、まだセットアップの段階です。しかし、最初の段階でこの問題があります。

この "blink" コードをコンパイルしようとすると、このエラーが発生します。

というわけで、ここまでは、このショートカットコマンド "make" を使ってコードをコンパイルしているわけですが、以下の画像のようにセットアップするように指示されました。

何が問題なのか、お分かりになる方はいらっしゃいますか?

解決方法は?

Error 127 は、2つのうちの1つを意味します。

  1. ファイルが見つかりません: 使用されているパスが正しくありません。 $PATH ランダムなターミナルの現在の作業ディレクトリは、使用しているIDEと同じではないかもしれないことを覚えておいてください。
  2. ldso is not found: プリコンパイルされたバイナリを使用していて、システムにないインタプリタを求めています。おそらく、x86_64 (64-bit) ディストロを使っていますが、プリビルドは x86 (32-bit) 用です。 file -L オン /bin/sh (デフォルト/ネイティブのフォーマットを取得するため) とコンパイラ自身 (どのようなフォーマットかを確認するため) で確認できます。

(2)であれば、いくつかの方法で解決できます。

  1. ツールチェインを提供してくれたベンダーに、より良いバイナリを提供してくれるよう頼んでみてください。
  2. ほとんどの x86_64 64bit ディストロでは、x86 32bit ライブラリを並行してインストールすることができます。
  3. のようなものを使って独自のクロスコンパイラを構築します。 crosstool-ng .
  4. x86_64 と x86 を切り替えてインストールすることもできますが、ちょっと思い切ったやり方ですね ;).