一、下载arm-linux-gcc 5.4.0包 下载(百度云)链接:https://pan.baidu.com/s/1AeqzkboWkJDJjU9HxtXhrA 提取码:uzup ---- 二、...nandycool-virtual-machine:/usr/local/arm# echo $PATH 若有路径 /usr/local/arm/5.4.0/bin: 表示安装成功 ---- 七、最后输入arm-linux-gcc...root@nandycool-virtual-machine:/usr/local/arm# arm-linux-gcc -v 版本信息及版本号如下: ---- 最后就可以进行对应源文件的编译了、执行了...编译命令:arm-linux-gcc -o hello hello.c (gcc编译器中用的是:gcc -o hello hello.c) 运行命令:.
Ubuntu 14.04 LTS下使用arm-linux-gcc交叉编译OpenCV 2.4.9 当前两个手头有两个项目都是都需要在ARM板中使用OpenCV,所以交叉编译必不可少。...2、笔者使用的所有压缩包下载地址都已分享,且笔者也将其全部打包分享在百度云,百度云下载地址如下。...因为OpenCV依赖于很多库函数,如果在编译OpenCV之前没有编译依赖项,就会导致编译后的OpenCV无法使用。...pkg-config能够把这些头文件和库文件的位置指出来,给编译器使用。...以后编译arm板的OpenCV代码时,要使用上面的编译指令。其中` 符号不是逗号,而是1 左边的那个符号。
arm-linux-gcc_4.3.2, uboot-2012.04.01, linux-3.4.2)其中uboot-2012.04.01来源于毕业班,其下载烧写功能远不如uboot-1.1.6,因此我更偏向于使用老版的
在使用交叉编译的情况下,这些工具将根据它编译的目标而命名。...例如,要使用交叉工具链为ARM机器编译简单的Hello World程序,你可以运行如下所示的命令: 使用如下命令编译并测试这个代码: $ arm-linux-gcc -o hello hello.c 五...、arm-linux-gcc: arm-linux-gcc是基于ARM目标机的交叉编译软件,前面几年安装arm-linux-gcc交叉编译软件对与一个初级嵌入式工程师来说特别棘手,因为它需要安装多个软件包...六、arm-linux-gcc和arm-elf-gcc: arm-elf-gcc跟arm-linux-gcc一样,也是是基于ARM目标机的交叉编译软件。...arm-linux-gcc使用GNU的Glibc,而arm-elf-gcc一般使用 uClibc/uC-libc或者使用REDHAT专门为嵌入式系统的开发的C库newlib。
怎么使用指针?...步骤三 我们使用指针并且对其进行取值,然后移动指针,在test1中添加如下代码,完成所述要求 /*第三步:使用指针:1)取值 2)移动指针*/ printf("*pi =0x%x\n",*pi...我们可以使用通配符,来解决这些问题。...B = xxx # B的值使用到时才确定 对于延时变量使用“=”表示。...它只有在使用到的时候才确定,在定义/等于时并没有 确定下来。 想使用变量的时候使用“$”来引用,如果不想看到命令是,可以在命令的前面加上”@”符号,就不会显示命令本身。
S3C2440@ARM920T芯片上跑的程序,所以不能使用这个编译器,需要使用arm-linux-gcc交叉编译器。...2.arm-linux-gcc的安装 arm-linux-gcc是ARM官方基于Linux平台的arm编译器,其特点有: 开源免费 支持的ARM芯片多 功能强大,稳定 2.1.下载arm-linux-gcc...执行arm-linux-gcc,查看版本,主要是检查工具链是否可以正常运行: ?...安装完成后再次查看gcc版本,检测是否成功: 3.arm-linux-gcc的使用 arm-none-linux-gnueabi-gcc和之前的gcc使用无太大差异,示例如下。...4.嵌入式开发中目标文件的链接 在使用交叉编译工具链时,最重要的过程是链接过程: 简单的程序链接可以使用一些参数指定; 复杂的程序链接需要使用链接文件.ld指定。
交叉编译器采用arm-linux-gcc 4.5.1版本。...如果想要主进程通过代码控制播放器完成指定一些播放操作,就可以使用从模式播放,在从模式下可以通过管道与mplayer进行通信,完成视频播放加载、暂停、停止、快进、快退等功能。 2....移植libmad库 默认情况下Mplayer采用自带的mp3lib库来进行mp3解码,但是ARM系列的cpu,一般都没浮点运算单元,而mplayer的mp3解码默认使用的mp3lib是浮点运算库,arm...LIBMAD提供24-bit的PCM 输出,完全是定点计算,非常适合没有浮点支持的平台上使用。使用 libmad 提供的一系列 API,就可以非常简单地实现 MP3数据解码工作。...或者直接使用命令修改: sed -i 's/-fforce-mem/ /g' Makefile 查找文档中的-fforce-mem,然后替换成空。
来实现创建Makefile文件 注意:命令行前必须加TAB键 例如:将两个文件led.c和crt0.S汇编文件,制作一个Makefile文件 1 1 led.bin : crt0.S led.c 2 2 arm-linux-gcc...-c -o crt0.o crt0.c 3 3 arm-linux-gcc -c -o led.o led.c 4 4 arm-linux-ld -Ttext 0x00000000 -g crt0.o...clean: 8 8 rm -f led_elf led.dis led.bin *.o led.bin : crt0.S led.c 指的是依赖关系,led.bin是目标文件,:后面是依赖文件 arm-linux-gcc...-c -o led.o led.c :编译不链接 arm-linux-gcc -o led led.c :编译以及链接 arm-linux-ld 连接选项 -Ttext...0x00000000 :指代码段头地址为0x00000000 -T链接脚本 :指使用链接脚本来进行更复杂的地址设置
Uboot 交叉编译器的安装 安装包 --> /home/tarena/workdir/arm-linux-gcc 解压 $ tar xvf arm-cortex_a9-eabi-4.7-eglibc-...设置环境变量 将bin目录添加到.bashrc文件中PATH环境变量中 $ vim ~/.bashrc 在PATH后面添加/home/tarena/workdir/arm-linux-gcc/arm-linux-gcc...源码 $ cd /home/tarena/workdir/uboot 解压 Uboot 源码 $ tar xvf uboot.tar.bz2 $ cd uboot 将uboot项目源码配置成当前开发版使用...$ make x6818_config $ make 将编译得到 ubootpak.bin,复制到 win 使用烧录软件将 ubootpak.bin 烧录到tf 将tf插入开发版 修改提示符 $ vi...config (可选)配置内核模块 $ make menuconfig 编译 Linux 内核 $ make 编译得到的内核镜像 Image 在 arch/arm/boot/ 目录下 uboot 引导内核 使用的是
在linux系统中,常见的使用方法有两种,如下: gcc -o out in1 in2 //gcc编译以及链接(对in1文件和in2文件进行编译生成...// gcc编译不链接(对in1文件和in2文件文件进行编译生成out.o文件,“-c”:表示只生成*.o文件) 若在arm板里运行,就需要在linux系统中使用...arm-linux-gcc交叉编译才行: arm-linux-gcc -o out in1 in2 //gcc编译以及链接(对in1文件和...in2文件进行编译生成out.bin文件,“-o”:表示生成可执行文件) arm-linux-gcc -c out in1 in2 //
/common/g++-unix.conf) # modifications to g++.conf QMAKE_CC = /work/arm-linux-gcc...1.2.9 添加环境变量 为了方便使用qmake命令,可以将bin目录加入到系统的环境变量PATH中。...mainwindow.h win_1.h window_1 mainwindow.cpp mainwindow.ui win_1.cpp win_1.ui window_1.pro ② 使用...该脚本只是用来方便移植使用,只需要在移植的时候执行一次,以后就不需要再执行。 内容如下: #!...图1-8 Windows下的字体 1.3.6 开发板运行效果 图1-9 运行效果图 图1-10 运行效果图 图1-11 1.3.7 鼠标设置方法 如果输入源不想使用触摸屏,可以直接使用USB鼠标代替
*.o *.elf *.bin download_to_nand: #下载到nand flash oflash 0 1 0 0 0 $(TARGET).bin 3.3.烧写程序 使用...-c $(TARGET).c $(CFLAGS) -o $(TARGET).o start.o:start.s arm-linux-gcc -c start.s $(CFLAGS) -o start.o...-c $(TARGET).c $(CFLAGS) -o $(TARGET).o start.o:start.s arm-linux-gcc -c start.s $(CFLAGS) -o start.o...在C语言方面,掌握了: 在启动文件中汇编是如何转入C语言的:BL调用main函数; 调用函数需要大量的使用栈,体现出启动时设置栈顶指针SP的重要性; 使用C语言指针访问寄存器,使用C语言位操作语法改变寄存器数据...在开发工具方面,掌握了: arm-linux-gcc系列工具和makefile的使用;
本篇介绍ARM Linux下OpenCV的移植和简单使用。...有兴趣购买的朋友,可以去他们的淘宝店购买: https://s.click.taobao.com/X8mza8w 2.2.软件 1) Uboot使用上一篇的,不需要改动。...所以需要在上述编译指令中添加头文件路径,-I (注意是大写的i) 给arm-linux-gcc添加自定义的头文件的路径 arm-linux-gcc opencvtest.c -o opencvtest...原因是虽然指明了头文件,但是在链接的时候找不到对应的库,需要再指明opencv依赖的库所在的地方,-L 给arm-linux-gcc添加额外的搜索库的路径 arm-linux-gcc opencvtest.c...为了方便大家使用,我将新生成的交叉工具链(含有OpenCV头文件)也放进去了,只需要解压使用即可。
提示错误: arm-linux-gcc:Command not found PATH里有/usr/oca/arm/bin,但是make的时候,就是找不到 arm-linux-gcc 原因: export...PATH=$PATH:/usr/local/arm/bin是设置当前用户的PATH,而sudo执行make的时候,使用的是超级用户权限,那也就使用了超级用户的PATH(但是这个PATH里,并没有/usr...提示错误: /home/book/work/busybox-1.7.0/scripts/gcc-version.sh: line 11: arm-linux-gcc: command not found.../home/book/work/busybox-1.7.0/scripts/gcc-version.sh: line 11: arm-linux-gcc: command not found CC...applets/applets.o /bin/sh: 1: arm-linux-gcc: not found scripts/Makefile.build:192: recipe for target
搭建交叉编译环境 进行裸机编程之前,需要先搭建交叉编译环境,安装arm-linux-gcc交叉编译器,交叉编译后的程序才能在开发板上运行。 什么叫交叉编译?...在Linux用户目录下创建一个目录: mkdir work/arm-linux-gcc -p 2. 将交叉编译器拷贝到Linux系统共享目录。再解压到arm-linux-gcc目录下。...tar xvf arm-linux-gcc-4.5.1-v6-vfp-20120301.tgz -C /home/wbyq/work/arm-linux-gcc/ 3....输出环境变量的值: [wbyq@wbyq ~]$ echo $PATH /home/wbyq/work/arm-linux-gcc/opt/FriendlyARM/toolschain/4.5.1/bin...学习基本用法 [wbyq@wbyq linux_2021]$ arm-linux-gcc app.c [wbyq@wbyq linux_2021]$ ls a.out app.c [wbyq@wbyq
来实现创建Makefile文件 注意:命令行前必须加TAB键 例如:将两个文件led.c和crt0.S汇编文件,制作一个Makefile文件 1 1 led.bin : crt0.S led.c 2 2 arm-linux-gcc...-c -o crt0.o crt0.c 3 3 arm-linux-gcc -c -o led.o led.c 4 4 arm-linux-ld -Ttext 0x00000000 -g crt0.o...clean: 8 8 rm -f led_elf led.dis led.bin *.o led.bin : crt0.S led.c 指的是依赖关系,led.bin是目标文件,:后面是依赖文件 arm-linux-gcc...-c -o led.o led.c :编译不链接 arm-linux-gcc -o led led.c :编译以及链接 arm-linux-ld 连接选项 -Ttext...0x00000000 指代码段头地址为0x00000000 -T链接脚本 指使用链接脚本来进行更复杂的地址设置,包括了代码段
方法一: 我们都知道Ubuntu有一个专门用来安装软件的工具apt,我们可以用它来全自动安装arm-linux-gcc。 ...此方法安装的是最新版的,但是此方法需要翻墙,否则99%会失败,这就是为什么网上大多都用压缩包安装的原因: 首先Ctrl+Alt+T弹出终端,使用如下命令进行arm-linux-gcc的安装: sudo... 如果要卸载时使用如下命令进行移除,arm-linux-gcc的卸载: sudo apt-get remove gcc-arm-linux-gnueabihf arm-linux-g++的卸载:...tar命令解压安装包到当前目录下,即在Terminal中输入以下命令:(前面的sudo表示使用root权限执行该命令) sudo tar -xjvf /tmp/arm-linux-gcc-3.4.5-glibc...source命令重新加载生效该配置文件 source /etc/profile 9.检验是否安装成功,在 Terminal 输入以下命令输出版本信息: arm-linux-gcc -v 10.
当然也可以使用xx=$(shell pwd)这种特别的形式来简单使用shell。...比如: all: @CC=arm-linux-gcc @echo $(CC) 上面的echo是打不出来东西的。...CC=arm-linux-gcc all: @echo $(CC) 上面的echo是OK的,而且多半都是这么写。...4、Makefile变量和shell变量是两个不同的东西,并且为了避免Makefile变量和shell变量冲突,引用Makefile变量最好使用$(Makefile_Var),引用shell变量时最好使用...5、Makefile的多字符变量只能使用$(VAR)或${VAR}来引用,不能使用$VAR,$VAR会被解释成$(V)AR.
使用gcc的原因:功能强大、稳定、开源免费。 1)gcc -v查看gcc的版本,从而验证了gcc编译器正常。 不论你使用哪一个版本的gcc,只有后面能够正常编译就可以了。...在X86平台编辑和和编译器arm-linux-gcc编译ARM架构的程序, 两者属于不同的架构平台,从而属于交叉编译模式。...编译器 推荐使用arm-linux-gcc arm-linux-gcc是基于linux平台的arm编译器。它是开源免费的编译器。...arm-linux-gcc功能强大、稳定、支持的arm芯片众多、更新速度快。 入门误区:使用ads、MDK ads(停止更新)、MDK,是windows平台的编译器,功能较弱。...002节_source insight代码查看工具的使用 编辑器 推荐使用windows平台的source insight和notepad。
领取专属 10元无门槛券
手把手带您无忧上云