前言:
搭建嵌入式开发环境,至少需要以下一些工具:
1. PC端的gcc编译平台(gcc g++ make cmake automake)。
(此处需注意一个问题:make为3.82版本,此版本很新,不能支持一些旧的特性,可以安装3.81版本,或者安装两个版本)
2. 一些必备工具:tftp-server tftp xinetd ftp-server sshd scm(source code management) unar p7zip p7zip-plugins (vim emacs)
一些可选工具:samba (ftp vsftpd) ibus-table ibus-pinyin ibus-table-chinese-wubi-haifeng gnome-tweak-tool
tftp-server --- 主要用来从tftp启动内核,调试内核必备。(当然烧录也可以)
ftp-server、sshd --- 主要用来传送文件,在windows和虚拟机linux之间。(默认安装为linux server,虽然用的fedora20beta ^_^)
scm --- 源码管理,既然学习,当然得专业点。 至于选择git,原因在于git更好的分支控制是我想用到的,所以选择了git。(若为求方便,建议使用svn)
vim、emacs --- 编辑器,不再累述。
(稍微说点:学了几个月的emacs,可以说是勉强用的起来了吧---在代码编辑方面。但其实emacs对手的操作要求比较高,有点键盘手的感觉,最近手腕老是犯疼,遂放弃了emacs,回到了熟悉的windows。可能是我配置问题吧?但是又不想大动默认配置。 OTZ)
samba --- 此工具不再描述,暂不使用此工具,需要者自行安装。(可参见:fedora14下建立samba服务器)
话不多说了,开始安装工具吧!
一、编辑编译环境安装
yum安装:sudo yum install gcc gcc-c++ make cmake automake ncurses ncurses-devel vim emacs kernel-devel
这些工具没什么安装技巧,直接安装就行了。
提及一下gcc-c++,在ubuntu上需要使用gcc-g++。
另外cmake是个什么东西,可以自己google。(鄙人也在学习ing,可见我转载的几篇文章)
二、tftp安装
yum安装:sudo yum install tftp tftp-server
配置tftp: sudo vim /etc/xinetd.d/tftp --- 这个修改没什么用,不过disable的选项必须选择yes。
service tftp
{
socket_type = dgram
protocol = udp
wait = yes
user = root
server = /usr/sbin/in.tftpd
server_args = -s /tftpboot -c
disable = yes
per_source = 11
cps = 100 2
flags = IPv4
}
此处主要修改两个地方,见上方红色部分。
1. 建立目录:$ mkdir /home/zxx/tftpboot
$ chmod 777 /home/zxx/tftpboot -R
$ cd /; sudo ln -sf /home/zxx/tftpboot /tftpboot
2. 启动tftp-server: 由于Fedora20的tftp-server处理和之前不一样.
启动前, 先修改两个地方: sudo gedit /usr/lib/systemd/system/tftp.service (改成以下内容)
[Unit]
Description=Tftp Server
[Service]
ExecStart=/usr/sbin/in.tftpd -s /tftpboot -c
StandardInput=socket
[Install]
WantedBy=tftp.socket
启动tftp: $ sudo systemctl start tftp.socket
$ sudo systemctl status tftp.socket # 正常运行输出如下
tftp.socket - Tftp Server Activation Socket$ sudo systemctl start tftp.service
Loaded: loaded (/usr/lib/systemd/system/tftp.socket; enabled)
Active: active (running) since 五 2013-12-13 23:44:49 CST; 10min ago
Listen: [::]:69 (Datagram)
12月 13 23:44:49 jinz-f20b systemd[1]: Starting Tftp Server Activation Socket.
12月 13 23:44:49 jinz-f20b systemd[1]: Listening on Tftp Server Activation Socket.
$ sudo systemctl status tftp.service #正常运行输出如下
tftp.service - Tftp Server加入开机启动: $ sudo systemctl enable tftp.socket
Loaded: loaded (/usr/lib/systemd/system/tftp.service; enabled)
Active: active (running) since 五 2013-12-13 23:44:49 CST; 10min ago
Main PID: 1168 (in.tftpd)
CGroup: /system.slice/tftp.service
└─1168 /usr/sbin/in.tftpd -s /tftpboot -c
12月 13 23:44:49 jinz-f20b systemd[1]: Starting Tftp Server...
12月 13 23:44:49 jinz-f20b systemd[1]: Started Tftp Server.
$ sudo systemctl enable tftp.service
3. 测试tftp-server:
$ tftp 192.168.1.210
tftp> get a.c
tftp> put b.c
Error code 0: Permission denied
tftp> put b.c
tftp> quit
说明:上面的Error code 0: Permission denied,此时目录/tftpboot权限为755,改为777即可put文件。(一般tftp不需要上传读取文件,建议使用755)
三、ftp安装
yum安装:sudo yum install ftp vsftpd
配置ftp: sudo vim /etc/vsftpd/vsftpd.conf
按照以下配置,用户可以在 /etc/vsftpd/user_list 中设置
本文件中主要修改以下几个地方(文件末位):
listen=YES
listen_ipv6=NO
userlist_deny=NO
pam_service_name=vsftpd
userlist_enable=YES
tcp_wrappers=YES
anon_root=/ftp
#local_root=/ftp/public
use_localtime=YES
#nopriv_user=vsftpd
创建文件夹:mkdir /home/zxx/ftp
cd /;sudo ln -sf /home/zxx/ftp /ftp
启动vsftpd: sudo systemctl start vsftpd
加入开机启动: sudo systemctl enable vsftpd
四、sshd安装
yum安装: sudo yum install openssh-server
sshd默认启动了,并且加入了开机启动。
启动sshd:sudo systemctl start sshd
加入开机启动:sudo systemctl enable sshd
五、git安装
yum安装: sudo yum install git
git安装请见下章。