希望有一位gphoto或Linux内核专家在这里闲逛,我在这里问这个问题。我正在尝试构建一个Linux libgphoto2库的自定义前端。目前,我正在使用gphoto2调用库。我在一台Etch (Debian4.0) VM镜像上运行它,作为我的测试机器。我从gphoto-suite svn存储库主干中提取了源代码,并顺利地构建了它。我刚刚构建了套件的libgphoto2和gphoto2部分,因为这就是我需要的全部。当我尝试连接到我的相机(佳能EOS Rebel XTi)时,我得到一个PTP错误,然后一条消息说:“一个错误发生在i/o库(‘未指明的错误’)”。我找到了一些关于一个bug的参考资料,这个bug似乎与libgphoto2有关,分散在几个具有不同内核的Linux发行版中。最近的一个似乎是在2.6.28版本中,被gphoto-suite团队明确声明为内核错误。参考here和here
我之前在Ubunut的Hardy Heron上使用过这个库,所以我知道它在过去是有效的。由于我的目标平台是一台运行2.6.21内核的单板计算机,因此我将Etch VM的内核更新为2.6.21.3,并得到了相同的错误。
我的问题是,有没有人知道这是不是已经存在了一段时间的USB驱动程序中的内核错误,并在2.6.28.4和更高版本的内核中得到了解决,或者这实际上是某个版本的gphoto2的问题?因为我不能轻易地将我的嵌入式设计升级到一个新的内核,所以我希望它是一个gphoto bug。同时,我将尝试构建一些旧版本的gphoto。
发布于 2009-02-10 22:04:35
使用调试符号(即makefile中的CFLAGS=$(CFLAGS) -g )构建libgphoto,然后尝试在GDB中捕获错误。与超级模糊的错误消息相比,查看实际代码会给出更多关于它是内核错误还是用户空间错误的信息。
发布于 2009-02-11 01:14:08
显然这是一个用户空间的bug。在相同的VM镜像上构建2.4.4版的gphoto-suite,然后运行就可以了。好的组合似乎是libgphoto2-2.4.2和libgphoto2_port-0.8.0,以及gphoto2-2.4.2。也许gphoto-devl邮件列表会给出原因的答案。
https://stackoverflow.com/questions/534344
复制相似问题