0

希望有一个 gphoto 或 Linux 内核专家在那里闲逛,我在这里问这个问题。我正在尝试为 Linux libgphoto2 库构建一个自定义前端。目前我正在使用 gphoto2 调用图书馆。我在 Etch (Debian 4.0) VM 映像上运行它作为我的测试机器。我从 gphoto-suite svn 存储库主干中提取源代码并毫无问题地构建它。我刚刚构建了套件的 libgphoto2 和 gphoto2 部分,因为这就是我所需要的。当我尝试连接到我的相机 (Canon EOS Rebel XTi) 时,我收到一个 PTP 错误,然后出现一条消息,上面写着“i/o 库中发生错误('未指定错误')”。我发现了一些与 libgphoto2 相似的错误的参考,这些错误散布在具有多个不同内核的多个 Linux 发行版中。最近的一个似乎是在 2.6.28 中,被 gphoto-suite 团队明确宣布为内核错误。参考这里这里

我之前在 Ubunut 的 Hardy Heron 上已经让这个库与这台相机一起使用,所以我知道它过去一直有效。由于我的目标平台是运行 2.6.21 内核的单板计算机,我将 Etch VM 的内核更新为 2.6.21.3 并得到了同样的错误。

那么我的问题是,有谁知道这是否真的是 USB 驱动程序中的一个内核错误,它已经存在了一段时间并且正在内核 2.6.28.4 及更高版本中得到解决,或者它实际上是否是 gphoto2 版本的问题? 由于我无法轻松地将嵌入式设计升级到新内核,我希望这是一个 gphoto 错误。同时,我将尝试构建一些旧版本的 gphoto。

4

2 回答 2

0

显然这是一个用户空间错误。在同一 VM 映像上构建 gphoto-suite 2.4.4 版,然后运行良好。好的组合似乎是 libgphoto2-2.4.2 和 libgphoto2_port-0.8.0,以及 gphoto2-2.4.2。也许 gphoto-devl 邮件列表会给出原因的答案。

于 2009-02-11T01:14:08.233 回答
0

使用调试符号构建 libgphoto(即 makefile 中的 CFLAGS=$(CFLAGS) -g),然后尝试在 GDB 中捕获错误。查看实际代码将提供更多关于它是内核还是用户空间错误的信息,而不是超级模糊的错误消息。

于 2009-02-10T22:04:34.867 回答