Subversion 1.7.x и местоположение expat в конфигурации

Subversion 1.7.x и местоположение expat в конфигурации

Я использую CentOS 6.3 64bit и панель управления DirectAdmin. В настоящее время я установил Apache Subversion 1.6.19 без каких-либо проблем.

Я установил expat, expat-devel и neon-devel с помощью yum.

При установке Apache Subversion 1.6.19 эта команда настройки работает нормально:

./configure --prefix=/usr --with-ssl --with-apxs=/usr/sbin/apxs --with-apr=/usr/bin/apr-config

Однако при установке Apache Subversion 1.7.7 с использованием той же команды configure, что и выше, я получаю эту ошибку после выполнения команды «make»:

/etc/httpd/lib/libaprutil-1.so: undefined reference to `XML_StopParser'
collect2: ld returned 1 exit status
make: *** [subversion/svnadmin/svnadmin] Error 1

Однако я обнаружил, что могу решить эту проблему, добавив в команду конфигурации следующее:

--with-expat=includes:lib_search_dirs:libs

Итак, это выглядит так:

./configure --prefix=/usr --with-ssl --with-expat=includes:lib_search_dirs:libs --with-apxs=/usr/sbin/apxs --with-apr=/usr/bin/apr-config

Однако эта команда настройки затем выдает следующее предупреждение:

configure: WARNING: Expat found amongst libraries used by APR-Util, but Subversion libraries might be needlessly linked against additional unused libraries. It can be avoided by specifying exact location of Expat in argument of --with-expat option.

Поэтому я хочу решить эту проблему. Я много экспериментировал, но не смог понять, как «указать точное местоположение Expat» в команде конфигурации, и как узнать, каким должно быть местоположение?

Однако после долгих поисков я нашел вот это:http://subversion.tigris.org/issues/show_bug.cgi?id=3997- это пользователь FreeBSD говорит следующее:

Building Subversion 1.7.x on FreeBSD currently requires a configure flag:

--with-expat=/usr/local/include:/usr/local/lib:expat

As that is the default location of expat on that platform, it would be nice if configure detected it automatically.

Однако я не использую FreeBSD, я использую CentOS 6.3 64bit. Также помните, я сказал, что установил expat, expat-devel и neon-devel с помощью yum.

Однако я попытался использовать путь expat/command, опубликованный пользователем FreeBSD, и, похоже, он работает, не выдает ошибок при запуске команды configure и не выдает ошибок при запуске "make". Вот что я использовал тогда:

./configure --prefix=/usr --with-ssl --with-expat=/usr/local/include:/usr/local/lib:expat --with-apxs=/usr/sbin/apxs --with-apr=/usr/bin/apr-config

Но этот сервер является производственным сервером, и поэтому мне нужна ваша помощь в совете, правильно ли это также запустить на сервере CentOS? Правилен ли следующий путь в команде expat на CentOS?:

--with-expat=/usr/local/include:/usr/local/lib:expat

Если нет, пожалуйста, посоветуйте, на что его следует изменить. Заранее спасибо за любое подтверждение или помощь по этому вопросу!


Я ошибался, expat location из FreeBSD не работает на CentOS. Это:

./configure --prefix=/usr --with-ssl --with-expat=/usr/local/include:/usr/local/lib:expat --with-apxs=/usr/sbin/apxs --with-apr=/usr/bin/apr-config

После выполнения «make» выдается следующая ошибка:

/etc/httpd/lib/libaprutil-1.so: undefined reference to `XML_StopParser'
collect2: ld returned 1 exit status
make: *** [subversion/svnadmin/svnadmin] Error 1

Я сдаюсь. Я не нашел ответа о том, как указать местоположение expat в приведенной выше команде для CentOS, нигде в Интернете (искал решение больше недели), и написал в нескольких местах, чтобы попросить о помощи.

решение1

Тыиметьустановили expat-develпакет, да?

Связанный контент