海思移植 APR(Apache Portable Runtime)
0.前言
Apache可移植运行时(Apache Portable Runtime,简称APR)是ApacheHTTP服务器的支持库,提供了一组映射到下层操作系统的API。如果操作系统不支持某个特定的功能,APR将提供一个模拟的实现。这样程序员使用APR编写真正可在不同平台上移植的程序。最初,APR是作为Apache HTTP服务器的一部分而存在的,但是Apache软件基金会将其延伸成一个单独的项目。其他的应用程序可以使用APR来实现平台无关性 (baidu)。
1.源码下载
APR包括三个源码包,分别为APR 1.7.0 , APR-util 1.6.1 ,APR iconv 1.2.2
源码下载链接https://apr.apache.org/download.cgi
2.编译
2.1 APR 1.7.0编译
./configure CC=arm-himix200-linux-gcc --host=arm-himix200-linux --prefix=$PWD/_install ac_cv_file__dev_zero=yes ac_cv_func_setpgrp_void=yes apr_cv_tcp_nodelay_with_cork=yes
make;make install
错误1:如果不加ac_cv_file__dev_zero=yes 会报如下错误
checking for /dev/zero... configure: error: cannot check for file existence when cross compiling
错误2:屏蔽configure 屏蔽掉$RM "$cfgfile"
rm: cannot remove 'libtoolT': No such file or directory
错误3:解决方案把该定义屏蔽掉即可。
./include/apr_want.h:94:8: error: redefinition of 'struct iovec'
错误4:进入tools下重新编译gcc -Wall -O2 -DCROSS_COMPILE gen_test_char.c -s -o gen_test_char
tools/gen_test_char > include/private/apr_escape_test_char.h
/bin/sh: tools/gen_test_char: 无法执行二进制文件
make[1]: *** [include/private/apr_escape_test_char.h] Error 126
接下来就可以完成编译;然后make install,生成目录如下:
bin build-1 include lib
2.2 APR iconv 1.2.2编译
./configure CC=arm-himix200-linux-gcc --host=arm-himix200-linux --prefix=$PWD/_instal --with-apr=$PWD/../apr-1.7.0/_install
make;make install
这个比较顺利,没有报什么错误。
2.3 APR-util 1.6.1编译
该库需要上面两个安装目录
./configure CC=arm-himix200-linux-gcc --host=arm-himix200-linux --prefix=$PWD/_instal --with-apr=$PWD/../apr-1.7.0/_install --with-apr-iconv=$PWD/../apr-iconv-1.2.2/_install --with-expat=$PWD/../libexpat-master/expat/_install
make;make install
错误1:需要安装expat库 --with-expat=库路径
xml/apr_xml.c:35:19: fatal error: expat.h: No such file or directory#include <expat.h>
2.4 libexpat编译
由于APR-util需要用到该库,所以也把这个加上。
源码:https://github.com/libexpat/libexpat
编译:
./buildconf.sh ./configure CC=arm-himix200-linux-gcc --host=arm-himix200-linux --prefix=$PWD/_installmake; make install
海思移植 APR(Apache Portable Runtime)相关推荐
- APR(Apache Portable Run-time Librarie)介绍
Apache Portable Run-time Librarie 在早期的Apache版本中,应用程序本身必须能够处理各种具体操作系统平台的细节,并针对不同的平台调用不同的处理函数.随着Apache ...
- Tomcat5.5报错:Apache Portable Runtime was not found
一.发现问题 在启动Tomcat5.5的时候发现console中有一句话The Apache Portable Runtime which allows The optimal performance ...
- 海思移植Live555
海思移植Live555 移植Live555 移植openssl 移植Live555 下载live555 live下载地址 下载完毕后移植到虚拟机上解压 解压完毕后我们可以得到live这个文件夹 我们要 ...
- 海思移植opencv+车辆检测
1.确保ubuntu能上网 2.安装cmake 代码: 全选 sudo apt-get install cmake-gui 3.下载opencv2.4.9 Linux版源码,不要用最新的3.0.0 h ...
- 四、基于海思芯片:从算法到移植 生成海思wk文件并进行成果展示
一.基于海思芯片:从算法到移植 darknet框架下训练yolov3 二.基于海思芯片:从算法到移植 darknet框架下yolov3转为caffe框架下 三.基于海思芯片:从算法到移植 c ...
- 海思3559移植yolov3
此人博客上有完整教程: https://blog.csdn.net/avideointerfaces/article/category/8762084 海思3559移植yolov3 海思AI芯片(Hi ...
- 海思Hi3559A平台移植 opencv4.0.0
原文:https://blog.csdn.net/xclshwd/article/details/85257117 海思Hi3559A平台移植 opencv4.0.0 2018年12月26日 09:5 ...
- python交叉编译_交叉编译Python3.6.2,使用海思arm-hisiv200-linux-gcc,移植到arm开发板上...
最近在学习Python,感觉使用Python可以快速的写出程序,比之前使用的C语言快多了,能省出很多时间.多学一点知识有更多的选择.本职工作是嵌入式开发,学习了Python后想移植到开发板上,尝试嵌入 ...
- 海思芯片怎么使用tde给qt加速_基于Hisi芯片,交叉编译、移植Qt4.8.6(可旋转)
一.安装海思编译链 安装海思编译链(如arm-hisiv300-linux-*),不做赘述. 二.下载Qt4.8.6源码包 源码包:qt-everywhere-opensource-src-4.8.6 ...
- 海思芯片怎么使用tde给qt加速_3519移植Qt适配附件
[实例简介] 修改Qt5.5.1linuxfb插件代码,适配海思3519平台 [实例截图] [核心代码] 3519Qt移植.tar ├── 3519Qt绉绘 │ ├── linuxfb │ ...
最新文章
- C#中TextBox只能输入数字的代码
- C# SQLiteHelper类似SqlHelper类实现存取Sqlite数据库
- python循环语句-python循环语句(第十节)
- oracle fuser lk,oracle错误集锦
- 适合程序员的四大字体
- python怎么打印字典_在python中打印字典的原始输入顺序
- 因为我的名字特殊大家都是用异样的眼光在看着我 04
- 浅析AES和RSA加密算法的区别和适用场景
- Java虚拟机专题之垃圾回收(读书笔记)
- windows平台下压缩tar.gz
- 奇怪,为什么在主页上面只列出最近的随笔,而文章呢?
- 软件工程 网络工程,职业方向是怎样的?选择之前一定要了解!
- 贪心算法 看这一篇就够了
- PB高拍仪无纸化软件方案
- 什么是自媒体、自媒体平台???
- java 流 flush,在Java流中flush()的目的是什么?
- 输入水仙花数的位数 c语言,水仙花数,水仙花数c语言
- 终于明白了AOP中的方面是什么意思
- 区块链倪老师:区块链思维——序章
- 2022-04-07 西安 javaSE(04) 方法可变参数、重载、递归,数组、冒泡排序、二分查找、动态操作,二维数组、jvm内存区域划分
热门文章
- Codevs3332 数列
- Ubuntu16.04如何设置静态IP地址
- Linux下七种文件类型、文件属性及其查看方法
- Matplotlib饼状图
- python知识图谱智能问答_机器人之基于知识图谱的智能问答机器人
- 台式电脑计算机打开的快捷键,台式机u盘装系统按f几|台式电脑u盘装系统快捷键是哪个...
- 联想台式计算机 不启动u盘,联想电脑不能u盘启动怎么办
- Stemwin如何显示背景透明的图片
- win10红警2黑屏_win10怎么玩红警2尤里的复仇及其mod的方法汇总,mod打不开、卡顿的通用解决方案...
- 3、在hilens_kit安装ros后,运行小车导航