Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Bilakah Bendera \"-stdlib=libstdc \" Diperlukan Apabila Menyusun dengan GCC?

Bilakah Bendera \"-stdlib=libstdc \" Diperlukan Apabila Menyusun dengan GCC?

Linda Hamilton
Linda Hamiltonasal
2024-10-24 01:27:29149semak imbas

When is the

Bila Menggunakan Bendera "-stdlib=libstdc " Apabila Menyusun dengan GCC

Dalam beberapa senario, secara eksplisit menetapkan "-stdlib= libstdc " bendera diperlukan apabila menyusun dengan GCC. Berikut ialah keadaannya:

Di Linux:

Secara lalai, pengedaran Linux menggunakan libstdc sebagai pustaka C standard. Selain itu, versi moden GCC sememangnya menyokong C 11 dalam libstdc yang digabungkan. Oleh itu, untuk menyusun kod C 11 pada Linux, hanya menggunakan bendera "-std=c 11" dengan g sudah memadai:

g++ -std=c++11 input.cxx -o a.out

Pada Pra-Mavericks OS X:

Secara sejarah, g pada OS X ialah alias untuk denting . Dalam konteks ini, versi lama libstdc Apple ialah lalai. Untuk memanfaatkan libc , yang termasuk sokongan C 11, anda perlu menyatakan dengan jelas "-stdlib=libc ":

g++ -std=c++11 -stdlib=libc++ input.cxx -o a.out

Pada Mavericks dan OS X Kemudian:

Bermula dengan OS X Mavericks, libc menjadi pustaka C lalai. Sehubungan itu, tidak perlu menggunakan bendera "-stdlib=":

clang++ -std=c++11 input.cxx -o a.out

Building Against libstdc pada OS X:

Dengan Xcode 10 dan seterusnya, membina aplikasi terhadap libstdc tidak lagi disokong. Kod sedia ada yang disusun terhadap libstdc akan terus berfungsi, tetapi penyusunan kod baharu tidak dibenarkan.

Atas ialah kandungan terperinci Bilakah Bendera \"-stdlib=libstdc \" Diperlukan Apabila Menyusun dengan GCC?. 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