使用c语言在solaris上的openssl问题
openssl issue on solaris using c language
我正在尝试实现 TLS 连接以使用 post 命中 URL,它还包含一些查询字符串以获取一些响应数据。我正在尝试在 Solaris 上使用 OpenSSL 但遇到了一些错误。下面我 posting o/p
bash-3.2# /usr/sfw/bin/gcc ssl.c -lkstat -lnsl -lsocket -lresolv -lssl ssl.c:72:23: warning: unknown escape sequence ,
ssl.c:72:23: warning: unknown escape sequence ,
Undefined first referenced symbol in file BIO_write /var/tmp//cc2qj0DA.o (symbol belongs to im plicit dependency /usr/sfw/lib/gcc/i386--solaris2.10/3.4 .3/../../../libcrypto .so.0.9.7)
BIO_free_all /var/tmp//cc2qj0DA.o (symbol belongs to implicit dependency usr/sfw/lib/gcc/i386-pc-solaris2.10/3.4.3/../../../libcrypto .so.0.9.7)
IO_ctrl /var/tmp//cc2qj0DA.o (symbol belongs to implicit dependency /usr/sfw/lib/gcc/i386-pc-solaris2.10/3.4.3/../../../libcrypto .so.0.9.7)
BIO_read /var/tmp//cc2qj0DA.o (symbol belongs to implicit dependency /usr/sfw/lib/gcc/i386-pc-solaris2.10/3.4.3/../../../libcrypto .so.0.9.7)
ld: fatal: symbol referencing errors. No output written to a.out collect2:
ld returned 1 exit status
看起来你的来源引用 BIO_write
,它是在 libcrypto
中定义的,而不是 libssl
,但你只 link 和 libssl
(通过-lssl
)。也尝试传递 -lcrypto
。
注意: OpenSSL 0.9.7 真的非常非常旧。最后一个上游版本是在 2005 年发布的 (!)。您应该认真考虑使用更新的版本。
我正在尝试实现 TLS 连接以使用 post 命中 URL,它还包含一些查询字符串以获取一些响应数据。我正在尝试在 Solaris 上使用 OpenSSL 但遇到了一些错误。下面我 posting o/p
bash-3.2# /usr/sfw/bin/gcc ssl.c -lkstat -lnsl -lsocket -lresolv -lssl ssl.c:72:23: warning: unknown escape sequence ,
ssl.c:72:23: warning: unknown escape sequence ,
Undefined first referenced symbol in file BIO_write /var/tmp//cc2qj0DA.o (symbol belongs to im plicit dependency /usr/sfw/lib/gcc/i386--solaris2.10/3.4 .3/../../../libcrypto .so.0.9.7)
BIO_free_all /var/tmp//cc2qj0DA.o (symbol belongs to implicit dependency usr/sfw/lib/gcc/i386-pc-solaris2.10/3.4.3/../../../libcrypto .so.0.9.7)
IO_ctrl /var/tmp//cc2qj0DA.o (symbol belongs to implicit dependency /usr/sfw/lib/gcc/i386-pc-solaris2.10/3.4.3/../../../libcrypto .so.0.9.7)
BIO_read /var/tmp//cc2qj0DA.o (symbol belongs to implicit dependency /usr/sfw/lib/gcc/i386-pc-solaris2.10/3.4.3/../../../libcrypto .so.0.9.7)
ld: fatal: symbol referencing errors. No output written to a.out collect2:
ld returned 1 exit status
看起来你的来源引用 BIO_write
,它是在 libcrypto
中定义的,而不是 libssl
,但你只 link 和 libssl
(通过-lssl
)。也尝试传递 -lcrypto
。
注意: OpenSSL 0.9.7 真的非常非常旧。最后一个上游版本是在 2005 年发布的 (!)。您应该认真考虑使用更新的版本。