openssl 升级欧卡国际平台搭建安装编译libwebsocket通信库

欧卡国际平台搭建论坛:haozbbs.com Q1446595067
libwebsocket Ubuntu 16.04中遇到下面报错。
error: ‘TLSv1_2_client_method
官网也碰到同样的问题https://github.com/warmcat/libwebsockets/issues/1098
但是也没有明确给出解决方案,通过尝试发现是因为目前系统自带的openssl库不兼容libwebsocket代码,因此进行重新安装,使用源码安装指定的版本,由于源码安装过程中目录不正确,所以遇到不少问题。这里记录下来。

我使用1.1.0f版本:

wget https://ftp.openssl.org/source/old/1.0.1/openssl-1.0.1f.tar.gz
cd openssl-1.0.1f
tar zxvf openssl-1.1.0f.tar.gz
./config
#./config --prefix=/usr/local --openssldir=/usr/local/openssl
sudo make install
#sudo make install>log.txt

1
2
3
4
5
6
7

通过在make install log打印找到了源码安装的相应的路径位置:
install libcrypto.so.1.1 -> /usr/local/lib64/libcrypto.so.1.1
install libssl.a -> /usr/local/lib64/libssl.a
install ./include/openssl/txt_db.h -> /usr/local/include/openssl/
install apps/openssl -> /usr/local/bin/openssl

因此需要在环境变量加入路径/usr/local/include/openssl 终于没有报那个错误了。
但是link有问题。报:对‘OPENSSL_init_ssl’未定义的引用,这个问题比较坑,因为前面安装的软件对应的一些遗留没有卸载,导致link一些以前错误的版本库,导致问题,因此我手动卸载以前的openssl.

usr/local/include$ sudo rm -fr openssl/
/usr/local$ sudo rm -fr ssl/
/usr/local/bin$ sudo rm openssl
/usr/lib/x86_64-linux-gnu$ sudo rm libssl*
/usr/lib/x86_64-linux-gnu$ sudo rm libcrypto.a

1
2
3
4
5

删除上面后,再次说找不到库,因为cmake cmake中使用find_package(OpenSSL REQUIRED)需要的是下面的目录,但是源码安装的位置不是这样。
OpenSSL include dir: /usr/local/include
OpenSSL libraries: /usr/lib/x86_64-linux-gnu/libssl.so;/usr/lib/x86_64-linux-gnu/libcrypto.so
Searching for OpenSSL executable and dlls
OpenSSL executable: /usr/local/bin/openssl
因为前面删对应的库,因此只能手动复制过去。
/usr/lib/x86_64-linux-gnu$ sudo cp /usr/local/lib64/libssl. ./
sudo cp /usr/local/lib64/libcrypto
./
执行上面的操作就可以找到openssl了:

再次执行libwebsocket的安装过程就可以了,详见https://blog.csdn.net/bvngh3247/article/details/80648584

git clone git://git.libwebsockets.org/libwebsockets
cd libwebsockets
mkdir build
cd build
cmake -DLWS_MAX_SMP=1 -DCMAKE_INSTALL_PREFIX:PATH=/usr -DCMAKE_C_FLAGS=”-fpic” ..
make && sudo make install

1
2
3
4
5
6

这里写图片描述
编译通过。

原文地址:http://blog.51cto.com/13857059/2137579

时间: 2024-07-31 08:07:12

openssl 升级欧卡国际平台搭建安装编译libwebsocket通信库的相关文章

BLAST(2004版)本地化永利国际平台搭建安装与使用,生成PSSM打分矩阵

