在 D 中使用 OpenSSL 库
我在 Ubuntu 10.04 上使用带有 dmd+tango 捆绑包的 OpenSSL 库时遇到问题。 我已经编译了OpenSSL 1.0.0d。我有文件:
- /usr/local/ssl/lib/libssl.a
- /usr/local/ssl/lib/libcrypto.a
所以,我像这样使用它们:
$ dmd myfile.d -L/usr/local/ssl/lib -L-lssl -L-lcrypto
错误是:
/usr/bin/ld: /usr/local/ssl/lib: No such file: File format not recognized
collect2: ld returned 1 exit status
--- errorlevel 1
我也使用 OpenSSL 0.9.8r 尝试过此操作。我不知道:/
我可以生成 ssl 证书,所以我假设 OpenSSL 工作正常。
请帮我。
I have trouble using the OpenSSL library with dmd+tango bundle on Ubuntu 10.04.
I have compilled OpenSSL 1.0.0d. I've got files:
- /usr/local/ssl/lib/libssl.a
- /usr/local/ssl/lib/libcrypto.a
So, I'm using them like this:
$ dmd myfile.d -L/usr/local/ssl/lib
-L-lssl -L-lcrypto
And the error is:
/usr/bin/ld: /usr/local/ssl/lib: No such file: File format not recognized
collect2: ld returned 1 exit status
--- errorlevel 1
I have tried this also with OpenSSL 0.9.8r. I have no idea :/
I can generate ssl certificates, so I assume the OpenSSL works correct.
Please help me.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
我相信第二个参数应该是
-LL/usr/local/ssl/lib
(-L
一次告诉编译器将其余部分传递给链接器,然后再次为ld
-L
选项将目录添加到库搜索路径)。I believe that second argument should be
-L-L/usr/local/ssl/lib
(-L
once to tell the compiler to pass the rest to the linker, and again for theld
-L
option which adds a directory to the library search path).感谢 CyberShadow 的回复。你对 -LL 参数是对的。
就我而言,应该是这样的:
Thank You CyberShadow for your reply. You're right with -L-L params.
In my case it should be this way: