linux下交叉编译器制作

目前我用的交叉编译器是TQ2440配套光盘中制作好了的,解压后需要如下配置:

1.对于Fedora系统:修改/etc/profile文件,在其中添加交叉编译器的环境变量的设置。

对于Ubuntu系统,修改/etc/enviroment文件

2.我用的是Fedora系统,修改PATH值,在其后添加上交叉编译器的路径,添加pathmunge /opt/EmbedSky/4.3.3/bin

对于Ubuntu系统,修改PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/opt/EmbedSky/4.3.3/bin"

3.source /etc/profile使其生效,注意:只是当前终端生效,建议重启系统。

在开发过程中,经常遇到-/bin/sh:xx(命令) not found的错误,一般情况下这种错误是缺少动态库造成的。在编译时也是需要相应的动态库的。

下面以libjpeg为例说明如何构建自己的交叉编译器。

1.首先下载libjpeg源码:libjpeg-turbo-1.2.1.tar.gz

2.解压源码:tar xzf libjpeg-turbo-1.2.1.tar.gz

3.进入源码目录:cd libjpeg-turbo-1.2.1

4.新建tmp目录,用于存放编译好的libjpeg文件:mkdir tmp

5.配置:./configure --prefix=/work/projects/13.libjpeg/libjpeg-turbo-1.2.1/tmp/ --host=arm-linux,其中--prefix用于指定编译到的目录,--host用于指定编译器

6.编译:make

7.安装:make install,安装完成后,在刚才创建的tmp目录下有bin、incluide、lib等目录

8.将编译出来的include目录下的所有文件拷贝到交叉编译工具的include目录下,我的是/opt/EmbedSky/4.3.3/arm-none-linux-gnueabi/libc/usr/include/目录

9.将编译出来的lib目录下的所有so文件拷贝到lib目录下,我的是/opt/EmbedSky/4.3.3/arm-none-linux-gnueabi/libc/armv4t/lib/目录

10.将编译出来的lib目录下的所有so文件拷贝到文件系统中,因为应用程序运行时需要相应的库。

linux下交叉编译器制作,布布扣,bubuko.com

时间: 2024-08-02 02:46:02

linux下交叉编译器制作的相关文章

GCC编译器原理(一)------交叉编译器制作和GCC组件及命令

1.1 交叉编译器制作 默认安装的 GCC 编译系统所产生的代码适用于本机,即运行 GCC 的机器,但也可将 GCC 安装成能够生成其他的机器代码.安装一些必须的模块,就可产生多种目标机器代码,而且可通过命令行选择一种希望使用的代码. 1.1.1 目标机 从网站 http://gcc.gnu.org/install/specific.html 可以得到有可能的最新目标机列表.在此站点中可找到更新过的目标机列表,以及向各种目标机进行移植的最新信息.关于每种可能的目标机都有一个简短介绍,可以查找说明

linux 下动态链接库的制作与使用

linux 下动态链接库的制作与使用 linux 下动态链接库的制作与使用动态链接库*.so的编译与使用- -动态库*.so在linux下用c和c++编程时经常会碰到,最近在网站找了几篇文章介绍动态库的编译和链接,总算搞懂了这个之前一直不太了解得东东,这里做个笔记,也为其它正为动态库链接库而苦恼的兄弟们提供一点帮助.1.动态库的编译下面通过一个例子来介绍如何生成一个动态库.这里有一个头文件:so_test.h,三个.c文件:test_a.c.test_b.c.test_c.c,我们将这几个文件编

Linux ARM交叉编译器设定

在Host PC (x86)下编译ARM的应用时需要使用ARM交叉编译器, 虽然可以从头编译相关工具,但是实在是太麻烦了,而且一般都没有这必要. 目前可以使用的已编译好的二进制文件主要是由Mentor Graphics提供. 主要步骤如下: 1. 下载相关的软件包 $ wget https://sourcery.mentor.com/GNUToolchain/package12813/public/arm-none-linux-gnueabi/arm-2014.05-29-arm-none-li

基于嵌入式Linux下GCC编译器__sync_sub_and_fetch_4错误的解决心得

******************************************************************************************************************************************************* 作者:EasyWave                                                                                      

linux下使用checkinstall 制作zabbix的rpm包

目前,想要在所有的client端安装zabbix client,因为想要指定预定义的路径,通过zabbix资源制作rpm包,制作rpm包的方式有多种 一种是:rombuild的方式,主要是编写spec的文件 一种是:checkinstall 开源的 一种是:fpm,ruby写的,也是开源的 学习通过checkinstall 的方式,制作rpm包 1.下载安装 wget http://asic-linux.com.mx/~izto/checkinstall/files/source/checkin

Ubuntu 12.04 64bit GCC交叉编译器制作 原创

                                                                                                                             做嵌入式开发少不了跨平台操作,因此也少不了使用交叉编译器,我们可以自己动手制作属于我们自己的交叉编译器,其中可以定制一些东西,可以使之支持浮点运算等特殊要求.以下以适合嵌入式开发最常用的ARM平台的ARMGCC交叉编译器为例进行讲解:其他平台步骤和方

交叉编译器制作 - 升级版教程

大三那会写的一篇关于交叉编译工具制作的教程. crosstool-ng-1.20.0制作交叉编译工具 由于之前那篇实在太简单,很多东西都没有涉及介绍到.因此: 目录: ----1.配置选项详解 ----2.如何build最好最快 ----3.由交叉编译器引发的思考 1.配置选项详解 版权声明:本文为博主原创文章,未经博主允许不得转载.

ubuntu14.04下交叉编译器的安装

今天打算换个工作环境,在ubuntu下装交叉编译器,可谓一波三折.最后总算是装好了. 首先参照一下这位仁兄的博客http://blog.csdn.net/silleyj/article/details/28931469 文中他的已经可以使用了,而我的还是不行,又百度了一下,发现还是少装了一个东西. 在ubuntu下执行这个命令sudo apt-get install lsb-core      这样就可以使用了. arm-linux-gcc  -v  查看当前交叉编译器版本 OK !

Linux 下安装包制作

一 Linux安装文件 Linux常见的安装为tar,zip,gz,rpm,deb,bin等.我们可以简单的分为三类, 第一:打包或压缩文件tar,zip,gz等,一般解压后即可,或者解压后运行sh文件: 第二:对应的有管理工具的deb,rpm等,通常的这类安装文件可以通过第三方的命令行或UI来简单的安装,例如Ubuntu中的apt来安装deb,Redhat中的yum来安装rpm: 第三:像.bin类,其实就是把sh和zip打包为bin,或把sh和rpm打包为bin等,当在命令行运行bin安装文