Rumah >pembangunan bahagian belakang >C++ >Mengapakah saya mendapat ralat \'Simbol Tidak Ditakrifkan ___gxx_personality_v0\' semasa penyusunan?

Mengapakah saya mendapat ralat \'Simbol Tidak Ditakrifkan ___gxx_personality_v0\' semasa penyusunan?

Mary-Kate Olsen
Mary-Kate Olsenasal
2024-11-15 17:48:021019semak imbas

Why am I getting an

Menyahpepijat "Simbol Tidak Ditakrifkan ___gxx_personality_v0" Ralat Semasa Penyusunan

Masalah:

While kod menggunakan baris arahan, anda menghadapi ralat simbol yang tidak ditentukan:

$ gcc test.cpp
Undefined symbols:
  "___gxx_personality_v0", referenced from:

Walaupun kod itu mudah, ia gagal untuk menyusun tanpa penjelasan.

Penjelasan:

Ralat berlaku kerana kod sedang disusun menggunakan gcc, pengkompil untuk bahasa C, bukannya g , pengkompil untuk C . Simbol ___gxx_personality_v0 ialah simbol khusus untuk pustaka standard C (libstdc ), dan ia tidak terdapat dalam pustaka standard C (libc).

Penyelesaian:

Terdapat dua penyelesaian untuk menyelesaikan isu ini:

  • Gunakan g :

    Memandangkan kod ditulis dalam C , ia hendaklah disusun menggunakan g , yang merangkumi kedua-dua pengkompil C dan perpustakaan standard C. Gunakan arahan ini sebaliknya:

    $ g++ test.cpp
  • Tambah Pustaka Standard C:

    Jika anda perlu menggunakan gcc, anda boleh menambah C perpustakaan standard dengan menambahkan bendera -lstdc pada baris arahan. Bendera ini mengarahkan pemaut untuk memasukkan perpustakaan libstdc, yang mengandungi simbol yang diperlukan. Gunakan arahan ini sebaliknya:

    $ gcc test.cpp -lstdc++

Nota:

Menggunakan g ialah kaedah pilihan kerana ia mengendalikan kedua-dua kod C dan C dengan lancar. Dengan memilih pengkompil yang betul untuk bahasa yang anda gunakan, anda boleh menghalang jenis ralat ini dan memastikan penyusunan berjaya.

Atas ialah kandungan terperinci Mengapakah saya mendapat ralat \'Simbol Tidak Ditakrifkan ___gxx_personality_v0\' semasa penyusunan?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn