openwrt交叉编译helloworld

目录

1、路由器上安装openwrt

2、ubantu上安装SDK


1、路由器上安装openwrt

1.1 下载镜像

      https://downloads.openwrt.org/releases/18.06.1/targets/x86/64/

1.2 制作安装盘

ultra iso将Ubuntu的版本写入U盘,然后将下载的软件解压缩后放在U盘的根目录

1.3  安装系统

  1. F12进入启动盘选择菜单,选择U盘启动,
  2. 进入系统后选择Try Ubuntu
  3. cmd启动终端
  4. mount查看当前的系统加载到哪个盘,比如

/dev/root on / type ext4 (rw,noatime,block_validity,delalloc,barrier,user_xattr)

proc on /proc type proc (rw,nosuid,nodev,noexec,noatime)

sysfs on /sys type sysfs (rw,nosuid,nodev,noexec,noatime)

tmpfs on /tmp type tmpfs (rw,nosuid,nodev,noatime)

/dev/sda1 on /boot type ext4 (ro,noatime,block_validity,delalloc,barrier,user_xattr)

/dev/sdb4 on /cdrom type ext4 (ro,noatime,block_validity,delalloc,barrier,user_xattr)

tmpfs on /dev type tmpfs (rw,nosuid,relatime,size=512k,mode=755)

devpts on /dev/pts type devpts (rw,nosuid,noexec,relatime,mode=600,ptmxmode=000)

debugfs on /sys/kernel/debug type debugfs (rw,noatime)

     6. cd /cdrom ; ls ;确认openwrt的镜像在该位置

     7. ls /dev/sd*查看硬盘盘符的情况

root@OpenWrt:~# ls /dev/sd*

/dev/sda   /dev/sda1  /dev/sda2

    8.将镜像写入系统dd if=openwrt-18.06.1-xxxxx of=/dev/sda bs=4M

2、ubantu上安装SDK

2.1 解压XXX.tar.xz文件

先 xz -d xxx.tar.xz 将 xxx.tar.xz解压成 xxx.tar 然后,再用 tar xvf xxx.tar来解包。

2.2 写好helloworld包,参考链接为:https://my.oschina.net/hevakelcj/blog/410633

注意:①helloworld.c 和helloworld.o使用ubantu的gcc编译的,只是用来验证helloworld.c是否能编译成功。成功后必须删除helloworld.c和helloworld.o文件!!!②与src同目录下的Makefile文件中,命令行前面是Tab不是空格!!!

2.3 把helloworld移动到解压的文件SDK文件夹的package文件夹下

2.4 回到/openwrt-sdk-18.06.1-x86-64_gcc-7.3.0_musl.Linux-x86_64文件夹,执行make menuconfig,helloworld模块是否加载

2.5 解决Cannot open file '..../key-bulid' for reading

解决方法:手动生成public key

./staging_dir/host/bin/usign -G -s ./key-build -p ./key-build.pub -c "Local build key"

2.6 输入 make V=s编译成功

2.7 查找编译好的.ipk包并传到路由器上(这里的路由上的operwrt的ip为192.168.1.1)

2.8 路由器上运行,成功!

猜你喜欢

转载自blog.csdn.net/qq_33457548/article/details/98762500