OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 2528|回复: 0

Manjaro系统下开发环境搭建

[复制链接]

4

主题

14

帖子

0

精华

初级会员

Rank: 2

积分
187
金钱
187
注册时间
2020-11-11
在线时间
27 小时
发表于 2022-7-27 17:14:39 | 显示全部楼层 |阅读模式
1. 串口配置
将用户名加入uucp用户组内,这样普通用户就可以使用串口了。直接使用以下命令添加即可:
  1. sudo usermod -aG uucp $USER
复制代码
2. 安装依赖
这是我在编译内核、buildroot、uboot时需要安装的依赖,要根据具体报错信息安装。
  1. sudo pacman -Sy uboot-tools cpio
复制代码
3. 交叉编译工具
与Ubuntu系统下安装步骤相同。
4. stm32wrapper4dbg 工具安装
与Ubuntu系统下安装步骤相同。
5. 安装NFS服务
首先安装NFS服务,命令如下:
  1. sudo pacman -Sy nfs-utils rpcbind
复制代码
新建文件夹nfs,在 nfs 配置文件/etc/exports中最后添加
  1. /home/lituo/linux/nfs *(rw,sync,no_root_squash)
复制代码
然后重启服务
  1. //开机启动
  2. systemctl enable rpcbind.service
  3. systemctl enable nfs-server.service
  4. //启动服务
  5. systemctl start rpcbind.service
  6. systemctl start nfs-server.service
  7. //查看服务
  8. systemctl status rpcbind
  9. systemctl status nfs-server
复制代码
在一些嵌入式场景, 有的开发板还只支持nfsv2, 导致挂载失败。
修改 sudo vim /etc/nfs.conf 文件,添加 vers2=y,然后重启 sudo systemctl restart nfs-server.service
使用命令sudo cat /proc/fs/nfsd/versions可查看支持的版本,输出如下
+2 +3 +4 +4.1 +4.2
6. 安装tftp服务
  1. sudo pacman -Sy tftp-hpa
复制代码
和 NFS 一样, TFTP 也需要一个文件夹来存放文件,在用户目录下新建一个目录,命令如下:
  1. mkdir /home/lituo/linux/tftpboot
  2. chmod 777 /home/lituo/linux/tftpboot
复制代码
这样我就在我的电脑上创建了一个名为 tftpboot 的目录(文件夹),路径为/home/lituo/linux/tftpboot。注意!我们要给 tftpboot 文件夹权限,否则的话 uboot 不能从 tftpboot 文件夹里面下载文件。
最后配置 tftp,新建文件/etc/hosts.allow,如果没有的话自行创建,然后在里面输入如下内容:
  1. tftpd: ALL
  2. in.tftpd: ALL
复制代码
修改sudo vim /etc/conf.d/tftpd文件中的目录为实际目录
  1. TFTPD_ARGS="-l -c -s /home/lituo/linux/tftpboot"
复制代码
完了以后启动 tftp 服务,命令如下:
  1. sudo systemctl enable tftpd.service
  2. sudo systemctl start tftpd.service
  3. sudo systemctl status tftpd.service
  4. sudo systemctl restart tftpd.service
复制代码
7. 遇到的问题
uboot编译时出现如下报错:
  1. /usr/bin/ld: scripts/dtc/dtc-parser.tab.o:(.bss+0x10): multiple definition of `yylloc'; scripts/dtc/dtc-lexer.lex.o:(.bss+0x0): first defined here
  2. collect2: 错误:ld 返回 1
  3. make[2]: *** [scripts/Makefile.host:106:scripts/dtc/dtc] 错误 1
  4. make[1]: *** [scripts/Makefile.build:432:scripts/dtc] 错误 2
  5. make: *** [Makefile:554:scripts] 错误 2
复制代码
意思是yylloc首先在scripts/dtc/dtc-lexer.lex.c中定义,文件scripts/dtc/dtc-parser.tab.c:中重定义了,
解决办法是将scripts/dtc/dtc-parser.tab.c文件中大约1293行改为extern YYLTYPE yylloc即可。
配置过程简单记录一下。下面是我的系统信息
Screenshot_20220728_003743.png
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2024-11-22 13:18

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表