0

我正在使用带有 Sierra 无线 MC7354 的 linux 内核 3.6.9。该模块插入带有基于 ARM9 处理器的嵌入式板卡的 Verizon 无线激活 sim 卡。通过启用内核 qcserial 驱动和 qmi_wwan 驱动,我们可以得到 ifconfig –a 命令输出如下:

wwan0 Link encap:Ethernet HWaddr 1A:11:193:11:11
BROADCAST MULTICAST MTU:1500 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:0 (0.0 B) TX bytes:0 (0.0 B)

为了建立宽带连接,想到了使用 libqmi 协议的方式与 modem 通话。在我的开发 Ubuntu 机器上下载了 libqmi-1.12.6 并配置了 ARM 编译器。

制作后,将 qmi-network qmicli qmi-proxy 程序移动到我实际的嵌入式板 usr/bin 文件夹和

libqmi-glib.so、libqmi-glib.so.1 和 libqmi-glib.so.1.3.0 到 usr/lib 文件夹。

(无法安装具有有限存储卡限制的实际目标板)。

当我尝试跑步时

./qmi-network /dev/cdc-wdm0 status

收到以下错误:

Loading profile...
APN: VZW
Getting status with 'qmicli -d /dev/cdc-wdm0 --wds-get-packet-service-status '...
./qmi-network: line 257: qmicli: not found
error: couldn't get packet service status

某些原因我无法在我的目标板上运行 qmicli 程序。谁可以帮我这个事…。

看起来我缺少将一些依赖项从我的 linux 开发机器复制到目标 ARM 平台。

谢谢,

4

2 回答 2

0

谢谢你的建议马可。

某些原因我无法在我的目标板上运行 qmicli 程序。谁可以帮我这个事…。

此问题的实际原因是在配置和构建 libqmi 库时选择了错误的交叉编译选项。

重建后,可以执行 qmcli 命令。

谢谢。

于 2015-08-04T21:13:13.873 回答
0

qmi-network 依赖于 qmicli 在 $PATH 中,我想这是你的问题。

但是,在编译 libqmi 期间选择了 qmi-proxy 二进制文件的位置;如果未指定,则将其设置为已--libexec=定义的 " " 或默认值 ( $prefix/libexec)。

在配置期间将使用通常的编译--prefix=/usr,这将最终安装:

/usr/bin/qmicli
/usr/bin/qmi-network
/usr/lib/libqmi.*
/usr/libexec/qmi-proxy

我建议您首先尝试直接使用 qmicli,并且只有在一切正常后,使用 qmi-network(它只是 qmicli 之上的包装脚本)。

于 2015-11-29T23:01:22.690 回答