【问题标题】:LXC container running on Ubuntu gives linker errors (ERROR: ld.so)在 Ubuntu 上运行的 LXC 容器会出现链接器错误(错误:ld.so)
【发布时间】:2020-05-07 22:17:00
【问题描述】:

我有以下设置:

  • 我有一个在 Ubuntu 18.04 LTS 主机上运行的 archlinux LXC 容器。
  • 无论我执行什么命令,我都会收到以下错误:

[root@archie /]# pacman -Syu
错误:ld.so:对象'libgtk3-nocsd.so.0' 来自 LD_PRELOAD 的无法预加载(无法打开共享对象文件):忽略。

  • 我在主机 Ubuntu 18.04 上安装了 libgtk3-nocsd(尽管我认为这并不重要,因为该错误仅在 archlinux 容器内执行命令时发生)。

  • 据我所知,libgtk3-nocsd.so.0 是一个 Debian/Ubuntu 特定的库,它不应该在 archlinux 上真正存在或需要。无论如何,pacman -Ssnocsd 或类似的名字都变成了空的。

我的问题与question 类似,但针对该问题提到的解决方案均不适合我。

【问题讨论】:

    标签: ubuntu containers archlinux lxc


    【解决方案1】:

    我今天解决了这个问题。

    1. here 的讨论中,我意识到对于 arch,等效数据包是 gtk3(而不是 libgtk3libgtk3-devlibgtk3-nocsd,因为我最初正在搜索)。

    2. here发现需要通过发出命令安装gtk3包:

    # pacman -Syu gtk3
    
    1. 然后从this answer for Ubuntu 开始,我为arch尝试了类似的东西,如下所示:
    #export LD_PRELOAD=/usr/lib/libgtk-3.so.0
    

    现在错误不再出现。

    (当然,如果不是很明显,所有这些步骤都是在拱形容器内完成的。)

    【讨论】:

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