繁体   English   中英

Ubuntu,libftdi特权,非root用户运行程序时出现段错误

[英]Ubuntu, libftdi priviliges, seg fault when non-root user run program

我正在尝试编写使用libftdi的简单程序,但遇到了一个奇怪的问题。

当以非超级用户身份运行程序时,它看起来像这样:

./BoxDriver Naruszenie ochronypamięci(zrzutpamięci)

在Dmesg中,我看到的最后一行是:

[3320.467864] BoxDriver [4205]:libftdi.so.1.20.0中的段0 IP 00007f05c2821f7a sp 00007ffd9c6c9c00错误4错误[7f05c2820000 + 7000]

我正在使用Ubuntu:

Linux AdamsPC 3.19.0-30-通用#34-Ubuntu SMP Fri Oct 2 22:08:41 UTC 2015 x86_64 x86_64 x86_64 GNU / Linux

和FTDI设备:

总线001设备011:ID 0403:6010未来技术设备国际有限公司FT2232C双USB-UART / FIFO IC

以root身份运行时,程序可以正常运行:

须藤./BoxDriver

好,开始了

我也尝试调试源代码(在eclipse ang gcc中,未发生seg错误),问题出在:

ftdi_usb_open(ftc, 0x0403, 0x6010)

它始终返回-8,代表:“获取产品说明失败”

我已经搜索了任何答案,大多数都是关于将用户添加到拨出组或将规则添加到udev的,但是我找到的所有答案都没有用。

任何建议都将受到高度赞赏。 谢谢

有几种解决方法,但通常听起来您的用户帐户无权与USB设备进行接口。 您可以将用户添加到我认为适合拨出ubuntu的适当组。

sudo usermod -a -G dialout user

或者,如果需要使用多个帐户但它们都应具有权限,则可以将其安装的文件系统更改为具有完整权限。

sudo chmod 777 /media/drive_name

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM