错误原因参考:https://blog.csdn.net/weixin_43252521/article/details/124409151
进入到 Nginx 解压包目录/usr/local/Nginx-1.20.1 目录中,查看 Nginx 的目录。
本文介绍了如何将OpenCV库移植到ARM平台上,包括编译工具链、依赖库、配置方法以及运行时注意事项。
说到 Nginx ,可能大家最先想到的就是其负载均衡以及反向代理的功能。没错,这也是当前使用 Nginx 最频繁的两个功能,但是 Nginx 可不仅仅只有这两个功能,其作用还是挺大的,本系列博客就来慢慢解开 Nginx 神秘的面纱。
arm平台curl交叉编译方法。 基于curl + openssl + zlib 的方式组建arm上的https客户端,其中curl作为http客户端,openssl提供https支持,zlib负责处理gzip压缩的http报文。
[html] view plain copy
1、环境 CentOS6.5 JDK1.7 Nginx1.7.4 2、环境准备 先安装必须的工具 yum -y install gcc gcc-c++ autoconf automake make
首先服务的概念,对于linux服务器来说,其中大多数的软件都算是服务,比如nginx、mysql、Jenkins等等。下面我们就来学习一下linux中有关服务的一些内容。
一、基础 1、HTTP压缩是指: Web服务器和浏览器之间压缩传输的”文本内容“的方法。 HTTP采用通用的压缩算法,比如gzip来压缩HTML,Javascript, CSS文件。 能大大减少网络传输的数据量,提高了用户显示网页的速度。当然,同时会增加一点点服务器的开销。 本文从HTTP协议的角度,来理解HTTP压缩这个概念。 2、HTTP内容编码和HTTP压缩的关联 HTTP压缩其实是HTTP内容编码的一种,在HTTP协议中,允许对内容(也就是Body部分)进行编码,可以采用gzip这样的编码。 从而
虚拟机环境:Ubuntu16.04.3 编译安装bluez-libs-3.36 下载 (http://www.bluez.org/download/) ./configure --prefix=/opt/bluez/bluez-libs-3.36 --host=arm-linux --target=arm-linux CC=arm-linux-gnueabihf-gcc make sudo make install 编译安装expat-2.5.0 下载 (https://github.com/libe
最开始写C语言代码的时候,人们使用vi,记事本等软件写代码,写完了之后用GCC编译,然后运行编译结果,就是二进制文件。python也可以这样做,用记事本写完代码,保存成如test.py的文件后,通过命令python test.py可以运行这一文件。最初的C语言代码都是通过这种方式写的。但是人们很快发现了一个问题,就是这么弄太麻烦了,编写用vi,运行得切出去用shell,出错了再切回vi改代码。这要是编写、运行、调试都能在同一个窗口里进行,再来点语法检查,高亮,颜色,代码提示,那写代码的效率不就高多了吗?所以就有了Microsoft Visual C++等写代码工具,这些工具除了提供方便的文本编辑功能,还能够连接到编译器(C/C++)、解释器(java,python,R),把编译器和解释器的运行结果显示在自己的界面上,这些工具被称为IDE(集成开发环境)。正因为编译器,解释器不是它的组成部分,pycharm中每个项目都要指定一个interpreter才能运行。即某个路径下的python.exe。其他的IDE也都要指定运行环境。
前面两篇文章,讲到了云服务的选购,以及域名的注册备案,那么我们项目上线的准备工作其实已经完成一半了。下一步其实就是在服务器上搭建我们的运行环境了。每个人的项目可能运行在不一样的环境,所以在这里我不准备一一介绍,我在这里以我的环境作为示例,我的个人博客后端服务器采用Node.js + MongoDB,所以环境搭建:Node.js + pm2 + MongoDB,前端我采用了Angular框架,因为前后端端口不一致,发起请求会跨域,所以我安装了nginx服务器,将前端项目打包后放在nginx的80端口,每次前端发起请求请求MongoDB数据库的数据, 就通过nginx反向代理,代理到4001端口,去取到服务端的数据,然后返还给前端进行页面的渲染。
Nginx 是 C语言 开发,建议在 Linux 上运行,当然,也可以安装 Windows 版本,本篇则使用 CentOS 7 作为安装环境。
网上关于python的交叉编译的文章很多,但是关于python第三库的交叉编译的文章就比较少了,而且很多标题是第三方库的交叉编译,但是实际上用到的都是不需要交叉编译就能用的库,可参考性不强,最近关于python及其第三方库的交叉编译也踩了不少坑,记录一下!
# A fatal error has beendetected by the Java Runtime Environment:
工作中需要自行编译一个Python二进制程序,并尽量减少该程序依赖的库文件,使之在相同CPU架构上有更良好的可移植性。先找了下网上的资料,都不太详尽,经过探索最终还是成功了,这里记录一下过程以备忘。
gzip是GNU zip的缩写,它是一个GNU自由软件的文件压缩程序,也经常用来表示gzip这种文件格式。软件的作者是Jean-loup Gailly和Mark Adler。1992年10月31日第一次公开发布,版本号是0.1,目前的稳定版本是1.2.4。
https://blog.csdn.net/ctbinzi/article/details/5929800
5 make make altinstall //此处不能用install安装,因为install不区分版本,会出现多版本混乱的问题
它基于 xmake 提供的运行时,但却是一个完整独立的包管理程序,相比 vcpkg/homebrew 此类包管理器,xrepo 能够同时提供更多平台和架构的 C/C++ 包。
如果你有定义himix200的工具链文件也可以使用CMAKE_TOOLCHAIN_FILE指定工具链文件来完成交叉编译 参见 https://gitee.com/l0km/faceapi/blob/master/faceapi-rpc-cpp/dependencies/cmake/arm-himix200-linux.toolchain.cmake
参考 【错误记录】编译 Linux 内核报错 ( fatal error: openssl/opensslv.h: No such file or directory ) 博客 , 编译内核时 , 由于没有安装 OpenSSL 报错 ;
一、安装 Zlib 1、下载最新版本 Zlib Zlib 官方网站:http://www.zlib.net/ # cd /usr/local/src # wget -c http://www.zlib.net/zlib-1.2.3.tar.gz 2、编译安装 Zlib # tar xzvf zlib-1.2.3.tar.gz # cd zlib-1.2.3 # ./configure --prefix=/usr/local/zlib # make # make install 这样,就把 zlib 编译安装在 /usr/local/zilib 中了。 二、安装 OpenSSL 1、下载最新版本 OpenSSL OpenSSL 的官方网站:http://www.openssl.org # cd /usr/local/src # wget -c http://www.openssl.org/source/openssl-0.9.8d.tar.gz 2、编译安装 OpenSSL # tar xzvf openssl-0.9.8d.tar.gz # cd openssl-0.9.8d # ./Configure --prefix=/usr/local/openssl # make # make test(这一步很重要哦!是进行 SSL加密协议的完整测试,如果出现错误就要一定先找出哪里的原因,否则一味继续可能导致最终 SSH 不能使用,后果很严重哦!) # make install 三、安装 OpenSSH 1、下载最新版本 OpenSSH OpenSSH 的官方网站:http://www.openssh.com # cd /usr/local/src # wget -c ftp://ftp.it.net.au/mirrors/OpenBSD/OpenSSH/portable/openssh-4.5p1.tar.gz 2、编译安装 OpenSSH # tar xzvf openssh-4.5p1.tar.gz # cd openssh-4.5p1 # ./configure --prefix=/usr --sysconfdir=/etc/ssh --with-pam --with-zlib=/usr/local/zlib --with-ssl-dir=/usr/local/openssl --with-md5-passwords (注意,如果 configure 时提示 PAM 有错误,那一般是因为系统中没有安装 pam-devel RPM 包,找到安装光盘,安装 pam-devel 就可以解决啦) # make # make install 这样就完成了整个安装 SSH 的工作,在安装完成后,我们还需要修改一下 OpenSSH 的配置文件进一步提升安全性。通过以上步骤完成的安装工作,OpenSSH 的配置文件在 /etc/ssh 下,其中 SSH Server 的配置文件是 sshd_config。 # vi /etc/ssh/sshd_config 找到: CODE: #Protocol 2,1修改为: Protocol 2这样就禁用了 ssh v1 协议,只使用更安全的 ssh v2 协议。 X11Forwarding yes修改为: X11Forwarding no禁用 X11 转发。 修改后保存退出。 ● 生成ssh服务管理脚本 进入ssh解压目录 #cd /contrib/redhat #cp sshd.init /etc/init.d/sshd #chmod +x /etc/init.d/sshd #chkconfig --add sshd 最后,启动 SSH 服务使修改生效: # /etc/init.d/sshd restart 重启后确认一下当前的 OpenSSH 和 OpenSSL是否正确: # ssh -v 如果看到了新的版本号就没问题啦!
由于上面已经安装了nginx,所以我们先卸载nginx。再重新上传nginx包,解压下载。有输入提示时,输入Y即可
xmake 是一个基于 Lua 的轻量级跨平台构建工具,使用 xmake.lua 维护项目构建,相比 makefile/CMakeLists.txt,配置语法更加简洁直观,对新手非常友好,短时间内就能快速入门,能够让用户把更多的精力集中在实际的项目开发上。
很多想学嵌入式linux 的同学经常问我,我不会linux系统,怎么学习嵌入式linux开发,于是他们就花费了大量的精力和时间去研究学习桌面版本linux系统的使用,什么redhat 、federo,、ubuntu等等都用过,如何配置linux,linux的各种使用命令都背的滚瓜烂熟,linux各种服务器的配置,还原备份各种操作非常熟悉,以为这样就学会了嵌入式linux开发。其实这是一个学习嵌入式Linux开发的误区。
前些天,移动端的同事跑来问:某些API需要传输大数据,Nginx服务器能否支持Gzip请求?一方面可以节省移动端流量;另一方面还可以加快传输速度,提升用户体验。对于Apache来说,利用SetInputFilter,可以很轻松的实现这个功能,那么Nginx如何做呢?
了解Linux应用程序基础,学习如何查询RPM软件包信息了解安装、升级、卸载、RPM软件包 ,如何与运用yum仓库,学习源代码编译安装
xmake集成了内置的远程包依赖管理,用户只需要简单地在项目中添加自己所需要的包和版本,即可自动下载和集成对应的包到项目中,并且实现编译和链接。
原创链接:https://www.cnblogs.com/zzqit/p/10087680.html
Ubuntu下编译安装apache需要预先编译安装多个依赖件,包括:apr, apr-util,pcre,zlib-devel,等,相当麻烦,记录于此备查.
执行pip install时出现: pip is configured with locations that require TLS/SSL, however the ssl module in Python is not available.
2)Openssl版本:1.0.1e-15.el6,由于升级到openssh_6.7p1,需要OpenSSL的版本在0.9.8f以上,所以这里就不用升级openssl了。直接升级openssh就行了。
并发量小,用户使用的少,所以在低并发的情况下,一个jar包启动应用就够了,然后内部tomcat返回内容给用户。
第一步:从http://nginx.org/download/上下载相应的版本(或者wget http://nginx.org/download/nginx-1.5.9.tar.gz直接在Linux上用命令下载)
如果linux系统没有预先安装 gcc 等编译软件可以用yum源安装。安装nginx,首先需要安装依赖模块pcre、zlib、openssl。
导语: 安装软件 rpm yum 源码安装 卸载软件 一、rpm介绍 rpm软件包名称: 软件名称 版本号(主版本、次版本、修订号) 操作系统 -----90%的规律 #有依赖关系,不能自动解决依赖关系。 举例:openssh-6.6.1p1-31.el7.x86_64.rpm 数字前面的是名称 数字是版本号:第一位主版本号,第二位次版本号,带横杠的是修订号, el几---操作系统的版本。 ====== #用rpm安装需要考虑如下信息: 1.需要考虑系统的版本
Java 这门语言与生俱来的显著特性就是“一次编译,到处运行”,这种功能得益于 JVM 平台的支持,Java 程序通常通过将其打包为 JAR 或 WAR 包,并依赖 JVM 和 Servlet 容器来运行。其底层运行时 JVM 采用 JIT(即时编译)模式来执行程序代码,JVM 会在运行时进行编译优化和动态执行代码,这通常会导致较高的内存占用。这样的好处是采用 JIT 可以热更新和热部署程序,并且 JVM 可以在运行期间对程序进行动态分析,来实时优化程序以达到最好的性能状态。
如果出现错误: can’t decompress data; zlib not available 说明缺少依赖:zlib。
它的语法简洁易上手,对新手友好,即使完全不会 lua 也能够快速入门,并且完全无任何依赖,轻量,跨平台。
本文主要介绍了linux上安装tess4j项目,通过具体的解释说明,让我们从中学到linux上安装tess4j项目的精髓所在,让我们对Linux内部原理越来越熟悉,希望大家能够在以后的学习中更加快速的弄明白其中的关键。便于更好的操作。
说明:本次配置使用root用户进行操作,故在代码中未使用sudo语句,请使用非root用户留意
源码地址为:https://www.openssl.org/source/old/;当前最新版本为 1.1.0f,https://www.openssl.org/source/old/1.1.0/openssl-1.1.0f.tar.gz
版权声明:本文为博主原创文章,欢迎扩散,扩散请务必注明出处。
这几天因为安全漏洞扫描,扫描到时大量OpenSSH漏洞,需安全加固,主要是升级版本,以前对于升级打补丁总是不在意的,可这次中间遇到一些小问题整理成册,希望对大家有点帮助,以下是具体实现方法:
本文大部分参考网上其他教程,是实际操作后回过头来的一些总结,希望可以对正在部署项目的你有所帮助。
领取专属 10元无门槛券
手把手带您无忧上云