ホームページ > バックエンド開発 > C++ > macOS で C コードで「未定義のシンボル」エラーが発生するのはなぜですか? それらを修正するにはどうすればよいですか?

macOS で C コードで「未定義のシンボル」エラーが発生するのはなぜですか? それらを修正するにはどうすればよいですか?

Barbara Streisand
リリース: 2024-12-07 12:37:11
オリジナル
310 人が閲覧しました

Why Does My C   Code Produce

C コードのコンパイル中のエラー: 未定義のシンボル

macOS Lion で C コードをコンパイルするとき、未定義のシンボルに関連するエラーは、コンパイラがC 標準ライブラリではなく C 標準ライブラリ (-lcrt1.10.6.o) に対してコードをリンクする(-lstdc .6.dylib).

原因:

このエラーは通常、C フロントエンド (gcc) を使用して C コードをコンパイルするときに発生します。適切なものに対する間違ったリンクlibrary.

解決策:

このエラーを解決するには、C コンパイラ (g または clang ) を使用してコードをコンパイルします。これらのコンパイラは C 構文を処理し、C 標準ライブラリに自動的にリンクして、未定義のシンボル エラーを防ぎます。

g を使用した例:

$ g++ main.cpp -o main
ログイン後にコピー

例Clang :

$ clang++ main.cpp -o main
ログイン後にコピー

正しいものでコンパイルした後コンパイラを使用すると、未定義シンボル エラーが発生しなくなります。リンカーの呼び出しを表示する -v フラグの出力を使用して、適切な標準ライブラリがリンクされていることを確認できます。

以上がmacOS で C コードで「未定義のシンボル」エラーが発生するのはなぜですか? それらを修正するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート