【发布时间】:2012-01-20 18:15:40
【问题描述】:
我在 Ubuntu 11.10 上编译 C++ 和 OpenSSL 项目时遇到了严重问题。 编译命令为:
g++ -Wall -lssl -lm -lcrypto -I ./src ./src/server.cpp -o ./bin/server
我收到以下错误:
server.cpp:(.text+0x8ff): undefined reference to `RSA_new'
server.cpp:(.text+0x92d): undefined reference to `PEM_read_RSAPrivateKey'
server.cpp:(.text+0xa85): undefined reference to `RSA_size'
server.cpp:(.text+0xaa1): undefined reference to `RSA_size'
server.cpp:(.text+0xae7): undefined reference to `RSA_private_decrypt'
server.cpp:(.text+0xd84): undefined reference to `BF_set_key'
server.cpp:(.text+0xf1d): undefined reference to `BF_ecb_encrypt'
server.cpp:(.text+0x13c6): undefined reference to `BF_ecb_encrypt'
collect2: ld returned 1 exit status
make: *** [server] Error 1
我成功安装了 openssl 和 libssl-dev,但问题仍然存在。 我尝试使用内核 3.0 在 Linux Mint 12 上编译项目,但遇到了同样的问题。 在我使用内核 2.6 的旧 Linux 操作系统上,项目编译并运行良好(使用相同的 Makefile 和相同的源)。 请帮帮我!
【问题讨论】:
-
Linking OpenSSL 的可能重复项