文章目录
- 包含openssl
- 1、libsockets版本4.0.0(可直接从gitee上获取比较快)
- 2、 需要提供openssl,所以openssl需要先交叉编译通过。
- 3、在libsockets中创建新的目录如`build`(cmake没有现成的clean功能,所以创建新目录后,如需重新cmake,则可直接清空新目录内容就好)
- 4、 若需要其他功能支持,需要将对应的库进行编译,如需要libevent时候,则需要先交叉编译通过。
- 5、libsockets默认一些功能不开启,如libevent的支持,若需要开启则需要在源码目录中CMakeLists.txt中修改。(修改完成后,需要清空刚才cmake过的目录,重新cmake,否则不生效)
- 6、在build 目录中直接cmake的配置如下
- 7、参数说明
- 不含openssl
包含openssl
1、libsockets版本4.0.0(可直接从gitee上获取比较快)
2、 需要提供openssl,所以openssl需要先交叉编译通过。
3、在libsockets中创建新的目录如build
(cmake没有现成的clean功能,所以创建新目录后,如需重新cmake,则可直接清空新目录内容就好)
4、 若需要其他功能支持,需要将对应的库进行编译,如需要libevent时候,则需要先交叉编译通过。
5、libsockets默认一些功能不开启,如libevent的支持,若需要开启则需要在源码目录中CMakeLists.txt中修改。(修改完成后,需要清空刚才cmake过的目录,重新cmake,否则不生效)
6、在build 目录中直接cmake的配置如下
cmake .. -DLIBEVENT_INCLUDE_DIRS=/home/flying/workspace/lib/libevent/install_201/include/ -DLIBEVENT_LIBRARIES="/home/flying/workspace/lib/libevent/install_201/lib/libevent.so" -DCMAKE_SYSTEM_NAME=Linux -DCMAKE_C_COMPILER=arm-linux-gnueabihf-gcc -DLWS_OPENSSL_INCLUDE_DIRS="/home/flying/workspace/lib/openssl/bulid/include/" -DLWS_OPENSSL_LIBRARIES="/home/flying/workspace/lib/openssl/bulid/lib/libcrypto.so;/home/flying/workspace/lib/openssl/bulid/lib/libssl.so;"
7、参数说明
-DCMAKE_SYSTEM_NAME 指定系统为Linux
-DCMAKE_C_COMPILER 指定C语言编译器如交叉编译器未加入到环境变量时,需要使用绝对路径
-DCMAKE_CXX_COMPILER 指定c++编译器
-DLWS_OPENSSL_INCLUDE_DIRS 指定Openssl头文件目录
-DLWS_OPENSSL_LIBRARIES 指定Openssl动态库
-DLIBEVENT_INCLUDE_DIRS 指定libevent头文件目录
-DLIBEVENT_LIBRARIES 指定libevent动态链接库
不含openssl
下载、解压、修改CMakefile.txt如下
创建 build
文件夹夹
进入build 文件夹内 执行 并指定安装路径
cmake .. -DLIBEVENT_INCLUDE_DIRS=/home/flying/workspace/lib/libevent/install_201/include/ -DLIBEVENT_LIBRARIES="/home/flying/workspace/lib/libevent/install_201/lib/libevent.so" -DCMAKE_SYSTEM_NAME=Linux -DCMAKE_C_COMPILER=arm-linux-gnueabihf-gcc
make
make DESTDIR=~/workspace/lib/libwebsockets/install_20x/ install