Pertanyaan yang diberi tag «gcc»

GCC adalah Koleksi Kompiler GNU. Ini adalah kompiler standar de facto untuk C, C ++, Go, Fortran, dan Ada di Linux dan mendukung banyak bahasa dan platform lainnya. Terlepas dari kompiler, GCC memiliki toolchain (libc, libstdc ++, objdump, nm dll.) Yang banyak digunakan pada beberapa platform dan sistem.




9
Bagaimana saya bisa membuat Makefile secara otomatis membangun kembali file sumber yang menyertakan file header yang dimodifikasi? (Dalam C / C ++)
Saya memiliki makefile berikut yang saya gunakan untuk membangun program (sebenarnya kernel) yang sedang saya kerjakan. Ini dari awal dan saya belajar tentang prosesnya, jadi ini tidak sempurna, tapi saya pikir ini cukup kuat pada titik ini untuk tingkat pengalaman saya menulis makefiles. AS = nasm CC = gcc LD …

6
Header yang telah dikompilasi dengan GCC
Adakah yang berhasil mendapatkan header yang dikompilasi sebelumnya yang bekerja dengan GCC? Saya tidak beruntung dalam upaya saya dan saya belum melihat banyak contoh bagus tentang cara menyiapkannya. Saya sudah mencoba cygwin gcc 3.4.4 dan menggunakan 4.0 di Ubuntu.

1
Apa perbedaan antara -rpath dan -L?
gccdan ldmenyediakan banyak cara untuk menentukan jalur pencarian perpustakaan — di antaranya adalah tanda -rpathdan -L. Halaman manual tidak menunjukkan perbedaan antara kedua tanda ini, yang secara efektif mengatakan setiap tanda menambahkan pustaka ke jalur pencarian pustaka. Namun nampaknya aneh bahwa kedua bendera melakukan hal yang persis sama. Apa perbedaan, …

3
<random> menghasilkan nomor yang sama di Linux, tetapi tidak di Windows
Kode di bawah ini dimaksudkan untuk menghasilkan daftar lima nomor pseudo-random dalam interval [1.100]. Saya menyemai default_random_enginedengan time(0), yang mengembalikan waktu sistem dalam waktu unix . Ketika saya mengkompilasi dan menjalankan program ini di Windows 7 menggunakan Microsoft Visual Studio 2013, ini berfungsi seperti yang diharapkan (lihat di bawah). Ketika …

5
Menghubungkan libstdc ++ secara statis: ada gotchas?
Saya perlu menerapkan aplikasi C ++ yang dibangun di Ubuntu 12.10 dengan libstdc ++ GCC 4.7 ke sistem yang menjalankan Ubuntu 10.04, yang hadir dengan versi libstdc ++ yang jauh lebih lama. Saat ini, saya sedang mengkompilasi -static-libstdc++ -static-libgcc, seperti yang disarankan oleh posting blog ini: Menghubungkan libstdc ++ secara …

5
Kesalahan fatal GCC: stdio.h: File atau direktori tidak ada
Saya mencoba untuk mengkompilasi program di C pada OS X 10.9 dengan GCC 4.9 (percobaan). Untuk beberapa alasan, saya mendapatkan error berikut pada waktu kompilasi: gcc: fatal error: stdio.h: No such file or directory Saya kemudian mencoba program Hello World sederhana: #include &lt;stdio.h&gt; int main(int argc, const char *argv[]) { …
90 c  gcc  stdio 

7
Membangun OSX App Bundle
Misalkan saya telah membuat aplikasi osX tanpa menggunakan Xcode. Setelah dikompilasi dengan GCC, saya mendapatkan file yang dapat dieksekusi yang ditautkan ke beberapa perpustakaan lain. Beberapa pustaka tersebut mungkin lagi ditautkan secara dinamis ke pustaka sistem non-standar lainnya Apakah ada alat yang ada yang membuat OSX App bundle dengan terlebih …
90 macos  gcc  otool 

5
Apa perbedaan antara gcc -ggdb dan gcc -g
Ketika saya menggunakan gcc untuk mengkompilasi program C saya biasanya menggunakan -guntuk mendapatkan beberapa informasi debug ke dalam file elf sehingga gdb dapat membantu saya jika diperlukan. Namun, saya perhatikan bahwa beberapa program menggunakan -ggdb, karena itu seharusnya membuat info debug lebih ramah gdb. Bagaimana perbedaannya dan mana yang direkomendasikan …
90 gcc  gdb 


4
Mengompilasi kode multithread dengan g ++
Saya memiliki kode termudah yang pernah ada: #include &lt;iostream&gt; #include &lt;thread&gt; void worker() { std::cout &lt;&lt; "another thread"; } int main() { std::thread t(worker); std::cout &lt;&lt; "main thread" &lt;&lt; std::endl; t.join(); return 0; } meskipun saya masih tidak bisa mengkompilasinya dengan g++menjalankan. Keterangan lebih lanjut: $ g++ --version g++ (Ubuntu/Linaro …
89 c++  linux  ubuntu  gcc  g++ 

4
Apakah definisi "volatile" ini tidak stabil, atau apakah GCC mengalami beberapa masalah kepatuhan standar?
Saya memerlukan fungsi yang (seperti SecureZeroMemory dari WinAPI) selalu memiliki memori nol dan tidak dapat dioptimalkan, bahkan jika kompiler berpikir bahwa memori tidak akan pernah diakses lagi setelah itu. Sepertinya kandidat yang sempurna untuk volatile. Namun saya mengalami beberapa masalah saat membuatnya berfungsi dengan GCC. Berikut ini contoh fungsinya: void …
89 c++  c  gcc  standards 

4
Apakah variabel stack diselaraskan dengan GCC __attribute __ ((aligned (x)))?
Saya memiliki kode berikut: #include &lt;stdio.h&gt; int main(void) { float a[4] __attribute__((aligned(0x1000))) = {1.0, 2.0, 3.0, 4.0}; printf("%p %p %p %p\n", &amp;a[0], &amp;a[1], &amp;a[2], &amp;a[3]); } Dan saya memiliki output berikut: 0x7fffbfcd2da0 0x7fffbfcd2da4 0x7fffbfcd2da8 0x7fffbfcd2dac Mengapa alamatnya a[0]bukan kelipatan 0x1000? Apa sebenarnya yang __attribute__((aligned(x)))dilakukannya? Saya salah paham dengan penjelasan ini …

Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.