pkg-config: plattformneutraler Weg, um herauszufinden, wo ich meine .pc-Datei installieren soll?

7

Woher weiß ich, wo ich meine .pc -Datei installieren soll? Diese Dateien werden an verschiedenen Orten auf verschiedenen Betriebssystemen abgelegt. Das Ziel ist es, etwas wie $(INSTALL) mylib.pc $$(pkg-config --pcdir) im Installationsziel zu verwenden. Ich dachte, dass pkg-config mir irgendwie sagen könnte, aber nichts finden kann.

Ich suche nach einer "Standalone" -Lösung, die in Makefile-Dateien verwendet werden kann (keine Unterstützung von Autotools o.ä.).

    
just somebody 05.02.2010, 18:31
quelle

4 Antworten

5

UPDATE: Offensichtlich gibt es jetzt einen Weg, dies zu tun:

%Vor%

Gefunden in diesem Fehlerbericht (siehe Kommentar # 4). Die aktuelle Manpage scheint dies zu dokumentieren.

Ursprüngliche Antwort:

Schreckliche Haschischlösung (unter der Annahme von Bourne Shell):

%Vor%

Dies kann Ihnen mehr als einen Ort geben.

Bearbeiten von @just someone

kürzere Version

%Vor%

und nach dem ersten Verzeichnis zu stoppen:

%Vor%     
Craig 01.03.2010, 23:20
quelle
10

Ab pkg-config 0.24 können Sie "pkg-config --variable = pc_path pkg-config" ausführen.

Ссылка

    
scop 06.09.2010 22:00
quelle
3

sollte in $ {libdir} / pkgconfig (dh $ {Präfix} / lib / pkgconfig)

gehen

Grundsätzlich, wenn Sie Bibliotheken installieren und sie gehen in $ {libdir} dann sollte Ihre .pc-Datei in $ {libdir} / pkgconfig und nirgendwo anders sein.

    
Spudd86 28.05.2010 14:06
quelle
1

Leider gibt es für eine stock pkg-config -Installation (für Version 0.23) keine Möglichkeit, den Standardpfad "pc" zu extrahieren, der strings in der Binärdatei (zB strings /usr/bin/pkg-config | grep '/usr/.*/pkgconfig' ) nicht ausführt.

Wenn Sie ein benutzerdefiniertes Build installieren können, patchen Sie es einfach, um den Wert von PKG_CONFIG_PC_PATH zu schreiben, wenn Sie mit der entsprechenden Option ausgeführt werden.

Eine andere Option, die Ihnen wahrscheinlich nicht helfen wird (die ich aber trotzdem der Vollständigkeit halber erwähnen würde), ist, die PKG_CONFIG_PATH -Umgebungsvariable beim Aufruf von pkg-config zu setzen.

    
Chris Jester-Young 28.02.2010 22:21
quelle