2012-11-15 32 views
7

Tôi đang cố tạo RPM từ các tệp nhị phân trên hệ thống REDHAT 6. Tôi có tất cả các tập tin bao gồm trong phần% files (tìm/path/to/giả/cài đặt -type f >> specfile)rpmbuild Đã cài đặt (nhưng chưa được đóng gói) các tệp nguồn

Khi tôi chạy rpmbuild -bb specfile --target x86_64 tôi nhận được

Kiểm tra cho (các) tệp không được giải nén:/usr/lib/rpm/check-files /path/to/rpmbuild/BUILDROOT/Package-1.0.0-1.el6.x86_64 lỗi: Đã tìm thấy (các tệp đã được giải nén (chưa được đóng gói) đã cài đặt :

RPM xây dựng lỗi: tập tin cài đặt (nhưng không đóng gói) (s) được tìm thấy:

Lưu ý rằng không có tập tin được liệt kê trong thông báo lỗi. Tôi không chắc những gì sai, và ý tưởng?

Trả lời

3

Tôi đoán/đường dẫn/đến/giả/cài đặt của bạn không chính xác.

Đường dẫn trong phần %files phải là đường dẫn nơi tệp cuối cùng sẽ được cài đặt, ví dụ: /usr/local/bin/myprog. Trong quá trình xây dựng rpm, trong phần %build bạn cần đảm bảo rằng bạn đặt các tệp vào cùng một nơi bạn chỉ định trong phần %files hoặc bạn sử dụng tùy chọn buildroot của rpmbuild và sử dụng biến số $RPM_BUILD_ROOT trong tệp spec của bạn với một phụ đường dẫn khớp với danh sách %files, trong ví dụ này $RPM_BUILD_ROOT/usr/local/bin/myprog. Xem http://www.rpm.org/max-rpm-snapshot/ch-rpm-anywhere.html để biết chi tiết.

+0

Xin lưu ý rằng tôi là tạo ra RPM từ mã nhị phân hiện có (không có% xây dựng). % Tác phẩm của tôi trông giống như: /usr/share/foo /opt/foo/bar Và cấu trúc thư mục của tôi là: /path/to/rpmbuild/usr/share/foo /path/tới/rpmbuild/opt/foo/bar – Trevor

+0

Doy bạn đặt tùy chọn buildroot thành/pat/to/rpmbuild khi chạy rpmbuild? – Bernhard

Các vấn đề liên quan