我目前正在开发一款使用操纵杆输入并使用 SDL 生成不同波形声音的应用程序。虽然实现没有任何问题,但一旦我使用以下方式打包我的应用程序snapcraft,我的应用程序无法产生声音,也无法获取操纵杆输入。
我的应用程序使用的接口是:
- x11
- 网络
- 脉冲音频
- 网络绑定
- 系统观察
- 网络观察
此外,从终端运行我的应用程序时,我收到以下错误/警告:
shm_open() failed: Permission denied
ALSA lib conf.c:3750:(snd_config_update_r) Cannot access file /usr/share/alsa/alsa.conf
ALSA lib pcm.c:2266:(snd_pcm_open_noupdate) Unknown PCM default
XmbTextListToTextProperty result code -2
如果我以“经典”方式(sudo make install)运行我的应用程序,则不会出现这些警告。是否可以配置我的应用程序snapcraft.yaml
以让 SDL2 正常工作?
答案1
你正在遇到安全结构的一部分,这仍然configure: devmode
会阻止 snap 在系统上执行任意操作。我一直在胡闹在 snappy-playpen github 上,(具有gitter 聊天室),但我绝不是专家。如果您正在定义plugs
每个apps
/并在 ing之后parts
将它们连接到 ubuntu-core ,那么您将面临一些重要工作需要完成。如果您还没有这样做,请继续努力。您在哪里有工作吗?slots
snap
snapcraft.yaml
snapd
的组件及其本身snappy
仍在大力开发中snapcraft
。目前仍需手动操作的部分可能很快就会实现自动化。不过,我首先建议将您的项目移至 repo 中snappy-playpen
,并从社区团队和snappy
开发人员那里获得一些帮助。本周二(6 月 21 日)将有一个在线诊所。如果您有兴趣,可以在 G+ 上查看更多详细信息,它将在Ubuntu 在线直播当它发生的时候。