Rumah > pembangunan bahagian belakang > C++ > Bilakah Bendera \'-stdlib=libstdc \' Harus Digunakan dengan GCC?

Bilakah Bendera \'-stdlib=libstdc \' Harus Digunakan dengan GCC?

Patricia Arquette
Lepaskan: 2024-10-23 15:31:02
asal
655 orang telah melayarinya

When Should the '-stdlib=libstdc  ' Flag Be Used with GCC?

Bila Gunakan Bendera '-stdlib=libstdc ' dengan GCC

Apabila menyusun dengan gcc, bendera '-stdlib=libstdc ' adalah perlu untuk menentukan penggunaan Pustaka Standard C GNU (libstdc ) sebagai pustaka masa jalan.

Adakah Pengkompil Menggunakan libstdc Secara Automatik ?

Tidak. Bergantung pada sistem pengendalian dan versi GCC tertentu, pengkompil mungkin lalai kepada pustaka masa jalan yang berbeza.

Bila Gunakan Bendera '-stdlib=libstdc '

Berikut ialah beberapa senario di mana penggunaan bendera '-stdlib=libstdc ' diperlukan:

  • Di Linux: Walaupun kebanyakan pengedaran Linux menggunakan libstdc secara lalai, menyatakan bendera secara eksplisit boleh memastikan keserasian merentas versi berbeza.
  • Pada macOS sebelum Mavericks: Sebelum macOS Mavericks, pustaka masa jalan lalai ialah versi libstdc Apple yang lebih lama. Untuk menggunakan libc (yang menyokong C 11), bendera '-stdlib=libc ' mesti digunakan.
  • Pada macOS sejak Mavericks: Sejak macOS Mavericks, libc telah menjadi lalai dan Bendera '-stdlib=libstdc ' tidak boleh digunakan.

Arahan Penyusunan

Untuk menyusun kod C 11 dengan libstdc pada sistem pengendalian yang berbeza, gunakan yang berikut arahan:

  • Linux: g -std=c 11 -stdlib=libstdc input.cxx -o a.out
  • macOS sebelum Mavericks: g -std=c 11 -stdlib=libc input.cxx -o a.out
  • macOS sejak Mavericks: clang -std=c 11 input.cxx -o a. keluar

Atas ialah kandungan terperinci Bilakah Bendera \'-stdlib=libstdc \' Harus Digunakan dengan GCC?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan Laman Web ini
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
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan