Rumah >pembangunan bahagian belakang >C++ >Mengapa Kod g std::thread Saya Gagal Dipautkan di Linux, dan Bagaimana Saya Boleh Membetulkannya?

Mengapa Kod g std::thread Saya Gagal Dipautkan di Linux, dan Bagaimana Saya Boleh Membetulkannya?

Linda Hamilton
Linda Hamiltonasal
2024-11-29 16:00:15857semak imbas

Why Does My g   std::thread Code Fail to Link on Linux, and How Can I Fix It?

Pilihan Memaut untuk std::thread dalam GCC di Linux

Menghadapi ralat "terminate called" semasa cuba menjalankan std::thread code dalam G ? Mari kita mendalami isu ini.

Kod yang disediakan menggunakan std::thread, yang biasanya dilaksanakan menggunakan pthreads pada Linux. Untuk menyelesaikan isu pemautan, pilihan pengkompil -pthread diperlukan. Pilihan ini memberitahu pengkompil untuk memaut dengan perpustakaan pthreads.

Yang penting, pilihan -pthread mesti diletakkan selepas fail sumber untuk memastikan pemautan yang betul:

g++ -std=c++0x test.cpp -pthread

Ini akan mengarahkan pengkompil untuk memautkan atur cara dengan perpustakaan pthreads, membolehkan penggunaan std::thread. Tanpa pilihan ini, pemaut akan gagal mencari simbol yang diperlukan daripada pustaka pthreads, mengakibatkan ralat yang diperhatikan.

Atas ialah kandungan terperinci Mengapa Kod g std::thread Saya Gagal Dipautkan di Linux, dan Bagaimana Saya Boleh Membetulkannya?. 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