GNU/Linux >> Belajar Linux >  >> Linux

Header mana yang mendefinisikan makro yang menentukan arsitektur mesin?

Tidak ada file header yang mendefinisikannya - makro tersebut telah ditentukan sebelumnya oleh kompiler. Untuk mengetahui daftar lengkap makro standar, lakukan ini:

echo | gcc -E -dM -

Kemudian lihat hasil untuk kemungkinan makro.


Lebih tepatnya, saya pikir ini adalah tempat __x86_64__ didefinisikan misalnya:https://github.com/gcc-mirror/gcc/blob/releases%2Fgcc-10.2.0/gcc/config/i386/i386-c.c#L688

 cpp_define (parse_in, "__x86_64__");

tetapi saya belum memiliki kesabaran untuk memodifikasi sumber, mengkompilasi ulang, dan mengujinya. Cara yang baik untuk menelusuri adalah:

git grep '"__aarch64__'

Linux
  1. Perintah terminal Linux mana yang paling sering Anda gunakan?

  2. Temukan File Untuk Beberapa Variasi Pada Nama File Yang Ada Bersama Di Direktori Yang Sama?

  3. Utas mana yang menangani sinyal?

  1. 8 perintah menyeramkan yang menghantui terminal

  2. Cara menemukan arsitektur OS yang diinstal

  3. Apa tujuan dari tanda '-' di Kubernetes apply -f -

  1. Alternatif Untuk 'dd' Yang Tidak Memotong File?

  2. Sistem File Mana Yang Harus Dicadangkan Yang Terbaik??

  3. Panduan Lengkap Pemula untuk LVM di Linux