1) google之后,找到 这个 https://github.com/z24/pitv/tree/master/cross 的脚本,

觉得非常好。 于是准备用来进行编译

2) 安装交叉编译器

sudo apt-get install gcc-arm-linux-gnueabihf
sudo apt-get install g++-arm-linux-gnueabihf

特别需要注意的是,g++一定需要安装。 之前由于没安装,出现了各种费解的错误,差点就放弃了

比如说 明明 expat编译的好好的,却在 configure aria2的时候,硬是找不到。

还有,在最后链接阶段, 出现了 undefined reference  错误

3)http://c-ares.haxx.se/download/c-ares-1.10.0.tar.gz 因为有墙,自动下载不了,需要另外翻墙下载。

4)最后修正的编译脚本。

#!/bin/sh

# This script downloads and builds a static aria2 binary for raspberry pi.

# Copyright  Youjie Zhou <jmpopush@gmail.com>
# All rights reserved. CWD=$(pwd)
export ARCH=arm
export NJOB=
export CPP="/usr/bin/arm-linux-gnueabihf-cpp"
export CC="/usr/bin/arm-linux-gnueabihf-gcc"
export CXX="/usr/bin/arm-linux-gnueabihf-g++"
export TOOL_CC=${CC}
export LD="/usr/bin/arm-linux-gnueabihf-ld"
export AR="/usr/bin/arm-linux-gnueabihf-ar"
export AS="/usr/bin/arm-linux-gnueabihf-as"
export RANLIB="/usr/bin/arm-linux-gnueabihf-ranlib" # Local folder where we install built binaries and libraries.
LOCAL_DIR=$(readlink -f ./local)
mkdir -p ${LOCAL_DIR} # Cross-compiler tools. Latest version can be downloaded at:
# github.com/raspberrypi/tools
TOOL_DIR=/usr
TOOL_BIN_DIR=${TOOL_DIR}/bin PATH=${TOOL_BIN_DIR}:$PATH # zlib
rm -rf zlib-1.2.
#wget http://zlib.net/zlib-1.2.8.tar.gz ./
tar xzf zlib*.tar.gz
cd zlib*/
prefix=${LOCAL_DIR} CC=${TOOL_CC} CFLAGS="-O4" ./configure --static
make -j${NJOB}
make install cd ${CWD} # expat
rm -rf expat-2.1.
#wget http://downloads.sourceforge.net/expat/2.1.0/expat-2.1.0.tar.gz ./
tar xzf expat*.tar.gz
cd expat*/
./configure \
--host=arm-linux-gnueabihf \
--build=${ARCH}-linux \
--enable-shared=no \
--enable-static=yes \
--prefix=${LOCAL_DIR}
make -j${NJOB}
make install cd ${CWD} # c-ares
rm -rf c-ares-1.10.
#wget http://c-ares.haxx.se/download/c-ares-1.10.0.tar.gz ./
tar xzf c-ares*.tar.gz
cd c-ares*/
./configure \
--host=arm-linux-gnueabihf \
--build=${ARCH}-linux \
--enable-shared=no \
--enable-static=yes \
--prefix=${LOCAL_DIR}
make -j${NJOB}
make install cd ${CWD} # aria2
rm -rf aria2-1.18.
#wget http://downloads.sourceforge.net/aria2/aria2-1.18.10.tar.xz ./
tar xJf aria2*.tar.xz
cd aria2*/
./configure \
--host=arm-linux-gnueabihf \
--build=${ARCH}-linux \
--disable-nls \
--disable-ssl \
--disable-epoll \
--without-gnutls \
--without-openssl \
--without-sqlite3 \
--without-libxml2 \
--with-libz --with-libz-prefix=${LOCAL_DIR} \
--with-libexpat --with-libexpat-prefix=${LOCAL_DIR} \
--with-libcares --with-libcares-prefix=${LOCAL_DIR} \
--prefix=${LOCAL_DIR} \
CXXFLAGS="-Os -g" \
CFLAGS="-Os -g" \
LDFLAGS="-L${LOCAL_DIR}/lib" \
PKG_CONFIG_LIBDIR="${LOCAL_DIR}/lib/pkgconfig" \
ARIA2_STATIC=yes
make -j${NJOB}
make install

ubuntu10.04 交叉编译 aria2 总结的更多相关文章

  1. ubuntu10.04编译安装LAMP

    ubuntu10.04编译安装LAMP以及简单wordpress的使用 : http://linuxme.blog.51cto.com/1850814/971631 一.源码安装LAMP 网上有一堆关 ...

  2. ubuntu10.04下修改mysql的datadir的问题

    ubuntu10.04下修改mysql的datadir的问题 转自:http://blog.sina.com.cn/s/blog_4152a9f50100mq5i.html 昨天由于服务器空间告紧,需 ...

  3. ubuntu10.04+win7双系统,重装win7后,恢复grub引导菜单以及命令行引导linux

    我在我的小Y上安装了ubuntu10.04和win7旗舰版的双系统,采用的是grub引导.今天win7不知道哪儿出了问题,windows update更新一直报错,(当然360也是打不上滴)网上查了很 ...

  4. ubuntu10.04编译内核不显示grub菜单解决

    问题描述:        ubuntu10.04 内核版本2.6.32.28编译内核之后版本2.6.37.6,系统在编译完内核之后,不显示grub菜单 参考资料:            http:// ...

  5. ubuntu10.04共享文件夹

    ubuntu10.04共享文件夹 参考http://jingyan.baidu.com/album/9989c746084c70f648ecfe99.html,共享了home文件夹,然后把共享文件夹映 ...

  6. ubuntu10.04版本下android源码的编译

    首先是网址:http://software.intel.com/en-us/blogs/2012/03/06/hands-on-notesbuild-android-x86-ics-4-virtual ...

  7. 【转】Ubuntu10.04上编译Android源码(Build Android source in Ubuntu10.04 Platform)

    原文网址:http://blog.csdn.net/chenyafei617/article/details/6570928 一.Introduction 今天我们就来谈谈如何在Ubuntu平台上面编 ...

  8. Ubuntu server 14.04 交叉编译Unicorn-engine

    Ubuntu server 14.04 交叉编译Unicorn-engine 编译的过程基本上按照的是unicorn/COMPILE-WINDOWS.md描述的进行编译的,不过还是改了一些地方.在Ub ...

  9. u盘安装ubuntu10.04 server.txt

    10.04 先将 ubuntu server 的 iso 放到优盘上,然后在提示无法找到光驱时,按 alt+f2 打开一个新的 console 窗口,将 iso mount 上,具体操作如下: ls ...

随机推荐

  1. 翻译[RFC6238] TOTP: Time-Based One-Time Password Algorithm

    在闲暇时间做了一个TOTP相关的开源项目,在项目初步完成之余,我尝试对[RFC6238]文档进行了翻译,供大家参考与查阅,若有不妥之处,还望各位前辈海涵斧正. [RFC6238] : Time-Bas ...

  2. VS2010/MFC编程入门之三十五(菜单:菜单及CMenu类的使用)

    鸡啄米在上一节中讲的是VS2010的菜单资源,本节主要讲菜单及CMenu类的使用. CMenu类的主要成员函数 MFC为菜单的操作提供了CMenu类,下面鸡啄米就常用的几个成员函数进行简单的介绍. B ...

  3. 25最短路径之Dijkstra算法

    图的最优化问题:最小生成树.最短路径 典型的图应用问题 无向连通加权图的最小生成树 有向/无向加权图的最短路径 四个经典算法 Kruskal算法.Prim算法---------------最小生成树 ...

  4. source的简单操作

    source五部曲 git工作流:建立新功能 更改文件后,提交 点击git工作流完成新功能 点击推送 点击拉取

  5. WebStorm使用快速入门

    WebStorm建立在开源IntelliJ平台之上,JetBrains已经开发和完善了超过15年.其提供了统一的UI,可与许多流行的版本控制系统配合使用,确保在git,GitHub,SVN,Mercu ...

  6. .NET 和 .NET框架概览

    什么是.NET .NET是为简化在第三代因特网的分布式环境下的应用程序的开发,基于开放互联网标准和协议之上,实现异质语言和平台高度交互性而构建的新一代计算和通信平台.其主要由三部分构成:.NET框架. ...

  7. Docker 的 Web 管理工具 DockerFly

    Dockerfly是基于 Docker1.12+ (Docker API 1.24+) 开发出Docker 管理工具,提供里最基本的基于 Docker 的管理功能,目的是能够方便广大Docker初学者 ...

  8. ELK之kibana6.5

    ELK之安装kibana6.5,这里采用rpm安装: https://www.elastic.co/guide/en/kibana/current/rpm.html # wget https://ar ...

  9. jquery插件--问题类(新增&&删除)简易版

    HTML: <!doctype html> <head> <meta charset="utf-8" /> <script src=&qu ...

  10. 关于即来即停app的功能

    Asmallpark软件接口文档说明 编码均采用UTF-8格式传输全部为http,POST请求状态码:200  操作成功    100  服务器异常,稍后再试  404  请求非法  402  数据库 ...