执行conan install时sudo apt-get update失败问题求助
问题:Conan安装portaudio时执行
sudo apt-get update失败 问题详情
运行以下命令时,conan install环节报错:
conan install .. --build=missing && cmake .. -G "Unix Makefiles" && cmake --build .
具体错误信息:
portaudio/19.7.0@bincrafters/stable: ERROR: while executing system_requirements(): Command 'sudo apt-get update' failed
ERROR: Error in system requirements
使用的conanfile.txt内容:
[requires] opus/1.3.1 asio/1.24.0 sqlite3/3.40.1 sqlite_orm/1.8.1 qt/5.15.8 libalsa/1.2.7.2 portaudio/19.7.0@bincrafters/stable [generators] cmake
已尝试的操作:
- 切换至Conan 1.57版本
- 删除本地
./conan文件夹后重新安装依赖 - 在
conan.conf中添加sysrequires_mode = enabled
解决方案
1. 手动排查sudo apt-get update基础问题
先单独执行sudo apt-get update,确认是否能正常完成:
- 若网络超时:更换国内Ubuntu镜像源(如清华、中科大源)
- 若权限报错:确认当前用户拥有sudo权限,输入密码是否正确
- 若源配置损坏:检查
/etc/apt/sources.list及/etc/apt/sources.list.d/下的配置文件是否有语法错误
2. 跳过Conan自动处理系统依赖
如果手动更新正常,但Conan执行仍失败,可跳过系统依赖自动安装:
- 临时执行:
conan install .. --build=missing --system-req=no
- 永久配置:修改
conan.conf,将sysrequires_mode设为skip:
[general] sysrequires_mode = skip
之后手动安装portaudio所需系统依赖:
sudo apt-get install portaudio19-dev
3. 替换portaudio的Conan包
bincrafters的portaudio包可能维护不及时,更换为官方或其他维护的包:
修改conanfile.txt中的portaudio依赖为:
portaudio/19.7.0
或尝试更新版本,再重新执行conan install。
4. 提前激活sudo会话
Conan执行sudo时可能无法获取终端输入,先运行以下命令保持sudo会话活跃:
sudo -v
输入密码后,再执行conan install命令。
内容的提问来源于stack exchange,提问作者Shanty
相关产品推荐
相关产品推荐

