2010-10-01 23 views
8

Tôi hiện đang biên dịch lại gtk + và phụ thuộc từ nguồn (Tôi không có lựa chọn nào khác).Libtool nghĩ rằng "thư viện đã được di chuyển" nhưng nó không phải là trường hợp

Tất cả các gói tùy chỉnh của tôi được cài đặt trong một điểm tùy chỉnh cụ thể (hãy gọi nó là /packages) (có vẻ lạ nhưng lần này lại không có lựa chọn nào khác).

Khi tôi cố gắng biên dịch lại pango, nó cần freetype. Freetype đã được cài đặt trong /packages/freetype/2.1.10/amd64-linux (lib, include ... nằm trong thư mục này) và đường dẫn cấu hình khác được đặt (LD_LIBRARY_PATH, LIBRARY_PATH, CPLUS_INCLUDE_PATH, INCLUDE_PATH, PKG_CONFIG_PATH). cấu hình của pango chạy tốt. Nó tìm thấy freetype và tạo Makefile. Khi tôi cố gắng thực hiện, tôi nhận được thông báo lỗi sau:

libtool: link: warning: library `/packages/freetype/2.1.10/amd64-linux//lib/libfreetype.la' was moved. 
grep: /usr/local/lib/libfreetype.la: No such file or directory 

libtool có một vấn đề với lib của tôi (nhưng libfreetype.la tồn tại trong thư mục /packages/freetype/2.1.10/amd64-linux//lib/ và không có vấn đề về truy cập). Vì vậy, libtool cố gắng tìm thấy nó trong "những nơi cổ điển" như /usr/... và không tìm thấy nó. Khi bắt đầu, tôi nghĩ rằng libtool bị nhầm lẫn với hai dấu gạch chéo (có thể do lỗi trong cờ --prefix trong quá trình biên soạn freetype) vì vậy tôi đã biên dịch lại freetype mà không có lỗi đánh máy nhưng nó không thay đổi bất cứ điều gì.

Có ai có ý tưởng giúp tôi không? Tôi chưa bao giờ sử dụng libtool trong dự án personnal của mình trước đây nên tôi không biết liệu có cách nào để giải quyết hành vi lạ này không ... (Có thể không liên quan nhưng libtool là phiên bản 1.5.22)

Cảm ơn trước.

Trả lời

8

Bạn đã xem bên trong tệp libfreetype.la chưa? Các tệp Libtool .la chỉ là các tệp văn bản mô tả các thư viện. Theo mặc định, chúng được nhận xét. Tìm kiếm các cài đặt libdirdependency_libs và kiểm tra xem chúng có trỏ đến đúng địa điểm hay không.

+1

Cảm ơn sự giúp đỡ của bạn! Bằng cách kiểm tra thủ công các tệp .la của tất cả các phụ thuộc, tôi quản lý để giải quyết vấn đề bằng cách thay thế các lần xuất hiện của /usr/local/lib/libfreetype.la bằng đúng. Tôi không biết rằng tập tin .la mà chỉ cần "config" tập tin để liên kết ... – ThR37