天嵌2440 linux开发环境搭建


学习嵌入式linux驱动开发的第一天,记录开发环境配置过程

  ps:dnw安装太坑了,折腾好几天

1.平台

  vmware workstation pro 15 ,ubunutu-server 18.04 换源为阿里云。

2. 安装编译环境:

sudo apt install build-essential lsb-core lib32ncurses5 

lsb-core 和 lib32ncurses5 与 arm-linux-gcc 的安装有关。

3.配置静态ip:

前提步骤:使用vmware的虚拟网络编辑器将虚拟网卡的dhcp关闭,并设置子网地址和网关。

在主机的网路共享中心,根据虚拟网路编辑器里的信息更改 vmnet8 的属性,配置ip 和网关。

在ubuntu中配置手动 ip:

$ ifconfig #查询网卡
$ sudo vi /etc/netplan/"此处文件名视具体情况而定"

 文件内容修改为下图,具体ip自行拟定:

network:
    ethernets:
        ens33:
            addresses:
            - 192.168.168.168/24 #ubuntu ip 这里的24是固定的,与子网掩码有关
            dhcp4: false
            gateway4: 192.168.168.2 #网关地址
            nameservers:
                addresses:
                - 114.114.114.114 #dns 服务器
                - 8.8.8.8
                - 8.8.4.4
                search:
                - localdomain
            optional: true
    version: 2

:wq 保存并退出

sudo netplan --debug apply

这里有个大坑,如果是$ sudo netplan apply 则报错,不知原因。

 4.配置ssh免密登陆

vim ~/.ssh/authorized_keys

将主机的公钥(id_rsa.pub)内容粘贴进去,重启即可免密登陆。

如果没有 .ssh 这个目录就 mkdir 创建一个。

5.安装dnw

先配置驱动开发环境,为后边编译usb驱动做准备。

查看内核版本:

uname -r
sudo apt install linux-headers-4.15.0-180-generic # 根据具体的版本执行
sudo apt install linux-source-4.15.0

dnw在linux环境下要自己下载编译

仓库地址如下,安装方法见 readme

https://github.com/Chemelon/dnw-linux.git

6.安装minicom(或者直接在主机上使用串口软件)

minicom 配置方法参考:

https://blog.csdn.net/qq_38880380/article/details/77662637

 7.全部安装完成就可以开开心心在vscode里看代码、下载、调试了。

8.补充常用指令

ssh传输文件从本地到服务器:

scp <本地文件名> <用户名>@:<上传保存路径> 
scp  -r <本地文件夹名> <用户名>@:<上传保存路径> 

两个路径交换就是从服务器下载到本地。

编辑环境变量 :

sudo vi ~/.bashrc

在末尾添加 export PATH=要添加到环境的路径:$PATH

然后

source ~/.bashrc

第二部分:

arm-linux-gdb 和 openocd 的安装与使用

2.1 openocd 的安装 

  比较简单,百度有很多文章。也可以直接使用apt直接安装:

sudo apt install openocd

使用:

openocd -f interface/jlink.cfg -f target/samsung_s3c2440.cfg

链接开发板

根据提示信息可能需要指定jlink的频率 在 jlink.cfg 中加入 adapter_khz 6000 即可

如果没有错误信息则 openocd 分别在 localhost 的 6666 4444 3333 监听 tcp telnet gdb 连接

2.2 arm-linux-gdb 安装

  gdb的各种版本的区别可以百度了解一下

从:

https://www.sourceware.org/gdb/download/

下载 gdb 源码

解压后在 gdb 源码目录中使用:

./configure --target=arm-linux --disable-werror --with-expat --prefix=/usr/local/arm-gdb -v

配置 gdb 版本

然后 make && sudo make install

如果缺少 expat 则使用:

sudo apt-get install libexpat1-dev expat

成功安装后在 ~/.bashrc 中添加

export PATH=$PATH:/usr/local/arm-gdb/bin

使用 arm-linux-gdb -v 检查安装是否成功