Пакет 'libxml-2.0' не найден

Я пытаюсь добавить libvisio в мой Mac OS X с https://wiki.documentfoundation.org/DLP/Libraries/libvisio

Я добавил все зависимости, описанные там, перечисленные ниже:

boost
gperf
icu
librevenge
libxml2
perl
doxygen

После добавления зависимостей я пытаюсь запустить следующие команды.

$ ./autogen.sh ''# only needed for building from git''
$ ./configure
$ make
$ make install

Но у меня возникли проблемы со второй командой $ ./configure

Получаю ниже ошибку.

configure: error: Package requirements (
    libxml-2.0
) were not met:

No package 'libxml-2.0' found

Consider adjusting the PKG_CONFIG_PATH environment variable if you
installed software in a non-standard prefix.

Alternatively, you may set the environment variables LIBXML_CFLAGS
and LIBXML_LIBS to avoid the need to call pkg-config.
See the pkg-config man page for more details.

я пытался установить libxml2 с $ brew install libxml но это говорит Warning: libxml2-2.9.3 already installed,

Я использую OS X 10.11.4

Может кто-нибудь помочь мне здесь. Спасибо

7 ответов

Решение

Итак, у вас уже есть libxml2, установленный с brew. Как говорит brew, когда он устанавливает libxml2:

margold@home-macbook ~ $ brew install libxml2
(...)
==> Caveats
This formula is keg-only, which means it was not symlinked into /usr/local.

OS X already provides this software and installing another version in
parallel can cause all kinds of trouble.

Generally there are no consequences of this for you. If you build your
own software and it requires this formula, you'll need to add to your
build variables:

    LDFLAGS:  -L/usr/local/opt/libxml2/lib
    CPPFLAGS: -I/usr/local/opt/libxml2/include
(...)

Это означает, что brew не выполняет символическую ссылку на libxml2 в / usr / local / lib и / usr / local / include, и, вероятно, также не связывает там файл pkg-config, поэтому libvisio не может его найти.

Таким образом, вы должны указать местоположение libxml2 при запуске ./configureтак же, как brew и libvisio говорят вам:

./configure LIBXML_CFLAGS=-I/usr/local/opt/libxml2/include LIBXML_LIBS=-L/usr/local/opt/libxml2/lib

(Пути в вашей системе могут отличаться, так что проверьте!)

Другие способы решить эту проблему:

  • установить libvisio с brew напрямую
  • символическая ссылка inlcude/, lib/, а также pkg-config файлы libxml в /usr/local/ сам

Для Ubuntu мне помогло следующее:

apt-get install libxml2-dev

Это также должно работать, так как у меня не было варки:

yum install libxml2-devel

Для альпийских

apk add libxml2-dev

У меня была эта проблема с сборкой PHP 7.4 из исходного кода на Ubuntu 16.04, которую я исправил, используя тот же способ для OSX, предложенный выше + установка пакета dev для libxml2-dev

sudo apt-get install libxml2-dev
./configure LIBXML_CFLAGS=-I/usr/include LIBXML_LIBS=-L/usr/lib/x86_64-linux-gnu/ ....

Пакет 'libxml-2.0' не найден

не означает "/ usr / lib / pkgconfig /libxml-2.0.pc", как правило, находится в файлах разработки libxml2. Как "libxml2-devel"?


предложить вам команду

      apt install -y \
  autotools-dev \
 automake \
 libtool \
 gperf \
 libicu-dev \
 librevenge-dev \
 libxml2-dev \
 libcppunit-dev \
 perl \
 g++ \
 make \
 libboost-all-dev
Другие вопросы по тегам