【问题标题】:Flatpak (flatpak-build) fatal error when building submodules构建子模块时的 Flatpak (flatpak-build) 致命错误
【发布时间】:2018-08-03 09:43:00
【问题描述】:

here 开始,当使用 OpenSUSE Tumbleweed 时,我无法获得 flatpak-builder 来编译子模块依赖项。我在使用 Vala 依赖项 Gee 和 GXml 在 Gnome Builder 中开发控制台应用程序时首先注意到了这个问题。

作为测试,我安装了org.gnome.Books.json 并发出了以下命令(如文档中的here):

$ flatpak-builder --repo=repo books-app org.gnome.Books.json 

结果和我在开发自己的应用程序时观察到的一样,致命错误:

Initializing build dir
Committing stage init to cache
Starting build of org.gnome.Books
fuse: failed to exec fusermount: Permission denied

<more stuff>

Cloning into '/home/robin/Projects-CSim/org.gnome.books/.flatpak-builder/build/gnome-online-accounts-1/telepathy-account-widgets'...
Submodule path 'telepathy-account-widgets': checked out '7d944b79961dfb6291110ceb27597a224d329b36'
error: Build directory /home/<user>/Projects/org.gnome.books/.flatpak-builder/rofiles/rofiles-D4R4cZ not initialized, use flatpak build-init
Error: module gnome-online-accounts: module gnome-online-accounts: Child process exited with code 1

实际上它未能构建第一个子模块。这与我在项目中从 Gnome-Builder 调用时观察到的行为相同;它下载但未能构建第一个子模块 - 在这种情况下它是 libgee-0.8。

我已经仔细检查了 Flatpak (V0.10.4) 安装 here 并且找不到解决方案。我从文档中了解到调用flatpak-builder 应该自动调用flatpak build-init

这令人担忧,因为 Gnome-Builder 似乎使用 Flatpak 作为默认打包程序。有什么建议吗?

【问题讨论】:

    标签: opensuse fuse flatpak gnome-builder


    【解决方案1】:

    问题不在于 Flatpak。这是 Flatpak 和 fuse 之间的冲突。由于某种原因,命令行中的 valac 或 meson 没有发生这种情况,只有 Flatpak。

    here我们找到了解决方案:

    # chmod +x /usr/bin/fusermount
    

    这是 OpenSUSE Tumbleweed 的特性吗?无论如何,在进行此更改后,Flatpak 会按预期构建子模块。太棒了!

    但不确定这方面的安全性 - 任何 cmets 都会受到欢迎。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-03-03
      相关资源
      最近更新 更多