sudo apt-get install gcc  g++  binutils  patch bzip2  flex  bison  make  autoconf  gettext  texinfo  unzip  sharutils  subversion  libncurses5-dev ncurses-term  zlib1g-dev gawk asciidoc libz-dev git git-man liberror-perl libsigsegv2 mercurial python-iniparse tortoisehg tortoisehg-nautilus python-nautilus build-essential gcc-multilib 

编译buildroot

/opt/buildroot-2012.11./output/toolchain/gcc-4.6./gcc/doc/cppopts.texi:: @itemx must follow @item
make[]: *** [doc/cpp.info] 错误

原因是ubuntu 14.04版本带的texinfo版本过高导致,需要降级

wget http://ftp.gnu.org/gnu/texinfo/texinfo-4.13a.tar.gz
tar -zxvf texinfo-.13a.tar.gz
cd texinfo-4.13
./configure
make
sudo make install

编译mksquash

#cd RT288x_SDK/toolchain/mksquash_lzma-3.2
#make
#make install (copy lzma_alone to /opt/buildroot-gcc463/usr/bin/)

错误1

/usr/bin/ld: mksquashfs.o: undefined reference to symbol 'log10@@GLIBC_2.2.5'
//lib/x86_64-linux-gnu/libm.so.6: error adding symbols: DSO missing from command line
collect2: error: ld returned exit status
make[]: *** [mksquashfs] 错误

上网搜了一下,应该缺少math库的链接导致的,在编译选项中增加-lm可以解决

修改文件RT288x_SDK/toolchain/mksquash_lzma-3.2/squashfs3.2-r2/squashfs-tools/Makefile

mksquashfs: LDLIBS += -lpthread -lunlzma_r -llzma_r -lstdc++ -lm

http://blog.csdn.net/chaehom/article/details/7776047

错误2

