Libcurl交叉编译
配置configure
./configure --build=arm --host=mipsel-openwrt-linux --prefix=/usr/local/curl
执行make
make
取得su权限
su
开始安装
make install
踩坑总结
如果执行sudo make install,会出现以下错误
[ihid@VM_11_5_centos curl-7.61.0]$ sudo make install
[sudo] password for ihid:
Making install in lib
make[1]: Entering directory `/home/ihid/curl-7.61.0/lib'
make[2]: Entering directory `/home/ihid/curl-7.61.0/lib'
/usr/bin/mkdir -p '/usr/local/curl/lib'
/bin/sh ../libtool --mode=install /usr/bin/install -c libcurl.la '/usr/local/curl/lib'
libtool: install: /usr/bin/install -c .libs/libcurl.so.4.5.0 /usr/local/curl/lib/libcurl.so.4.5.0
libtool: install: (cd /usr/local/curl/lib && { ln -s -f libcurl.so.4.5.0 libcurl.so.4 || { rm -f libcurl.so.4 && ln -s libcurl.so.4.5.0 libcurl.so.4; }; })
libtool: install: (cd /usr/local/curl/lib && { ln -s -f libcurl.so.4.5.0 libcurl.so || { rm -f libcurl.so && ln -s libcurl.so.4.5.0 libcurl.so; }; })
libtool: install: /usr/bin/install -c .libs/libcurl.lai /usr/local/curl/lib/libcurl.la
libtool: install: /usr/bin/install -c .libs/libcurl.a /usr/local/curl/lib/libcurl.a
libtool: install: chmod 644 /usr/local/curl/lib/libcurl.a
libtool: install: mipsel-openwrt-linux-ranlib /usr/local/curl/lib/libcurl.a
../libtool: line 1818: mipsel-openwrt-linux-ranlib: command not found
make[2]: *** [install-libLTLIBRARIES] Error 127
make[2]: Leaving directory `/home/ihid/curl-7.61.0/lib'
make[1]: *** [install-am] Error 2
make[1]: Leaving directory `/home/ihid/curl-7.61.0/lib'
make: *** [install-recursive] Error 1
在终端检查,发现arm-linux-ranlib可以在系统的PATH中找到,因为已经把交叉编译链添加到了PATH中。
那为什么还提示说找不到arm-linux-ranlib呢?
原因如下:
- 添加交叉编译器目录到PATH中是放在~/.bash_profile里的,这是用户的配置文件
- 执行make install时,加了sudo前缀,变成了root的工作环境和root的权限。
根据以上两点,make install是在root下做的,而arm-linux-ranlib在用户的工作环境中才能找到。所以产生了这里的错误。
那我既要取得root权限,又要具有当前用户的工作环境,该怎么办呢?
解决如下:
- 方法一:执行make install之前,先用下su命令取得root权限。然后再执行make install。
- 方法二:修改交叉编译链环境变量为全局
su 和 sudo 的区别:
- 共同点:都是root用户的权限;
- 不同点:su仅仅取得root权限,工作环境不变,还是在切换之前用户的工作环境;sudo是完全取得root的权限和root的工作环境。
Libcurl交叉编译的更多相关文章
- Ubuntu16.04 ARM平台移植libcurl curl-7.63.0
libcurl是免费的轻量级的客户端网络库,支持DICT, FILE, FTP, FTPS, Gopher, HTTP, HTTPS, IMAP, IMAPS, LDAP, LDAPS,POP3, P ...
- 交叉编译总结 libosscore.a libcurl.a libmysqlclient.a
把工程文件交叉编译到arm上运行,着实花费了一番功夫. 首先遇到的错误是 X uses VFP register arguments, B does not 百度了一下,发现是硬浮点和软浮点的问题,原 ...
- libcurl 支持 openssl 交叉编译 mips rt5350
By admin | 11月18日 0 Comment Advertisement 历经半个月终于把libcurl库编译出来,参考网上很多博客,最终把自己要的库编译出来. 首先说明一下,我要这个库的目 ...
- 在Linux下使用MinGW静态交叉编译带有zlib的libcurl(包括交叉编译openssl,即--cross-compile-prefix=i686-w64-mingw32- mingw)
在Linux下使用MinGW静态交叉编译带有zlib的libcurl libcurl是一个跨平台的.易用的.强大的网络库.在大部分Linux发行版中都有编译好的二进制包可供使用,Mac系统更是将其作为 ...
- 使用mingw 对libcURL,openSSL,zLib交叉编译
使用mingw 对libcURL,openSSL,zLib交叉编译 将三个库解压到同一目录下 比如取目录名为 "source" 的目录 提前安装active-perl 配置 ...
- libcurl的封装,支持同步异步请求,支持多线程下载,支持https
最近在做一个项目,需要用到http get post等 需求分析需要做到同步和异步,异步请求的返回以可选的回调通知的方式进行. 本人以Linux为例,一步一步的来实现. 配置并且编译libcurl我以 ...
- 海思平台交叉编译curl支持SSL功能
1.准备工具 1).交叉编译工具 2).下载libcurl和openssl源代码,我使用的是(openssl-1.0.2o.tar,curl-7.59.0.tar) 3).查看cpu详细 ~ # ca ...
- edgex0.7.1_1.0.1的X86编译和交叉编译
一. X86编译 1. 安装zeromq库 根据setup script安装: wget https://github.com/zeromq/libzmq/releases/download/v4.2 ...
- Linux主机上使用交叉编译移植u-boot到树莓派
0环境 Linux主机OS:Ubuntu14.04 64位,运行在wmware workstation 10虚拟机 树莓派版本:raspberry pi 2 B型. 树莓派OS: Debian Jes ...
随机推荐
- collectd的python插件(redis)
https://blog.dbrgn.ch/2017/3/10/write-a-collectd-python-plugin/ redis_info.conf <LoadPlugin pytho ...
- pt-heartbeat(percona toolkit)
pt-heartbeat是用来监控主从延迟的一款percona工具,现在我们大部分的MySQL架构还是基于主从复制,例如MHA,MMM,keepalived等解决方案.而主从环境的话,我们很关心的就是 ...
- Excel 函数使用
字符串 20180613 转为日期 2018-06-13,单元格内输入如下公式 =DATE(LEFT(),MID(,),RIGHT()) IF 函数内的或.与 =IF(AND(A=B,C=D),&q ...
- 【解决方法】jdb2/sdb1-8 io使用过高
机器上面跑的mysql,使用的ssd告诉硬盘,但是 使用iotop发现这个进程 jdb2/sdb1-8 使用率高达80%多, 后来发现是因为参数 sync_binlog=1 导致,事务写入太频繁,改为 ...
- 优秀 Java 程序员写代码的风格
往 期 精 彩 推 荐 [1]Java Web技术经验总结 [2]15个顶级Java多线程面试题及答案,快来看看吧 [3]面试官最喜欢问的十道java面试题 [4]从零讲JAVA ,给你一条清晰 ...
- 全新Chrome Devtool Performance使用指南
运行时性能表现(runtime performance)指的是当你的页面在浏览器运行时的性能表现,而不是在下载页面的时候的表现.这篇指南将会告诉你怎么用Chrome DevToos Performan ...
- sql2005 和 mysql 定时备份批处理
保存为sqlbak.bat 目录我直接放winrar 的根目录了 或者拷贝一个winrar.exe 具体目录随意. 然后添加计划任务个人的话建议一周或者一天 虚拟主机等 建议每周或者每月 @echo ...
- [由于远程方关闭传输流,身份验证失败]一次处理支付接口bug记录
因公司系统升级,出现突然有些银行卡不能支付的情况,最开始排查发现是第三方平台接口返回有问题: 返回如下: 从11月7日下午开始一直联系第三方,第三方开始排查,一直说是数据格式有问题. 修改格式以后问题 ...
- Yii中的relations方法
以Blog示例: 重点看注释 User类中的relations方法如下 <span style="font-size:18px;background-color: rgb(255, 2 ...
- 阅读优秀的JAVA模板引擎Beetl的使用说明有感
由于项目需要,对包括Beetl在内的JAVA模板引擎技术进行了学习 Beetl是由国人李家智(昵称闲大赋)开发的一款高性能JAVA模板引擎,对标产品是Freemaker 感慨于近几年国内开源项目的蓬勃 ...