如何在arm linux平台连接ios设备

如何在arm linux平台连接ios设备,第1张

在pc上,无论是windows还是linux都可以连接管理你的ios设备,那么如何去实现在arm平台下与ios通信呢,其实你你需要把linux下的usbmuxd和libimobiledevice交叉编译就可以了,管道就打通了,接下你也可以用ssh或ifuse。

系统:Linux 2.6.32-74-generic #142-Ubuntu SMP i686 GNU/Linux

交叉编译器: arm-none-linux-gnueabi-gcc RDK: DVRRDK_04.00.00.03(没有这个可以根据需要编译自己需要的库)

设备: arm linux板(dm368)+ ipone5s(ios8.3) +usb线

Package: libusb-1.0.8.tar.bz2

Package: libplist-1.3.tar.bz2

这个需要用cmake编译,自己写一个toolchain.cmake 修改交叉编译变量

然后在源码目录下 新建build文件夹

Package: usbmuxd-1.0.4.tar.bz2

编译方法和libplist是一样的。现在通道已经打通。

采用上面的方法,你也可以编译出

libgpg-error

Package: libgpg-error-1.7.tar.gz

libgcrypt

Package: libgcrypt-1.4.6.tar.gz

libtans1

Package: libtasn1-2.7.tar.gz

gnutls

Package: gnutls-2.8.6.tar.bz2

需要修改一下src/makefile 的LDFLAGS 值

新建一个build.sh

也许你需要继续 编译fuse 和ifuse ,那么你就可以去mount ios设备了。

文章参照 Mounting an iPod/iPhone on a Linux device http://paguilar.org/?p=31

上面usbmuxd的1.0.4版本不支持ipone5s 的ios8.3,又试了usbmuxd 1.0.7 是ok的。 我只使用了发现设备连接设备(libplist usbmuxd),打通管道,你也可以编译文章提到的其他工具,甚至写个qt程序。

新版的linux2.6.27.9已自带zd1211b的驱动。此驱动在rat-linux-2.6.27.9/drivers/net/wireless/zd1211rw/中。 要让此驱动生效,得修改内核配置。 选中 networking support-->wireless-->Generic IEEE 802.11 Networking Stack (mac80211) 选中

在过去的ARM Linux中,arch/arm/plat-xxx和arch/arm/mach-xxx中充斥着大量的垃圾代码,相当多数的代码只是在描述板级细节,而这些板级细节对于内核来讲,不过是垃圾,如板上的platform设备、resource、i2c_board_info、spi_board_info以及各种硬件的platform_data。读者有兴趣可以统计下常见的s3c2410、s3c6410等板级目录,代码量在数万行。

为了改变这种局面,于是PowerPC等其他体系架构下已经使用的Flattened Device Tree(FDT)进入ARM社区的视野。Device Tree是一种描述硬件的数据结构,它起源于 OpenFirmware (OF)。在Linux 2.6中,ARM架构的板极硬件细节过多地被硬编码在arch/arm/plat-xxx和arch/arm/mach-xxx,采用Device Tree后,许多硬件的细节可以直接透过它传递给Linux,而不再需要在kernel中进行大量的冗余编码。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/8325511.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-15
下一篇 2023-04-15

发表评论

登录后才能评论

评论列表(0条)

保存