我一直试图建立颠覆(在有限的帐户上)很长一段时间,但没有任何运气:(

我正在遵循的说明: http://wiki.dreamhost.com/Subversion_Installation

运行此:

./configure --prefix=${RUN} --without-berkeley-db --with-ssl --with-zlib --enable-shared

给我这个错误:

checking for library containing RSA_new... not found
configure: error: could not find library containing RSA_new
configure failed for neon

有人可以向我解释一下:

  1. 可能的原因
  2. 绕过它的可能方法
  3. 可选:这些模块是什么以及它们的用途是什么(Neon / RSA_new)
  4. 谢谢!

    日志文件内容:

    尝试从neon config.log文件中找到有趣的位:

    configure:27693: gcc -o conftest -g -O2   conftest.c  >&5
    /tmp/ccazXdJz.o: In function `main':
    /home/stpinst/soft/subversion-1.5.4/neon/conftest.c:93: undefined reference to `RSA_new'
    collect2: ld returned 1 exit status
    configure:27699: $? = 1
    configure: failed program was:
    ...
    | int
    | main ()
    | {
    | RSA_new();
    |   ;
    |   return 0;
    | }
    configure:27742: gcc -o conftest -g -O2   conftest.c  -lcrypto  -lz >&5
    /usr/bin/ld: cannot find -lcrypto
    collect2: ld returned 1 exit status
    configure:27748: $? = 1
    

    -

有帮助吗?

解决方案

查看我对此处

其他提示

  1. 您的系统上没有libcrypto.a和libcrypto.so
  2. 你需要安装lib liblpto,它位于libssl-dev包中( aptitude install libssl-dev
  3. Neon是subversion中包含的WebDAV库; WebDAV是subversion支持的有线协议之一(http :)。 RSA是一种加密算法。 Neon实际上并不需要它 - 只是configure使用它来确定libcrypto是否可用。

终于开始工作了。 怎么样: 下载openssl-0.x.x.tar.gz,解压缩,cd入其中

将它安装在某个地方,比如(对我而言)

$ ./config shared --prefix=$HOME/installs && make clean && make && make install

$  export CFLAGS= "-O2 -g -I/root/installs/include"
$  export CFLAGS="-O2 -g -I/root/installs/include"
$  export LDFLAGS="-L/root/installs/lib"
$  export CPP="gcc -E -I/root/installs/include"

解压缩subversion +它的deps

进入neon子目录

$ ./configure --with-ssl=openssl --prefix=$HOME/installs && make clean && make && make install

删除霓虹灯目录

进入subversion目录

$ ./configure --with-ssl --prefix=$HOME/installs --with-neon=/root/installs/bin/neon-config && make clean && make && make install

注意:您可以通过使用--with-ssl = / root / installs或其他方式在没有所有导出的情况下离开。

您需要先安装OpenSSL,或者配置--without-ssl(如果您按照字面意思执行操作,则只省略--with-ssl选项)。

如果我跳过SSL:

./configure --prefix=${RUN} --without-ssl

我收到此错误:

checking for openssl/opensslv.h... no
configure: error: We require OpenSSL; try --with-openssl
configure failed for serf

如果我这样做:

 ./configure --prefix=${RUN} --with-openssl

我收到警告:

configure: WARNING: Unrecognized options: --with-openssl
...
configure: error: '--with-openssl requires a path to a directory'
configure failed for serf

: - S

您是否检查了使用SSL支持编译Subversion ,其中需要以下可变项完成这个过程?

setenv CC "gcc -I/usr/local/ssl/include -L/usr/local/ssl/lib"
setenv CFLAGS "-O2 -g -I/usr/local/ssl/include"
setenv LDFLAGS "-L/usr/local/ssl/lib"
setenv CPP "gcc -E -I/usr/local/ssl/include"

帖子找不到包含RSA_new的图书馆 ,建议确保标题也安装在系统上(Debian-Ubuntu-Dapper-Beta2:“apt-get install libssl-dev”),或者 Martin说:aptitude安装libssl-dev。

简而言之,标题不存在,或者在配置过程中它们不在正确的路径中。

注意:我正在使用共享主机,所以我无法做一些事情。

致电

apt-get install libssl-dev

给了我这个错误:

E: Could not open lock file /var/lib/dpkg/lock - open (13 Permission denied)
E: Unable to lock the administration directory (/var/lib/dpkg/), are you root?

呼叫     aptitude安装libssl-dev

给了我这个错误:

E: Could not open lock file /var/lib/dpkg/lock - open (13 Permission denied) 
E: Unable to lock the administration directory (/var/lib/dpkg/), are you root

正如你可能看到的那样,我完全迷失了,所以任何进一步的手握都会非常感激! :)

我想我终于得到了“配置”部分工作。

首先,我在本地检索了openssl:

wget http://www.openssl.org/source/openssl-0.9.8a.tar.gz
tar zxvf openssl-0.9.8a.tar.gz
cd openssl-0.9.8a
./configure --prefix=${RUN}
make
make install

然后我使用对该文件夹的引用构建了subversion:

./configure --prefix=${RUN} --without-berkeley-db --with-openssl=$HOME/soft/openssl-0.9.8a

我实际上得到了这个警告:

configure: WARNING: Unrecognized options: --with-openssl

既然我已经把它全部覆盖了,它会编译几分钟然后给我这个错误:

link: warning: `/usr/lib/gcc/x86_64-linux-gnu/4.1.2/../../..//libsqlite                                                                        3.la' seems to be moved
libtool: link: warning: `/usr/lib/gcc/x86_64-linux-gnu/4.1.2/../../..//libsqlite                                                                        .la' seems to be moved
libtool: link: warning: `/usr/lib/gcc/x86_64-linux-gnu/4.1.2/../../..//libexpat.                                                                        la' seems to be moved
/usr/bin/ld: cannot find -lssl
collect2: ld returned 1 exit status
make[1]: *** [libserf-0.la] Error 1
make[1]: Leaving directory `/mnt/local/home/stpinst/soft/subversion-1.5.4/serf'
make: *** [external-all] Error 1

这似乎是一个无休止的故事......我可以在某处下载最新的二进制文件吗?

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top