前言

前几天在Github上把OpenSSL官方的源码拷贝下来准备自己写爬虫(Python的代码写腻了,打算用C/C++来写)。
结果编译的时候一直报错#include <openssl/tls1.h>,我试了好多种办法都没用,比如下面的这些方法。

  1. gcc main.c -lwoskc32 -lssl -lcrypto -I w:\OpenSSL\include\openssl\ -L w:\OpenSSL\lib
  2. gcc main.c -lwoskc32 -lssl -lcrypto -IC w:\OpenSSL\include\openssl\ -L w:\OpenSSL\lib
  3. gcc main.c -lwoskc32 -lssl -lcrypto -Ic w:\OpenSSL\include\openssl\ -L w:\OpenSSL\lib
    然后我觉得可能是因为目录名的问题,修改了一下之后就解决了。

解决

在一开始OpenSSL我是放在默认目录的,也就是nmake install之后它自己放的目录中。
其中include的这些头文件是在OpenSSL根目录中的include/openssl目录中,因为在include下还有一层目录,就导致无法正常载入头文件。


于是我把openssl目录移到OpenSSL的根目录之后问题解决。
其中,有些东西可能会稍微有点变化,但不影响代码。


可以参照一下我的编译指令。

  1. gcc main.c -lwsock32 -lssl -lcrypto -I w:\Win_C\OpenSSL\ -L w:\Win_C\OpenSSL\lib

视频链接

Windows环境找不到OpenSSL库,OpenSSL头文件

Logo

开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!

更多推荐