Rumah >pembangunan bahagian belakang >C++ >Mengapakah saya mendapat ralat \'Simbol Tidak Ditakrifkan ___gxx_personality_v0\' semasa penyusunan?
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!