加入星计划,您可以享受以下权益:

  • 创作内容快速变现
  • 行业影响力扩散
  • 作品版权保护
  • 300W+ 专业用户
  • 1.5W+ 优质创作者
  • 5000+ 长期合作伙伴
立即加入
  • 正文
  • 推荐器件
  • 相关推荐
  • 电子产业图谱
申请入驻 产业图谱

技术分享 | RK3568 编译sdk技巧

08/16 09:20
985
阅读需 4 分钟
加入交流群
扫码加入
获取工程师必备礼包
参与热点资讯讨论
我司RK3568对外提供源代码是以sdk的形式提供,包括但不仅限于uboot、kernel、buildroot、debian源码。在编译sdk的过程中往往需要安装大量的第三方安装包,同时也要保证宿主机ubuntu的gcc版本符合当前ubuntu版本的需求,否则可能会因为gcc版本的不一致导致编译失败。

IAC-RK3568-KIT

有些客户需要多个版本的gcc,如果贸然通过apt-get命令安装多个版本gcc,会引起gcc版本冲突,造成环境无法控制,引发比较严重的后果。为了更好的管理gcc的版本,这里就分享一个小技巧,用一些管理工具去控制gcc版本,让多版本gcc切换自如,避免多gcc版本同时存在造成的不可预估的错误。

这里我们以ubuntu20.04为例为大家演示。首先我们通过gcc -v命令查看当前gcc版本(ubuntu16.04以后安装ubuntu会自带相对应版本gcc编译器,无需手动安装)

如图所示

可以看到ubuntu20.04对应的gcc版本为9.4,那么说明当前环境下是gcc 9.4的环境,用gcc命令去编译程序,调用的就是9.4版本的gcc。高版本gcc支持更高级的语法,对于一些老旧的程序而言可能存在问题,所以我们安装另外一个低版本gcc,gcc5.4。

输入命令apt-cache policy gcc-5查看gcc可用版本,这里选择5.4.0,然后用sudo apt-get install gcc-5=5.4.0-6ubuntu1~16.04.12,安装完毕后使用ls /usr/bin/gcc*命令可以查看到当前ubuntu内有两个gcc,分别是gcc-9和gcc-5,说明我们安装gcc5成功,然后就是通过update-alternativers命令去管理这两个gcc。

输入命令:

sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-5 40

sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-9 50

这样就建立了两个gcc的链接,后面的数字是优先级,数字越大,优先级越高,再键入下面的命令用于选择gcc版本sudo update-alternatives --config gcc

如图所示

这里我们选择gcc-5对应的编号1,然后回车即可。最后用gcc -v命令查看一下当前ubuntu gcc版本,发现是gcc5,说明配置成功。

对于多版本gcc的管理,这样的方法能够很好的避免版本冲突造成的问题,同时这里分享的是gcc的版本管理,相同的g++也可这样做。

推荐器件

更多器件
器件型号 数量 器件厂商 器件描述 数据手册 ECAD模型 风险等级 参考价格 更多信息
HCNR201-500E 1 Agilent Technologies Inc Transistor Output Optocoupler, 1-Element, 5000V Isolation,
$5.91 查看
TJA1052IT/5Y 1 NXP Semiconductors TJA1052i - Galvanically isolated high-speed CAN transceiver SOP 16-Pin

ECAD模型

下载ECAD模型
$7.84 查看
M24M02-DRMN6TP 1 STMicroelectronics 2 Mbit serial I<sup>2</sup>C bus EEPROM

ECAD模型

下载ECAD模型
$3.39 查看

相关推荐

电子产业图谱