Gần đây tôi đã trải qua Unpacking hệ thống tắt vòng / phút nguồn kernel (OpenSuse)? ; và khi nó mất> 10 giờ trên máy của tôi, hãy tưởng tượng sự ngạc nhiên của tôi rằng sau khi thực hiện quy trình được mô tả ở đó, tôi không tìm thấy Module.symvers
bất cứ nơi nào!
Khi tôi tìm kiếm "tạo Module.symvers", tôi nhận được điều này:
LƯU Ý: "Module_prepare" sẽ không xây dựng Module.symvers ngay cả khi
CONFIG_MODVERSIONS được đặt; do đó, một bản dựng kernel đầy đủ cần được
thực thi để làm cho phiên bản mô-đun hoạt động.
( Tài liệu hạt nhân Linux :: kbuild: Module.txt )
... nhưng tôi không thực sự hiểu nó - không phải kernel đã được xây dựng ở bước trước (được mô tả trong liên kết đã cho ở trên sao? Tôi chắc chắn biết rằng phải mất 10 giờ để CC tạo ra cả đống * .o các tập tin và LD để liên kết chúng, vì vậy một cái gì đó phải được xây dựng. Nhưng nếu vậy, thì ở đâu Module.symvers
?
Nói một cách rõ ràng hơn, chính xác tôi nên gọi lệnh nào để tạo Module.symvers? Tôi biết rằng nó make prepare
sẽ không hoạt động - nhưng lệnh đó sẽ là gì?
Module.symvers
bằng cáchzypper install kernel-source
, và tương tự trên distro Linux khác. Các tập tin được đặt tronglib/modules/xxx/build
.