pkg-config không tìm thấy tệp gói khi thư mục được liệt kê trong PKG_CONFIG_PATH


2

Vì vậy, đây là nội dung PKG_CONFIG_PATH của tôi:

/usr/local/lib/pkgconfig:/usr/lib/pkgconfig

và đây là đầu ra của locate lv2.pc(lv2 là thư viện tôi đang cố gắng liên kết)

/usr/local/lib/pkgconfig/lv2.pc

nhưng đây là đầu ra của pkg-config --modversion lv2

Package lv2 was not found in the pkg-config search path.
Perhaps you should add the directory containing `lv2.pc'
to the PKG_CONFIG_PATH environment variable
No package 'lv2' found

Có lời khuyên nào không? Tôi đang chạy gentoo fyi. Cảm ơn trước sự giúp đỡ nào!!

Câu trả lời:


3

Hướng dẫn nói khác nhau, bạn có thể chỉ định nhiều đường dẫn cho PKG_CONFIG_PATH

Từ man-pkgconfig

PKG_CONFIG_PATH Một danh sách các thư mục được phân tách bằng dấu hai chấm (trên Windows, được phân tách bằng dấu chấm phẩy) để tìm kiếm các tệp .pc. Thư mục mặc định sẽ luôn được tìm kiếm sau khi tìm kiếm đường dẫn;

Tuy nhiên, đối với PKG_CONFIG_LIBDIR thì không.

PKG_CONFIG_LIBDIR Thay thế thư mục tìm kiếm pkg-config mặc định.


0

/usr/local/liblà một cá trích đỏ, tại sao các tập tin trong đó và không trong /usr/lib?

emerge media-libs/lv2


Tôi đã tìm ra nó cách đây một thời gian thực sự, xin lỗi vì đã không cập nhật tiến trình của tôi. Tôi phát hiện ra rằng biến không hiểu cú pháp PATH, nó chỉ có thể lấy vị trí của một thư mục. Nhưng dù sao, đối với chương trình này (không), nó sử dụng phiên bản lv2 mới nhất, vì vậy tôi phải cài đặt mới nhất từ ​​svn. Trước khi nó hoạt động (khi xuất hiện, không được biên dịch từ nguồn), có lẽ vì nó nằm trong / usr / lib chứ không phải / usr / local / lib. Tại sao điều này trở thành một cá trích đỏ?
Athan Clark

Bởi vì nó không phải là Portage, có = media-libs / lv2-9999 trong lớp phủ pro-audio.
Tamara Wijsman

-1

PkgConfig chỉ có thể hiểu một vị trí của một thư mục trong biến, không giống như cú pháp của PATH. Bạn cần phải đặt nó ở vị trí có vị trí của tất cả các tệp .pc của bạn.

export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig

2
Điều này có thể đã thay đổi kể từ năm 2013, nhưng trang quản trị pkg-config hiện tại cho biết đó PKG_CONFIG_PATHdanh sách các đường dẫn được phân tách bằng dấu hai chấm (UNIX) / dấu chấm phẩy (Windows) để tìm kiếm. Vì vậy, nếu bạn có, giả sử, thư mục Qt pkgconfig trong ~ / dev / qt / 5.6 / lib / pkgconfig và grpc pkgconfig trong / usr / local / lib / pkgconfig, bạn có thể export PKG_CONFIG_PATH=~/dev/qt/5.6/lib/pkgconfig:/usr/local/lib/pkgconfig. Làm việc cho tôi.
allquixotic
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.