
Estou executando o painel de controle CentOS 6.3 de 64 bits e DirectAdmin. Atualmente instalei o Apache Subversion 1.6.19 sem problemas.
Eu instalei expat e expat-devel e neon-devel usando yum.
Ao instalar o Apache Subversion 1.6.19, este comando configure funciona bem:
./configure --prefix=/usr --with-ssl --with-apxs=/usr/sbin/apxs --with-apr=/usr/bin/apr-config
No entanto, ao instalar o Apache Subversion 1.7.7 usando o mesmo comando configure acima, recebo este erro após executar o comando "make":
/etc/httpd/lib/libaprutil-1.so: undefined reference to `XML_StopParser'
collect2: ld returned 1 exit status
make: *** [subversion/svnadmin/svnadmin] Error 1
No entanto, descobri que posso resolver esse problema adicionando isto ao comando configure:
--with-expat=includes:lib_search_dirs:libs
Então fica assim:
./configure --prefix=/usr --with-ssl --with-expat=includes:lib_search_dirs:libs --with-apxs=/usr/sbin/apxs --with-apr=/usr/bin/apr-config
No entanto, esse comando configure fornece este aviso:
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.
Então eu quero resolver isso. Eu experimentei muito, mas não consegui descobrir como "especificar a localização exata do Expat" no comando configure e como descobrir qual deveria ser a localização?
Porém depois de muita pesquisa encontrei isto:http://subversion.tigris.org/issues/show_bug.cgi?id=3997- esse é um usuário do FreeBSD dizendo o seguinte:
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.
Porém não estou usando o FreeBSD, estou executando o CentOS 6.3 de 64 bits. Lembre-se também de que eu disse que instalei expat e expat-devel e neon-devel usando yum.
Porém tentei usar o caminho expat/command postado pelo usuário do FreeBSD, e parece funcionar, não dá erros ao executar o comando configure, e não dá erros ao executar "make". Isto é o que eu usei então:
./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
Mas este servidor é um servidor de produção, por isso preciso da sua ajuda para aconselhar se também é correto rodar em um servidor CentOS? O seguinte caminho no comando expat está correto no CentOS?:
--with-expat=/usr/local/include:/usr/local/lib:expat
Caso contrário, informe como deve ser alterado. Agradecemos antecipadamente por qualquer confirmação ou ajuda sobre isso!
Eu estava errado, o local de expatriação do FreeBSD não funciona no CentOS. Esse:
./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
Dá esse erro depois de fazer "make":
/etc/httpd/lib/libaprutil-1.so: undefined reference to `XML_StopParser'
collect2: ld returned 1 exit status
make: *** [subversion/svnadmin/svnadmin] Error 1
Desisto. Não encontro nenhuma resposta sobre como especificar a localização do expatriado no comando acima para CentOS em qualquer lugar da Internet (estou pesquisando há mais de uma semana após a solução) e postei ajuda em vários lugares.
Responder1
Vocêterinstalei o expat-devel
pacote, certo?