一.软件永利国际平台搭建安装论坛:haozbbs.com Q1446595067 1.软件下载:该软件目前已更新到2.3.0+(ftp://ftp.ncbi.nlm.nih.gov/blast/executables/blast+/2.3.0/),我使用的是师姐给的2004年2.2.9版(ftp://ftp.ncbi.nlm.nih.gov/blast/executables/release/2.2.9/)大家可以根据自己的需求来下载.两个软件在Dos环境下的命令还是不一样的,我个人感觉2004

cocos2d-x v3.0的window平台搭建和编译成andriod程序

首先添加这个地址到系统环境变量,path 然后打开CMD,输入如下语句 现在就可以创建一个新项目了 这样一个空的cocos2d-x v3.0的项目就创建好了 接下来编译andriod程序 先在系统环境变量中添加一个NDK_ROOT 然后打开cmd 然后就开始编译了 接下来打开ADT中的eclipse 再添加andriod文件夹到工程里 cocos2d-x v3.0的window平台搭建和编译成andriod程序,布布扣,bubuko.com

CentOS7 之 安装编译工具及库文件

一.安装编译工具及库文件 [[email protected] src]# yum -y install make zlib zlib-devel gcc-c++ libtool ?openssl openssl-devel 二.首先要安装 PCRE PCRE 作用是让 Nginx 支持 Rewrite 功能. 1.选定源码目录 [[email protected] src]#cd /usr/local/src 2.下载 [[email protected] src]#wget https://

64位win10系统无法大发彩票平台搭建安装.Net framework3.5的两种解决方法

在Windows10中,当我们大发彩票平台搭建论坛:haozbbs.com Q1446595067安装某些软件的时候会提示"你的电脑上的应用需要使用以下Windows功能:.NET Framework 3.5(包括.NET 2.0和3.0)".这时就需要大家安装该功能.但近日有网友反映在windows10_64位系统电脑上安装Net framework3.5,操作时总是遇到失败的情况.尝试使用"启用于关闭windows功能".控制面板在线安装.使用下载的离线安装包离

centos 7 香港×××平台搭建安装遇到dracut等问题的总结

Linux发行版之香港×××平台搭建论坛:haozbbs.com Q1446595067 前用的是Ubuntu , 乌托邦Linux做的非常友好,无论是安装还是测试,我感觉比windows10还好,仅次于windows7,近期因为测试服务器软件移植需要,需要增加主流的Linux发行平台Redhat一线的平台,因为centos比较流行,就选择了CentOS 7的X86-64版,很早很早的时候,曾经用源代码编译的方式安装过Redhat Linux,经过那么多年的发展,以为再次安装应该很简单了,至少不

Mac 迪士尼平台搭建安装 Homestead本地安装

Homestead Mac迪士尼平台搭建论坛:haozbbs.com Q1446595067 在线安装 Homestead Vagrant Box,这样安装下载会非常慢,可以使用本地文件安装方式 vagrant box add laravel/homestead 1 然后把你的box盒子拖拽到iterm里面 路径会自动补全如下 vagrant box add laravel/homestead /Users/guobao/solf/homestead.box 1 这里写图片描述 查看安装的box

Linux下bc平台搭建安装集群版Redis

之前bc平台搭建[企鹅21717-93408]安装了单机的Redis,这次安装一个Redis集群.集群定义: 多个业务单元一同工作,且每个业务单元都是相同的.集群特点: 当集群中业务单元大于等于1/2个凉了的时候,这个集群就不能再使用了,经过计算,当集群数为3的时候,整体down的几率最低一主一备模式,给每一个业务单元创建一个备用业务单元,原来的业务单元称作master,备用的称作slave.集群和伪集群: 集群:每一个业务单元在单独的服务器上伪集群:所有的业务单元都在同一个服务器上,用端口号来

Nagios监控平台搭建--安装篇

一.服务端安装: 1.在服务端搭建lamp环境 Yum  install -y  httpd  php 2.服务端安装nagios主程序 Useradd  -s /sbin/nologing ./configure  --prefix=/usr/local/nagios  --with-command-group=nagios ./configure时如果发现perl  command not  found时要安装 perl这个包,否则make  all时会报错  yum install  -y

关于h5房卡棋牌平台搭建,如何开发一款游戏

Q1446595067官网:h5.haozibbs.com关于如何开发一款自己的游戏项目(目前只说客户端),就说说自己的个人观点,自己YY的,不喜勿喷.. 首先,要做一款游戏,如果你要做一款有网络的游戏,有用户数据保存的,那么首先就要有一个服务器,然后我们才能基于unity开发的这个客户端去跟服务器通信,(如果是做单机,那么就请忽略这第一步)我们使用unity跟服务器通信这个机制,叫做网络通信,一款游戏刚开始时,会定好准备使用的是什么网络协议,基于什么网络协议,一般来说都是socket通信,然后