建议安装纯linux系统
友情提示,安装前备份重要资料
建议:ubuntu,fedora
建议安装必要的linux软件
网络安装:只需一个命令即可
网络安装会自动检查软件依赖性
ubuntu:sudo apt-get install 软件名
fedora: sudo yum install 软件名
本地安装:
下载软件包,手动安装,不会检查软件依赖性
ubuntu:sudo dpkg -i 软件名.deb
fedora:sudo rpm -i 软件名.rpm
切记:建议使用网络安装
ckermit
嵌入式开发中,经常要使用串口来进行debugging,在windows下有系统自带的超级终端,SecurCRT等软件;而在linux下呢,则可以使用kermit.闲话略过不表,下面将说明如何在ubuntu/Debian系统中安装并配置kermit.
安装:sudo apt-get install ckermit
配置:用户自己的kermit配置文档在/home/user_name/.mykermrc文档中,如
果这个文档不存在,则kermit会使用/etc/kermit/kermrc进行初始化。编辑
/home/user_name/.kermrc,使用命令:$vim ~/.kermrc
输入下面的内容:
“
set line /dev/ttyS0 /注意这里是串口挂在设备文件名,根据自己情况修改/
set speed 115200
set carrier-watch off
set handshake none
set flow-control none
robust
set file type bin
set file name lit
set rec pack 1000
set send pack 1000
set window 5
c
“`“ 启动:
在系统cmd line输入“kermit”即可启动并连接到串口。
虚线之后出现的就是debugging信息。这里能自动连接到串口是因
为最后一行的“c”,如果没有最后一行,则kermit启动后不会自动
连接到串口,需要手动在kermit的提示符下输入命令“c”或者
“connect”(不包括双引号),这样才能连接到串口。
在串口连接的状态下,按下“Ctrl+\”再输入“c”即可返回到
kermit:如果要再次连接至串口,输入“c”或者”connect”(不包括双引号)即可:
“`log file:
实际使用中经常要记录log file,以方便进行debugging。
windows下使用“超级终端”或者“SecurCRT”通过简单的设置就能
够记录log file。其实在kermit中,通过执行简单的命令,也可
以记录log file.
a.保存log file:
在kermit正常运行时,按下“Ctrl+\”并输入”c”,返回到
kermit的命令提示符,此时输入“log session”即可在当前目
录下生成一个session.log的文档,kermit接收到的信息会保
存在此文档中,并且会随着串口信息的更新而更新,如果要再次
连接至串口,键入”c”即可。
nfs
“
1.上位机安装NFS网络服务
sudo apt-get install nfs-kernel-server
2.上位机配置NFS网络服务,添加共享目录
sudo vim /etc/exports 文件最后添加:
/opt/rootfs *(rw,sync,no_root_squash)
保存退出
说明:
/opt/rootfs:指定一个共享目录
*:任何一个IP客户端都可以来访问
rw:客户端可以对共享目录中的文件进行读和写
sync:客户端如果对文件进行修改了,要同步更新到服务器上
no_root_squash:普通用户也可以访问
注意:可以指定多个共享目录
3.上位机创建共享目录,添加一个应用程序
mkdir /opt/rootfs
cd /opt/rootfs/
vim pthread.c
arm-cortex_a9-linux-gnueabi-gcc -o pthread pthread.c -lpthread
4.上位机重启NFS网络服务
sudo service nfs-kernel-server restart
5.下位机的linux系统只需访问上位机的NFS网络服务
指定的共享目录/opt/rootfs即可:
首先确保下位机的linux系统已经启动完毕
只需在下位机执行一下命令即可:
ifconfig //发现网卡eth0压根就没有IP地址
ifconfig eth0 192.168.1.110
ping 192.168.1.8 //下位机ping上位机,测试
mount -t nfs -o nolock 192.168.1.8:/opt/rootfs /mnt
说明:
mount:挂接命令,让下位机去找上位机的NFS共享目录
-t nfs:采用NFS网络服务
-o nolock:对共享目录里的文件访问无需锁定
192.168.1.8:/opt/rootfs:指定下位机将来要找的上位机和上位机指定的共享目录
/mnt:属于下位机linux系统的一个目录,作为挂接目录
结果是将上位机的/opt/rootfs共享目录挂接到下位机的
/mnt目录,将来下位机只需访问/mnt目录本质就是在
访问上位机的/opt/rootfs目录
cd /mnt //本质就是进入上位机的/opt/rootfs
ls
helloworld.c hellworold pthread pthread.c
./helloworld //下位机运行
./pthread //下位机运行
注意:pthread程序在运行之前,下位机的linux系统
会自动利用网络从共享目录下载到下位机的
内存上运行(这个过程是偷偷摸摸的)
6.总结:
利用NFS网络服务将来可以大大提高软件调试测试的
效率,关键是将来更新软件测试软件无需频繁烧写
EMMC,大大提高了EMMC的使用寿命!
tftpd-hpa
“
1. 安装
sudoapt−getinstalltftp−hpatftpd−hpa2.建立目录 mkdir /tftpboot # 这是建立tftp传输目录。
sudochmod0777/tftpboot sudo touch test.txt # test.txt文件最好输入内容以便区分
3. 配置
$ sudo vi /etc/default/tftpd-hpa3.
‘#/etc/default/tftpd-hpa
TFTP_USERNAME=”tftp”
TFTP_DIRECTORY=”/tftpboot” # 这里是你的tftpd-hpa的服务目录,这个想建立在哪里都行
TFTP_ADDRESS=”0.0.0.0:69”
TFTP_OPTIONS=”-l -c -s” # 这里是选项,-c是可以上传文件的参数,-s是指定tftpd-hpa服务目录,上面已经指定
重启服务
$ sudo service tftpd-hpa restart # 启动服务,这里要注意,采用的独立服务形式。测试
$ tftp 127.0.0.1
tftp>get test.txt
tftp>put test1.txt
tftp>q
a
###ctags
sudo apt-get install ctags cscope //源码阅读工具
ssh
安装:sudo apt-get install openssh-server
远程登录:sudo ssh root@ip
vim高级配置和vim_plus
vim高级配置
wget -qO- https://raw.github.com/ma6174/vim/master/setup.sh | sh -x
vim_plus:
git clone https://github.com/chxuan/vimplus.git
cd ./vimplus
sudo ./install.sh
ftp
wine
sudo apt-get install wine64