Apa yang membuat / autoconf.h yang dihasilkan?

9

Kami mencoba membuat perangkat lunak yang membutuhkan sumber kernel, bukan hanya header. Jadi kami mengunduh sumber kernel melalui centos src rpm.

Namun autoconf.h hilang.

Kami sudah mencoba

  • Letakkan .config di tempatnya (salin satu dari / boot).

  • Lari make oldconfig

Jadi apa yang membuat file autoconf.h? Apakah kita benar-benar harus membangun kernel?

Stefan
sumber
Jika seseorang menggunakan Kconfig sebagai arsitektur bangunan untuk proyek yang tidak terkait dengan Linux, jawaban untuk pertanyaan ini sedikit berbeda: untuk menghasilkan autoconf.h yang Anda butuhkan ./kconfig-frontends/frontends/conf/conf --silentoldconfig Kconfig
Étienne

Jawaban:

12

File include/generated/autoconf.hdihasilkan pada make preparelangkah. Jika Anda mencoba membangun modul kernel, Anda juga memerlukan make scriptslangkah:

gunzip < /proc/config.gz > .config
make oldconfig
make prepare
make scripts

Biasanya kernel disertai dengan paket header, sudahkah Anda mencoba menginstalnya terlebih dahulu? Untuk CentOS, coba instal kernel-develpaket. Detail dapat ditemukan di http://wiki.centos.org/HowTos/I_need_the_Kernel_Source

Lekensteyn
sumber
Terima kasih! Ya, kami telah menginstal paket tajuk, tetapi karena beberapa alasan skrip konfigurasi meminta sumber lengkap. Kami menggunakan halaman wiki yang Anda tautkan.
Stefan
Hanya untuk kelengkapan: pada CentOS konfigurasi kernel berada /boot(bandingkan dengan uname -runtuk memilih yang benar).
Stefan
1
@Stefan Pada beberapa distro (seperti Arch Linux) terletak di /lib/modules/$(uname -r)/build/.config( buildbiasanya symlinks ke /usr/src/linux-$(uname -r)), yang lain menggunakan /boot/config-$(uname -r)(seperti Ubuntu, Debian dan rupanya CentOS). Jika diaktifkan selama kompilasi, itu juga tersedia dari /proc/config.gz.
Lekensteyn
0

File autoconf.hdihasilkan secara otomatis selama proses build dari .conffile. Banyak file sumber kernel digunakan autoconf.h.

Behnam Dezfouli
sumber
1
Selamat Datang di Kesalahan Server! Kami lebih suka jawaban tambahan untuk menjawab pertanyaan dengan cara yang tidak dijawab sebelumnya, atau memberikan solusi yang lebih baik.
Falcon Momot