linux 交叉编译器作用,Linux下交叉编译器学习
最近需要碰到到Linux下的设备使用,需要使用交叉编译器,故在此记录下碰到的问题,以作经验。
交叉编译器
梗概
交叉编译器听起来很玄乎,实则是类似于gcc的编译器,而且大多数情况下,其使用的命令也和gcc一致,语法一致,即你可以在gcc上编译的文件,在交叉编译器上也可以编译,这是用于编译运行在特定的设备上的程序的编译器,只不过不是在PC上。
安装
你得到的交叉编译器通常是一个压缩包,如果没有后缀名就在后面加上(.tar/.tar.gz),就可以打开压缩包,其编译的程序通常问arm-xxx-linux-gcc,在目录下的bin文件下,理应解压出来就可以在该目录下直接编译,但是在linux下你需要将该目录加入系统变量,否则其不视之为一个命令。
增加系统参数
方法一
我第一次测试的时候使用了简易而不持续的方法,只可以在这个终端下有效。1export PATH=/usr/local/webserver/mysql/bin:$PATH //将当前目录增加到PATH路径中1echo $PATH //打印PATH路径
如果看到如下界面就说明当前路径已经加入到PATH路径中。
/usr/local/webserver/mysql/bin:/usr/local/webserver/mysql/bin/:/usr/kerberos/sbin:/usr/kerberos/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin
方法二1vim /etc/profile
在最后,添加:1export PATH="/usr/local/webserver/mysql/bin:$PATH"
保存,退出,然后运行:1source /etc/profile
不报错则成功。
Gcc多文件编译1gcc getop.c calcDemo.c -o output.out
静态库生成(.a文件)
编译c文件爱你,生成目标文件
使用gcc/arm-xxx-linux文件编译c文件,得到.o文件1gcc -c file1.c file2.c
这样就得到了file1.o file2.o文件
归档目标文件,生成静态库1ar crv libmylib.a file1.o file2.o
我们就得到了libmylib.a,这就是我们需要的静态库。
上述命令中 crv 是 ar的命令选项:c 如果需要生成新的库文件,不要警告
r 代替库中现有的文件或者插入新的文件
v 输出详细信息
通过 ar t libmylib.a 可以查看 libmylib.a 中包含的目标文件。
可以通过 ar –help 查看更多帮助。
注意:我们要生成的库的文件名必须形如 libxxx.a ,这样我们在链接这个库时,就可以用 -lxxx。
反过来讲,当我们告诉编译器 -lxxx时,编译器就会在指定的目录中搜索 libxxx.a 或是 libxxx.so
使用静态库文件1gcc test.c -L. -lmylib
将会生成a.out,通过 ./a.out 可以运行该程序。说明我们的静态库能正常工作。
上面的命令中 -L. 告诉 gcc 搜索链接库时包含当前路径, -lmylib 告诉 gcc 生成可执行程序时要链接 libmylib.a。
linux 交叉编译器作用,Linux下交叉编译器学习相关推荐
- linux boot分区作用,Linux和Uboot下eMMC boot分区读写
关键词:eMMC boot.PARTITION_CONFIG.force_ro等. 1. eMMC的分区 大部分eMMC都有类似如下的分区,其中BOOT.RPMB和UDA一般是默认存在的,gpp分区需 ...
- Linux的inode作用,Linux下inode知识
[TOC] 背景 今天复习Linux命令,到df的时候发现了一个之前忽略的东西.也就是 -i 这个选项,列出文件系统分区的inode信息.这个inode,是个什么东西? inode是用来做什么的 in ...
- 在linux中hdparm作用,Linux下hdparm硬盘测速
在Linux下可以使用hdparm对硬盘进行测试或者查看硬盘的相关信息.这样你就知道了硬盘读写速度. Hdparm功能说明:显示与设定硬盘的参数. 语 法:hdparm [-CfghiIqtTvyYZ ...
- linux proc目录作用,Linux下的proc目录详解
Linux下的proc目录详解 [复制链接] 文章结构: 1.什么是proc目录 2. 初识proc目录 3. 从proc窥看系统详情 1.什么是proc目录 proc是Linux系统下一个很重要的目 ...
- linux 进程的作用,linux的几个进程的作用
author:skate time:2011/08/10 linux的几个进程的作用 1. kswapd0 Linux uses kswapd for virtual memory managemen ...
- linux中where作用,linux基础命令——whereis命令的使用介绍
摘要: linux基础命令中的whereis命令用于查找文件.该指令会在特定目录中查找符合条件的文件.这些文件应属于原始代码.二进制文件,或是帮助文件.该指令只能用于查找二进制文件.源代码文件和 ...
- linux libpath的作用,linux – LD_LIBRARY_PATH似乎不起作用
我正在尝试编译测试文件: gcc -o test test.c -lg2c 但我得到错误: /usr/bin/ld: cannot find -lg2c 如果我使用: gcc -o test test ...
- linux uid gid 作用,Linux uid和gid
Linux uid和gid教程 我们在登陆 Linux 系统时,虽然输入的是自己的用户名和密码,但其实 Linux 并不认识你的用户名称,它只认识用户名对应的 ID 号(也就是一串数字).Linux ...
- linux rcp命令作用,Linux之间传送文件之rcp命令
1. rcp命令简介 rcp代表"remote file copy"(远程文件拷贝).两台Linux主机之间复制文件可以使用它.rcp支持复制文件,也支持复制目录. 注意: rcp ...
- linux挂载硬盘作用,Linux(挂载) mount umount作用
在Linux中,如果你要使用储存设备 (Mo.硬盘.光驱等) ,就得先将它挂上 (Mount),而当储 存设备挂上了之后,就可以把它当成一个目录来进行访问.挂上一个设备使用mount命令. 在使用mo ...
最新文章
- ASP.NET 应用中大文件上传研究
- OA软件实施中三个不能做的
- JQuery中的样式操作
- Web前台传对象字符串到后台并让后台反序列化对象字符串的方法(ASP.NET) json对象和字符串的转换
- 【SpringClould】Spring Cloud Eureka源码分析
- matlab正交表,正交表的构造方法及Matlab实现
- 记某单机游戏的一次内购破解
- Windows搭建基于EClipse的CppUTest单元测试环境
- vivo计算机的隐藏功能教程,Vivo手机的5个隐藏功能,真的很实用,一定要打开
- Android动画了解—转场/过渡(Transition) 动画
- 开关电源补偿环路设计(2):实践部分-例题
- 字节跳动面试流程以及注意事项,各大厂具有通点,看看不吃亏!
- vulnhub:inferno-1.1
- OrgChart组织架构图控件
- 中小民营企业劳动关系和谐浅议
- Python求数组的自然间断点
- 诊断数据库ODX—数据库框架(基于ISO22901详解)
- vba单元格颜色设置
- MacOS设置终端代理
- 视频监控换代升级,5G+AI助力视频监控的超高清化发展
热门文章
- RT-Thread配置SPI-Flash(W25Q256)
- php大马2022亲测可用,绕过waf无加密版本
- Navicat安装(一篇通解)
- mac Navicat安装提示’已损坏‘,解决方案
- 如何解决VC 应用程序无法启动,因为应用程序的并行配置不正确 sxstrace.exe问题...
- mysql读mdf_mdf文件如何导入MySQL数据库?
- win10 同时多用户远程桌面连接-RDPWrap-v1.6.2-support-21H2-19044.1949
- android动画特效,安卓——之Animation动画特效
- SPSS 数据的统计分析
- 出入机房计算机无登记表,三峡大学机房维护管理制度