本帖最后由 流年o空折枝 于 2018-3-19 17:26 编辑
开发板用的是迅为的iTOP-4412开发板 移植华为 E261 WCDMA 12d1:1446USB 上网卡到 4412 开发板 QtE\Linux 系统。 1 内核配置 配置内核以下选项 和 如下图所示 然后编译内核,烧写到开发板。 2 工具的编译 本次移植共需要四个工具,它们互相有依赖关系,为了方便编译,将它们拷贝到同一目录 并解压,如下图所示。 2.1 编译libusb-0.1.12 进入文件夹 libusb-0.1.12,执行以下命令。 进入文件夹 libusb-0.1.12,执行以下命令。 ./configure --host=arm-none-linux-gnueabi --prefix=$(pwd)/../__install 它将设置使用的编译器,并且指定 make install 后生成目录的路径为上级目录下的 __install 文件夹,结果如下图所示, 然后执行“make” 以及“make install”,可以看到在上级目录产生了“__install”文 件夹,如下所示。 2.2 编译usb-modeswitch-1.2.6 编译该工具需要使用上一步生成的库文件以及头文件,即__install/include 以及 __install/lib 文件夹,进入源码文件夹 usb-modeswitch-1.2.6,将 Makefile改成以下所示内 容。 以及 保存并编译,输入 make 指令,如下图所示。 2.3 编译usb-modeswitch-data-20140327 进入该源码文件夹的 usb_modeswitch.d 目录,如下图所示。 使用命令“vim 12d1:1446”打开文件,并修改成以下内容。 如下图所示 上面这段代码最重要的是 DefaultVendor= 0x12d1 和 DefaultProduct= 0x1446,它制 定了 USB设备的 VID 和 PID。 2.4 编译ppp-2.4.4 进入源码目录,运行以下命令编译 编译到此完成,可以看到在 pppd 文件夹生成了 pppd工具,在 chat 文件夹生成了 chat 工具,如下图所示。 编译工作到此完成,接下来分别将每一步编译得到的工具拷贝到开发板。 (1)将 2.1 中__install/lib 目录下的 libusb.so,libusb-0.1.so.4,libusb-0.1.so.4.4.4 拷 贝到开发板的/lib 文件夹。 (2)将 2.2 中编译得到的 usb_modeswitch 文件拷贝到开发板的/usr/sbin/目录。 (3)将 2.3 中修改的文件 12d1:1446 拷贝到开发板的/etc/usb_modeswitch.d/目录下。 注意到 Windows与 Linux 的文件命名规则不同,:在 Windows上会被自动转换成%3A。用 户需要先把文件拷贝到开发板上再重命名。重命名操作如下图所示。 (4)将 2.4 中得到的 pppd和 chat 工具拷贝到开发板/usr/sbin/目录。 (5) 将压缩包提供的脚本 wcdma,wcdma-chat-connect,wcdma-chat-disconnect 拷贝到开发板的/etc/ppp/peers/目录下。 3 测试 拷贝完成后,将上网卡 E261 插到开发板上,开发板弹出以下内容。 等待上网卡闪烁蓝灯,然后输入以下指令 usb_modeswitch -W -c /etc/usb_modeswitch.d/12d1:1446 之后运行压缩包中提供的脚本 pppd_conf.sh,运行耗时大约 20s,设置完成后即可上 网,如下图所示。 本文转自迅为
|