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?


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


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.


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
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.