【问题标题】:Android, setting up a Linux build environment, libgl1-mesa-glx:i386 package have unmet dependenciesAndroid,搭建Linux构建环境,libgl1-mesa-glx:i386包有未满足的依赖
【发布时间】:2014-06-08 21:14:07
【问题描述】:

我正在尝试为 AOSP 设置 Linux 构建环境。我有 Ubuntu-12.04.4-desktop-amd64 分布式。我按照here 的指示做所有事情。 我输入了终端命令来安装必要的包:

$ sudo apt-get install git gnupg flex bison gperf build-essential \
  zip curl libc6-dev libncurses5-dev:i386 x11proto-core-dev \
  libx11-dev:i386 libreadline6-dev:i386 libgl1-mesa-glx:i386 \
  libgl1-mesa-dev g++-multilib mingw32 tofrodos \
  python-markdown libxml2-utils xsltproc zlib1g-dev:i386

然后我收到一条错误消息:

The following packages have unmet dependencies:
 libgl1-mesa-glx:i386 : Depends: libglapi-mesa:i386 (= 8.0.4-0ubuntu0.7)
                        Recommends: libgl1-mesa-dri:i386 (>= 7.2)
E: Unable to correct problems, you have held broken packages.

所以合乎逻辑的做法是sudo apt-get install libgl1-mesa-dri:i386,然后得到以下消息:

The following packages will be REMOVED:
 libgl1-mesa-dri-lts-quantal libxatracker1-lts-quantal ubuntu-desktop xorg
 xserver-xorg-lts-quantal xserver-xorg-video-all-lts-quantal
 xserver-xorg-video-vmware-lts-quantal
The following NEW packages will be installed:
 libdrm-intel1:i386 libdrm-nouveau1a:i386 libdrm-radeon1:i386 libdrm2:i386
 libexpat1:i386 libffi6:i386 libgl1-mesa-dri:i386 libllvm3.0:i386
 libpciaccess0:i386 libstdc++6:i386

我担心的是它会被移除的包。在我看来,如果我允许删除,我会失去我的桌面环境。

有人对此有什么想法吗?

【问题讨论】:

    标签: android linux ubuntu android-source android-build


    【解决方案1】:

    我解决了这个问题。执行以下操作,安装除libgl1-mesa-glx:i386以外的所有包:

    $ sudo apt-get install git gnupg flex bison gperf build-essential \
      zip curl libc6-dev libncurses5-dev:i386 x11proto-core-dev \
      libx11-dev:i386 libreadline6-dev:i386 \
      libgl1-mesa-dev g++-multilib mingw32 tofrodos \
      python-markdown libxml2-utils xsltproc zlib1g-dev:i386
    

    安装libglapi-mesa-lts-saucy:i386 而不是libgl1-mesa-glx:i386

    $ sudo apt-get install libglapi-mesa-lts-saucy:i386
    

    现在您有了正确的 AOSP 构建环境,并且不会丢失桌面环境。

    【讨论】:

    • source.android.com 的下一步是创建一个符号链接: $ sudo ln -s /usr/lib/i386-linux-gnu/mesa/libGL.so.1 /usr/ lib/i386-linux-gnu/libGL.so 但是按照你说的安装后,仍然没有libGL.so.1。这可以吗?还是我想念什么?谢谢
    • “并且不要松散桌面环境”意味着您正在 ubuntu 桌面上编译 AOSP?!在终端中运行“午餐”命令后,您是否得到类似下面的内容? ;[arm-productname-user] root@ubuntu
    • 目前看来libglapi-mesa-lts-saucy:i386可以替换成libglapi-mesa-lts-trusty:i386。如果不替换,也会开始同样的依赖问题。
    【解决方案2】:

    只需忽略麻烦的软件包,然后安装推荐的软件包。现在重要的是确保您的桌面在重新启动后不会丢失。 这是我所做的:

    sudo apt-get install git gnupg flex bison gperf build-essential \
    zip curl libc6-dev libncurses5-dev:i386 x11proto-core-dev \
    libx11-dev:i386 libreadline6-dev:i386 \ libgl1-mesa-dev g++-multilib mingw32 tofrodos \ python-markdown libxml2-utils xsltproc zlib1g-dev:i386

    然后:

    sudo apt-get install libgl1-mesa-dri:i386

    然后:

    sudo apt-get install ubuntu-desktop xserver-xorg

    【讨论】:

      猜你喜欢
      • 2015-12-26
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-02-26
      • 1970-01-01
      • 2014-01-14
      • 1970-01-01
      • 2012-01-23
      相关资源
      最近更新 更多