尝试为 openjdk-6 安装 build-deps 时,aptitude 依赖项解析问题

尝试为 openjdk-6 安装 build-deps 时,aptitude 依赖项解析问题

如果我尝试安装 openjdk-6 的 build-deps,我会遇到一些相当严重的解决依赖关系的问题,如编译自定义 OpenJDK 版本的说明中所述,我需要这样做才能添加对加密卸载板的特殊支持。

我想知道是否有人遇到了类似的问题并找到了好的解决方案,即使在对 Ubuntu Server、Lucid 10.04 的所有安全更新、反向移植等进行适当的 dist-upgrade 之后,这些软件包和它们的开发包似乎仍然不同步。

(JDK 构建说明在这里:http://hg.openjdk.java.net/jdk6/jdk6/raw-file/tip/README-builds.html)。

$ sudo aptitude build-dep openjdk-6
Reading package lists...
Building dependency tree...
Reading state information...
Reading extended state information...
Initializing package states...
The following packages are BROKEN:
  comerr-dev libgcrypt11-dev libglib2.0-dev tzdata-java 
The following NEW packages will be installed:
  alacarte{a} ant ant-gcj{a} ant-optional ant-optional-gcj{a} 
  app-install-data{a} aspell{a} aspell-en{a} autoconf automake 
  autotools-dev ca-certificates-java{a} capplets-data{a} consolekit{a} 
  dbus{a} dbus-x11 default-jre-headless{a} defoma{a} desktop-file-utils{a} 
  dictionaries-common{a} docbook-xml{a} ecj{a} ecj-gcj esound-clients{a} 
  esound-common{a} evolution-data-server{a} evolution-data-server-common{a} 
  fastjar fontconfig{a} fontconfig-config{a} gamin{a} gawk gcj-4.4-base{a} 
  gcj-4.4-jdk{a} gcj-4.4-jre{a} gcj-4.4-jre-headless{a} gcj-4.4-jre-lib{a} 
  gcj-jdk gcj-jre{a} gcj-jre-headless{a} gconf2{a} gconf2-common{a} 
  ghostscript{a} gnome-about{a} gnome-applets{a} gnome-applets-data{a} 
  gnome-control-center{a} gnome-desktop-data{a} gnome-doc-utils{a} 
  gnome-icon-theme{a} gnome-keyring{a} gnome-media{a} gnome-media-common{a} 
  gnome-menus{a} gnome-mime-data{a} gnome-panel{a} gnome-panel-data{a} 
  gnome-session{a} gnome-session-bin{a} gnome-settings-daemon{a} 
  gnome-system-monitor{a} gnome-user-guide{a} gsfonts{a} 
  gstreamer0.10-plugins-base{a} gstreamer0.10-plugins-good{a} 
  gstreamer0.10-pulseaudio{a} gstreamer0.10-x{a} gvfs{a} gvfs-backends{a} 
  hicolor-icon-theme{a} hunspell-en-us{a} icedtea-6-jre-cacao{a} 
  indicator-applet{a} indicator-application{a} indicator-messages{a} 
  indicator-sound{a} java-common{a} krb5-multidev{a} 
  launchpad-integration{a} libaa1{a} libantlr-java{a} libappindicator0{a} 
  libarchive1{a} libart-2.0-2{a} libasound2{a} libasound2-dev 
  libasound2-plugins{a} libaspell15{a} libatasmart4{a} libatk1.0-0{a} 
  libatk1.0-data{a} libatk1.0-dev{a} libatspi1.0-0{a} libaudiofile0{a} 
  libavahi-client-dev{a} libavahi-client3{a} libavahi-common-data{a} 
  libavahi-common-dev{a} libavahi-common3{a} libavahi-glib1{a} 
  libavc1394-0{a} libbluetooth3{a} libbonobo2-0{a} libbonobo2-common{a} 
  libbonoboui2-0{a} libbonoboui2-common{a} libcaca0{a} libcairo2{a} 
  libcairo2-dev{a} libcairomm-1.0-1{a} libcamel1.2-14{a} 
  libcanberra-gtk-module{a} libcanberra-gtk0{a} libcanberra0{a} 
  libcdio-cdda0{a} libcdio-paranoia0{a} libcdio10{a} libcdparanoia0{a} 
  libck-connector0{a} libcups2{a} libcups2-dev libcupsimage2{a} 
  libdatrie1{a} libdbus-1-dev{a} libdbusmenu-glib1{a} libdbusmenu-gtk1{a} 
  libdevkit-power-gobject1{a} libdirectfb-1.2-0{a} libdirectfb-dev{a} 
  libdirectfb-extra{a} libdv4{a} libebackend1.2-0{a} libebook1.2-9{a} 
  libecal1.2-7{a} libecj-java{a} libecj-java-gcj{a} libedata-book1.2-2{a} 
  libedata-cal1.2-6{a} libedataserver1.2-11{a} libedataserverui1.2-8{a} 
  libeggdbus-1-0{a} libegroupwise1.2-13{a} libenchant1c2a{a} libesd0{a} 
  libexempi3{a} libexif12{a} libexpat1-dev{a} libffi-dev libflac8{a} 
  libfontconfig1{a} libfontconfig1-dev{a} libfontenc1{a} libfreetype6-dev 
  libgail18{a} libgamin0{a} libgcj-bc{a} libgcj-common{a} libgcj10{a} 
  libgcj10-awt{a} libgcj10-dev{a} libgconf2-4{a} libgcr0{a} 
  libgdata-google1.2-1{a} libgdata1.2-1{a} libgdu0{a} libgif-dev libgif4{a} 
  libgksu2-0{a} libgl1-mesa-dri libgl1-mesa-glx{a} libglade2-0{a} 
  libglib2.0-data{a} libglibmm-2.4-1c2a{a} libglu1-mesa{a} 
  libgnome-desktop-2-17{a} libgnome-keyring0{a} libgnome-media0{a} 
  libgnome-menu2{a} libgnome-window-settings1{a} libgnome2-0{a} 
  libgnome2-common{a} libgnomecanvas2-0{a} libgnomecanvas2-common{a} 
  libgnomekbd-common{a} libgnomekbd4{a} libgnomeui-0{a} 
  libgnomeui-common{a} libgnomevfs2-0{a} libgnomevfs2-common{a} 
  libgnutls-dev{a} libgp11-0{a} libgpg-error-dev{a} libgphoto2-2{a} 
  libgphoto2-port0{a} libgs8{a} libgsf-1-114{a} libgsf-1-common{a} 
  libgssrpc4{a} libgstreamer-plugins-base0.10-0{a} libgstreamer0.10-0{a} 
  libgtk2.0-0{a} libgtk2.0-bin{a} libgtk2.0-common{a} libgtk2.0-dev 
  libgtkmm-2.4-1c2a{a} libgtop2-7{a} libgtop2-common{a} libgucharmap7{a} 
  libgudev-1.0-0{a} libgvfscommon0{a} libgweather-common{a} libgweather1{a} 
  libhal-storage1{a} libhal1{a} libhunspell-1.2-0{a} libical0{a} 
  libice-dev{a} libice6{a} libidl0{a} libido-0.1-0{a} libiec61883-0{a} 
  libimobiledevice0{a} libindicate4{a} libindicator0{a} libjack0{a} 
  libjasper1{a} libjaxp1.3-java{a} libjline-java{a} libjpeg62{a} 
  libjpeg62-dev libjson-glib-1.0-0{a} libkadm5clnt-mit7{a} 
  libkadm5srv-mit7{a} libkdb5-4{a} libkrb5-dev{a} 
  liblaunchpad-integration1{a} liblcms1{a} libltdl-dev{a} libltdl7{a} 
  libmagickcore2{a} libmagickwand2{a} libmetacity-private0{a} 
  libnautilus-extension1{a} libnotify1{a} libnspr4-dev{a} libnss3-dev 
  libntfs10{a} libogg0{a} liboil0.3{a} libopenobex1{a} liborbit2{a} 
  libpam-ck-connector{a} libpam-gnome-keyring{a} libpanel-applet2-0{a} 
  libpango1.0-0{a} libpango1.0-common{a} libpango1.0-dev{a} 
  libpangomm-1.4-1{a} libpaper-utils{a} libpaper1{a} libpixman-1-0{a} 
  libpixman-1-dev{a} libplist1{a} libpng12-dev libpolkit-agent-1-0{a} 
  libpolkit-backend-1-0{a} libpolkit-gobject-1-0{a} libproxy0{a} 
  libpthread-stubs0{a} libpthread-stubs0-dev{a} libpulse-browse0{a} 
  libpulse-dev libpulse-mainloop-glib0{a} libpulse0{a} librarian0{a} 
  libraw1394-11{a} librsvg2-2{a} librsvg2-common{a} libsamplerate0{a} 
  libsexy2{a} libsgutils2-2{a} libshout3{a} libsm-dev{a} libsm6{a} 
  libsmbclient{a} libsndfile1{a} libsoup-gnome2.4-1{a} libsoup2.4-1{a} 
  libspeex1{a} libspeexdsp1{a} libstartup-notification0{a} libsysfs-dev{a} 
  libsysfs2{a} libtag1-vanilla{a} libtag1c2a{a} libtalloc2{a} 
  libtasn1-3-dev{a} libtdb1{a} libthai-data{a} libthai0{a} libtheora0{a} 
  libtiff4{a} libtool libts-0.0-0{a} libunique-1.0-0{a} libusb-1.0-0{a} 
  libusbmuxd1{a} libv4l-0{a} libvisual-0.4-0{a} libvisual-0.4-plugins{a} 
  libvorbis0a{a} libvorbisenc2{a} libvorbisfile3{a} libwavpack1{a} 
  libwbclient0{a} libwnck-common{a} libwnck22{a} libx11-dev{a} 
  libxau-dev{a} libxaw7{a} libxaw7-dev libxcb-atom1{a} libxcb-aux0{a} 
  libxcb-event1{a} libxcb-render-util0{a} libxcb-render-util0-dev{a} 
  libxcb-render0{a} libxcb-render0-dev{a} libxcb1-dev{a} 
  libxcomposite-dev{a} libxcomposite1{a} libxcursor-dev{a} libxcursor1{a} 
  libxdamage-dev{a} libxdamage1{a} libxdmcp-dev{a} libxerces2-java{a} 
  libxext-dev{a} libxfixes-dev{a} libxfixes3{a} libxfont1{a} libxft-dev{a} 
  libxft2{a} libxi-dev libxi6{a} libxinerama-dev libxinerama1{a} 
  libxkbfile1{a} libxklavier16{a} libxml2-utils{a} libxmu-dev{a} 
  libxmu-headers{a} libxmu6{a} libxpm-dev{a} libxpm4{a} libxrandr-dev{a} 
  libxrandr2{a} libxrender-dev libxrender1{a} libxres1{a} libxslt1.1{a} 
  libxss1{a} libxt-dev libxt6{a} libxtst-dev libxtst6{a} libxv1{a} 
  libxxf86dga1{a} libxxf86misc1{a} libxxf86vm1{a} m4 mauve metacity 
  metacity-common{a} mousetweaks{a} mtools{a} nautilus{a} nautilus-data{a} 
  notification-daemon{a} ntfsprogs{a} obex-data-server{a} 
  openjdk-6-jre-headless{a} openjdk-6-jre-lib{a} pkg-config policykit-1{a} 
  policykit-1-gnome{a} psfontmgr{a} pulseaudio{a} 
  pulseaudio-esound-compat{a} pulseaudio-module-x11{a} pulseaudio-utils{a} 
  python-cairo{a} python-gconf{a} python-gmenu{a} python-gnome2{a} 
  python-gnomeapplet{a} python-gnomecanvas{a} python-gtk2{a} 
  python-libxml2{a} python-pyorbit{a} python-xdg{a} python-xkit{a} 
  rarian-compat{a} rhino rtkit{a} screen-resolution-extra{a} 
  scrollkeeper{a} sgml-data{a} shared-mime-info{a} sharutils tsconf{a} 
  ttf-dejavu-core{a} ubuntu-system-service{a} udisks{a} usbmuxd{a} 
  x-ttcidfont-conf{a} x11-common{a} x11-utils{a} x11-xkb-utils 
  x11proto-composite-dev{a} x11proto-core-dev{a} x11proto-damage-dev{a} 
  x11proto-fixes-dev{a} x11proto-input-dev{a} x11proto-kb-dev{a} 
  x11proto-randr-dev{a} x11proto-record-dev{a} x11proto-render-dev{a} 
  x11proto-xext-dev{a} x11proto-xinerama-dev{a} xfonts-base 
  xfonts-encodings{a} xfonts-utils{a} xserver-common{a} xsltproc 
  xtrans-dev{a} xulrunner-1.9.2{a} xvfb yelp{a} zenity{a} 
0 packages upgraded, 444 newly installed, 0 to remove and 0 not upgraded.
Need to get 198MB of archives. After unpacking 857MB will be used.
The following packages have unmet dependencies:
  comerr-dev: Depends: libcomerr2 (= 1.41.11-1ubuntu2) but 1.41.11-1ubuntu2.1 is installed.
  tzdata-java: Depends: tzdata (= 2010i-1) but 2012e-0ubuntu0.10.04 is installed.
  libglib2.0-dev: Depends: libglib2.0-0 (= 2.24.0-0ubuntu4) but 2.24.1-0ubuntu2 is installed.
  libgcrypt11-dev: Depends: libgcrypt11 (= 1.4.4-5ubuntu2) but 1.4.4-5ubuntu2.1 is installed.
The following actions will resolve these dependencies:

Downgrade the following packages:
libcomerr2 [1.41.11-1ubuntu2.1 (now) -> 1.41.11-1ubuntu2 (lucid)]
libgcrypt11 [1.4.4-5ubuntu2.1 (now) -> 1.4.4-5ubuntu2 (lucid)]
libglib2.0-0 [2.24.1-0ubuntu2 (now) -> 2.24.0-0ubuntu4 (lucid)]
tzdata [2012e-0ubuntu0.10.04 (now) -> 2010i-1 (lucid)]

Leave the following dependencies unresolved:
ecj-gcj recommends java-gcj-compat (>= 1.0.69)
Score is -27

Accept this solution? [Y/n/q/?]

尝试安装预构建的 JDK 时也会发生这种情况,如相同的构建说明中所述:

$ sudo aptitude install openjdk-6-jdk libmotif-dev 
Reading package lists...
Building dependency tree...
Reading state information...
Reading extended state information...
Initializing package states...
The following packages are BROKEN:
  tzdata-java 
The following NEW packages will be installed:
  ca-certificates-java{a} icedtea-6-jre-cacao{a} icedtea-netx{a} 
  java-common{a} libasound2{a} libavahi-client3{a} libavahi-common-data{a} 
  libavahi-common3{a} libcups2{a} libflac8{a} libgif4{a} libice-dev{a} 
  libice6{a} libjpeg62{a} libmotif-dev libmotif3{a} libogg0{a} 
  libpthread-stubs0{a} libpthread-stubs0-dev{a} libpulse0{a} libsm-dev{a} 
  libsm6{a} libsndfile1{a} libvorbis0a{a} libvorbisenc2{a} libx11-dev{a} 
  libxau-dev{a} libxcb1-dev{a} libxdmcp-dev{a} libxi6{a} libxmu6{a} 
  libxp6{a} libxrender1{a} libxt-dev{a} libxt6{a} libxtst6{a} openjdk-6-jdk 
  openjdk-6-jre{a} openjdk-6-jre-headless{a} openjdk-6-jre-lib{a} 
  ttf-dejavu-core{a} ttf-dejavu-extra{a} x11-common{a} x11proto-core-dev{a} 
  x11proto-input-dev{a} x11proto-kb-dev{a} xtrans-dev{a} 
0 packages upgraded, 48 newly installed, 0 to remove and 0 not upgraded.
Need to get 60.3MB of archives. After unpacking 168MB will be used.
The following packages have unmet dependencies:
  tzdata-java: Depends: tzdata (= 2010i-1) but 2012e-0ubuntu0.10.04 is installed.
The following actions will resolve these dependencies:

Downgrade the following packages:
tzdata [2012e-0ubuntu0.10.04 (now) -> 2010i-1 (lucid)]

Score is 80

Accept this solution? [Y/n/q/?]

答案1

我终于发现了根本原因,所以我将其放在这里以防其他人遇到这种情况。

在设置系统的过程中安装了一些更新后,lucid-updates 存储库不知何故被错误禁用。这意味着所需的 tzdata-java 包无法再找到,而找到的版本太旧,无法正确安装。

我使用 apt-show-versions 工具发现了该问题:

$ apt-show-versions tzdata
tzdata 2012e-0ubuntu0.10.04 newer than version in archive

相关内容