Почему pkg-config --cflags openssl ничего не возвращает на RHEL 6.8?

С awk это так же просто, как

awk -F, -vOFS=, '{$1=n++; print}' n=800 file

. Вы устанавливаете разделители ввода и вывода на , через -F, и -vOFS =, и инициализировать переменную n значением 800 , используя n = 800 . Оператор "действия" {$ 1 = n ++; print} выполняется для каждой записи, устанавливая в первом поле постинкрементное значение n и распечатывая восстановленную запись

3
30.04.2017, 19:50
1 ответ

Похоже, что pkg-config дедуплицирует флаги, а также пропускает пути "по умолчанию", такие как /usr/include.

См.,

$ printf "Name: whatever\nVersion: 1\nDescription: bla\nCflags: -I/usr/include" > /tmp/x.pc
$ pkg-config --cflags  /tmp/x.pc

$ printf "Name: whatever\nVersion: 1\nDescription: bla\nCflags: -I/usr/includeX" > /tmp/y.pc
$ pkg-config --cflags  /tmp/y.pc
-I/usr/includeX

Эти каталоги по умолчанию устанавливаются во время сборки pkg-config, см. README.md в исходниках:

./configure \
     --prefix=/opt/pkgconf \
     --with-system-libdir=/lib:/usr/lib \
     --with-system-includedir=/usr/include

Вы можете отключить это поведение во время выполнения с помощью переменной среды:

$ PKG_CONFIG_ALLOW_SYSTEM_CFLAGS=1 pkg-config --cflags  /tmp/x.pc
-I/usr/include

или переопределить встроенный по умолчанию:

$ PKG_CONFIG_SYSTEM_INCLUDE_PATH="/whatever" pkg-config --cflags  /tmp/x.pc
-I/usr/include

Последний pkg-config также имеет параметры командной строки --keep-system-cflags и --keep-system-libs

8
27.01.2020, 21:12

Теги

Похожие вопросы