uncomp.c:(.text+0x4b):对‘inflateReset’未定义的引用
uncomp.c:(.text+0x8c):对‘inflate’未定义的引用
uncomp.c:(.text+0x180):对‘zError’未定义的引用
/home/yondy/MTK7688_SDK/MediaTek_ApSoC_SDK_4300_20140916/RT288x_SDK/toolchain/mksquash_lzma-3.2/lzma443/C/7zip/Compress/LZMA_C/libunlzma.a(uncomp.o):在函数‘sqlzma_init’中:
uncomp.c:(.text+0x3a3):对‘inflateInit_’未定义的引用
collect2: error: ld returned exit status
make[]: *** [unsquashfs] 错误
make[]:正在离开目录 `/home/yondy/MTK7688_SDK/MediaTek_ApSoC_SDK_4300_20140916/RT288x_SDK/toolchain/mksquash_lzma-3.2/squashfs3.-r2/squashfs-tools'
make: *** [all] 错误

还是修改修改文件RT288x_SDK/toolchain/mksquash_lzma-3.2/squashfs3.2-r2/squashfs-tools/Makefile

在最后面增加-lz选项

unsquashfs: LDLIBS += -lunlzma -lz

编译完成以后,复制到opt下的相应目录

sudo cp ~/MTK7688_SDK/MediaTek_ApSoC_SDK_4300_20140916/RT288x_SDK/toolchain/mksquash_lzma-3.2/lzma443/C/7zip/Compress/LZMA_Alone/lzma_alone /opt/buildroot-gcc463/usr/bin/

source make报错

error while loading shared libraries: libz.so.: cannot open shared object file: No such file or directory

原因是缺少libz.so.1这个库,可以通过ubuntu的apt-file search查找对应的软件包

sudo apt-get install apt-file

之后更新

sudo apt-file update

然后就可以查找了

$ apt-file search libz.so.
lib32z1: /usr/lib32/libz.so.
lib32z1: /usr/lib32/libz.so.1.2.
libx32z1: /usr/libx32/libz.so.
libx32z1: /usr/libx32/libz.so.1.2.
zlib1g: /lib/x86_64-linux-gnu/libz.so.
zlib1g: /lib/x86_64-linux-gnu/libz.so.1.2.

选择安装lib32z1

sudo apt-get install lib32z1

错误

/home/yondy/MTK7688_SDK/MediaTek_ApSoC_SDK_4300_20140916/RT288x_SDK/source/vendors/Ralink/MT7628/mkimage: invalid entry point -n
make[]: *** [image] 错误
make[]:正在离开目录 `/home/yondy/MTK7688_SDK/MediaTek_ApSoC_SDK_4300_20140916/RT288x_SDK/source/vendors/Ralink/MT7628'
make[]: *** [image] 错误
make[]:正在离开目录 `/home/yondy/MTK7688_SDK/MediaTek_ApSoC_SDK_4300_20140916/RT288x_SDK/source/vendors'
make: *** [image] 错误

修改RT288x_SDK/source/vendors/Ralink/***/Makefile

ENTRY=`readelf -h $(ROOTDIR)/$(LINUXDIR)/vmlinux | grep "Entry" | awk '{print $$4}'` ; \

ENTRY=`readelf -h $(ROOTDIR)/$(LINUXDIR)/vmlinux | grep "入口点地址" | awk '{print $$2}'` ; \

主要原因是原始的编译脚本是英文环境下编写的,在中文的环境下,出现匹配异常

Entry Point: 0x8000C120

入口点地址:0x8000C120

http://www.oschina.net/question/1401799_178896

ubuntu 14.04 64位系统编译RT288x_SDK的更多相关文章

  1. 在ubuntu 14.04 64位系统上安装32位库

    转自:http://www.enjoydiy.com/2937.html 有些软件还是依赖32位的库,但是64位的系统已经成为现在的主流.以前的ubuntu可以通过下面的命令安装:           ...

  2. ubuntu 14.04 64位 下 编译安装MySQL 5.7.11

    步骤一: 先去mysql的官方网站 去down 编译源码包 mysql 网址:www.mysql.com downloads  (MySQL Community Server) 下载版本选择  sou ...

  3. ubuntu 14.04 64位安装iNodeClient

    ubuntu 14.04 64位安装iNodeClieng(华三校园客服端) http://pan.baidu.com/s/12dpxk ubuntu 14.04 64bit Install H3C ...

  4. Go在Ubuntu 14.04 64位上的安装过程

    1. 从 https://golang.org/dl/  或  https://studygolang.com/dl 下载最新的发布版本go1.10即go1.10.linux-amd64.tar.gz ...

  5. Ubuntu 14.04(64位)+GTX970+CUDA8.0+Tensorflow配置 (双显卡NVIDIA+Intel集成显卡) ------本内容是长时间的积累,有时间再详细整理

    (后面内容是本人初次玩GPU时,遇到很多坑的问题总结及尝试解决办法.由于买独立的GPU安装会涉及到设备的兼容问题,这里建议还是购买GPU一体机(比如https://item.jd.com/396477 ...

  6. ubuntu 14.04 64位安装bigbluebutton

    BigBlueButton 是一个使用 ActionScript 开发的在线视频会议系统或者是远程教育系统,主要功能包括在线PPT演示.视频交流和语音交流,还可以进行文字交流.举手发言等功能,特别适合 ...

  7. Ubuntu 14.04 64位上安装wps office软件(转http://m.blog.csdn.net/blog/yhc13429826359/24179933)

    废话少说,只给出方法供各位参考!wps for Linux版本已经有两三年没有大的动作,当然其他平台,比如windows,Android,ios上的wps效果还是很赞的说. 下面是我成功安装的步骤: ...

  8. Ubuntu 14.04 64位上安装wps office软件

    版权声明:本文为博主原创文章,未经博主同意不得转载. https://blog.csdn.net/tao_627/article/details/24179933 废话少说,仅仅给出方法供各位參考! ...

  9. Ubuntu 14.04 64位安装Android Studio 和 genymotion (下)

    接上一篇,上回书说到,我们可以进android studio的编辑器了.感觉不错.挺好的,先不说genymotion,先看看你的android项目有没有r文件,项目有没有错误? 如果没有问题的话,下面 ...

随机推荐

  1. Mybatis 插入与批量插入以及多参数批量删除

    实体类: import java.io.Serializable; public class AttachmentTable implements Serializable { private sta ...

  2. HDU 1253 (简单三维广搜) 胜利大逃亡

    奇葩!这么简单的广搜居然爆内存了,而且一直爆,一直爆,Orz 而且我也优化过了的啊,尼玛还是一直爆! 先把代码贴上睡觉去了,明天再来弄 //#define LOCAL #include <ios ...

  3. HDU 1422 重温世界杯

    题目中说只需按照所给顺序,不论起点,输出能连续旅游的最多的城市 就是不论起点这句,我就卡住了.. 看了别人的题解,循环个2n-1次便是把所有的起点都考虑进去了. 更详细的解释在代码的注释里. //#d ...

  4. Repeater上下排序按钮

    aspx代码 <table cellspacing="0" cellpadding="0" width="100%" align=&q ...

  5. T-SQL备忘(5):查看执行计划

    先理解几个概念:表扫描.聚集索引扫描.聚集索引查找.索引扫描.书签查找. [查看执行计划] 在理解概念之前先得知道如何查看执行计划—Ctrl+L.如下图: 注:SQL Server的执行计划是从右向左 ...

  6. 查看造成等待事件的具体SQL语句

    先查看存在的等待事件:col event for a40col WAIT_CLASS format a20select sid,WAIT_CLASS,event,p1,p2,p3,WAIT_TIME, ...

  7. perl环境配置以及Eclipse安装perl开发插件

    简介: 这篇文章将详细介绍 EPIC 组件的安装,EPIC 编辑环境,调试运行环境,着重介绍如何使用 EPIC 来快速.简便.准确地调试 Perl 语言程序,包括对于 Perl 程序的单步执行,断点用 ...

  8. ETL工具的评价

    评价项目 评价结果 备注 支持平台 SUN Solaris.HP-UX.IBM AIX.AS/400.OS/390.Sco UNIX.Linux.Windows 支持数据源  DB2.Informix ...

  9. 使用jQuery Mobile实现新闻浏览器(3)

    在本教程的前两篇文章中,笔者分别向大家介绍了使用jQuery Mobile框架如何去设计手机新闻浏览器,其中实现了一个WEB版本的新闻浏览器,在本教程的最后一篇中,将讲解如何将已实现的web版本的新闻 ...

  10. ulimit 命令

    用途:ulimit用于shell启动进程所占用的资源. 类别:shell内建命令 语法格式:ulimit [-acdfHlmnpsStvw] [size] 参数: -H 设置硬资源限制. -S 设置软 ...