您的位置:首页 > 理论基础 > 计算机网络

arm qt自启+网络自动获取ip地址c

2016-11-05 15:45 691 查看
移植了uboot/kernel/fs后,又移植了qt5.5.1,现在需要每次需要press Enter才能进入命令行,而且需要每次手动启动qt程序,手动获取ip地址设置网关等着实麻烦,这里记录一下自动设置的方法。

1.设置ip自动获取

这个网上一大堆,只需要设置udhcpc得到的ip设置到对应网卡就好。步骤如下

(1)制作文件系统时需要选中udhcpc命令,即在busybox的选项中选中udhcpc命令即可。

注:我这里用的busybox是1.23.2版本

在网上(http://www.busybox.net/)下载busybox1.23.2,解压到自己的文件夹中。执行make menuconfig,得到下面界面



注:以下前两步是我制作文件系统的需要,关于udhcpc的步骤是3)中所述。

1)在Busybox Setting → Build Options → Cross Compiler prefix (NEW)选项中设置自己交叉编译器的头,我这里设置为(arm-linux-gnueabi-)

2)选中Busybox Setting → Build Options→Build BusyBox as a static binary (no shared libs)属性

3)选中编译命令(这里只演示udhcpc),进入Networking Utilities 选中[*] udhcp Client (udhcpc) ,用于生成udhcpc(client)命令,见下图



4)如果没有别的需求,退出保存即可。制作文件系统需要后续编译安装,这里就不介绍了。

(2)编译内核是需要对DHCP添加支持

1)在内核源码目录下执行make menuconfig (注:请先设置好编译器和平台等变量,我的是arm, arm-linux-gnueabi-gcc)

2)依次选中并进入[*] Networking support  --->Networking options  --->目录下选中

          <* > Packet socket                 //添加.配置CONFIG_PACKET

          [ * ]     IP: DHCP support         //添加

          [ * ] Network packet filtering (replaces ipchains)  --->  

如下图:





3)其他各项根据自己需要设置,这里不介绍,退出保存,编译内核。

(3)文件拷贝+脚本设置

1)将busybox安装目录下的examples/udhcp/simple.script文件拷贝到开发板/usr/share/udhcpc/下(如果开发板上没有该路径,请自行创建),重命名为default.script文件

2)在开发板的etc/init.d/rcS文件中添加自动获取命令/sbin/udhcpc(不过前提是先启动网卡如ifconfig eth0 up)

2.qt自启动

qt自启动需要在用户登录后进行,所以一定要注意执行时机。

(1)设置自动登录,并进入命令行

1)打开开发板etc目录下的inittab文件,设置进入命令行模式的语句 console::respawn:-/bin/sh,这里的respawn就是自动进入命令行,如果设置为console::askfirst:-/bin/sh,就需要手动敲击Enter键进入命令行。

2)添加启动语句。

在linux中/etc/init.d/rcS一般是登录前的初始化,即在启动过程中的初始化。而profile一般是设置环境变量的,设置完成后即可启动qt了,于是在/etc/init.d中创建rcqt文件,内容为

[plain] view
plain copy

 





#!/bin/sh -e  

#  

# rcqt  

#  

# start qt  

  

/test/qt_test -qws  

注:我的qt执行文件名为qt_test,放在开发板的/test/文件夹下了。

将rcqt文件添加可执行权限(chmod a+x rcqt),在profile中文件中调用刚刚创建的文件,添加语句

[plain] view
plain copy

 





# start qt  

./etc/init.d/rcqt  

这样就OK了。arm qt自启+网络自动获取ip地址http://blog.csdn.net/shengzhadon/article/details/50802699

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: