Description of problem: xmonad --recompile reports missing libX11.so library when the command is invoked on an x64 system. This is because libX11.x86_64 is not installed as a dependency when xmonad.x86_64 is installed through yum. Installing libX11.x86_64 fixes the problem. Version-Release number of selected component (if applicable): Name : xmonad Arch : x86_64 Version : 0.9.2 Release : 8.fc15 How reproducible: always (100%) Steps to Reproduce: 1. Install the x86_64 versions of xmonad, ghc-xmonad-contrib, ghc-xmonad-contrib-devel, and xmonad-gnome 2. Create a minimal xmonad config in ~/.xmonad/xmonad.hs 3. Invoke `xmonad --recompile` in a terminal Actual results: `xmonad --recompile` fails with linking errors due to a missing libX11.so Expected results: libX11.x86_64 should be pulled as a dependency when xmonad.x86_64 is installed to prevent the linking problem when `xmonad --recompile` is invoked. Additional info:
Hmm, sounds little a suspicious: all of xmonad-core.x86_64, ghc-xmonad-contrib.x86_64 should pull in libX11.x86_64. Did you start from a minimal install or convert from a 32bit install or something weird like that? Could you please attach the relevant output from yum.log?
My system is a fresh Fedora 15 x64 installation using the x64 minimal iso. Here are some points in yum.log that might be relevant: Jul 12 06:08:20 Installed: libX11-1.4.3-1.fc15.i686 Jul 16 00:25:16 Installed: libX11-devel-1.4.3-1.fc15.i686 ... Jul 18 01:06:14 Installed: ghc-base-4.3.1.0-16.3.fc15.x86_64 Jul 18 01:06:14 Installed: ghc-old-locale-1.0.0.2-16.3.fc15.x86_64 Jul 18 01:06:14 Installed: ghc-old-time-1.0.0.6-16.3.fc15.x86_64 Jul 18 01:06:15 Installed: ghc-unix-2.4.2.0-16.3.fc15.x86_64 Jul 18 01:06:15 Installed: ghc-filepath-1.2.0.0-16.3.fc15.x86_64 Jul 18 01:06:16 Installed: ghc-directory-1.1.0.0-16.3.fc15.x86_64 Jul 18 01:06:16 Installed: ghc-array-0.3.0.2-16.3.fc15.x86_64 Jul 18 01:06:16 Installed: ghc-process-1.0.1.5-16.3.fc15.x86_64 Jul 18 01:06:17 Installed: ghc-syb-0.3-4.fc15.x86_64 Jul 18 01:06:17 Installed: ghc-X11-1.5.0.0-11.fc15.x86_64 Jul 18 01:06:18 Installed: ghc-time-1.2.0.3-16.3.fc15.x86_64 Jul 18 01:06:18 Installed: ghc-transformers-0.2.2.0-6.fc15.x86_64 Jul 18 01:06:18 Installed: ghc-mtl-2.0.1.0-4.fc15.x86_64 Jul 18 01:06:19 Installed: ghc-random-1.0.0.3-16.3.fc15.x86_64 Jul 18 01:06:19 Installed: ghc-containers-0.4.0.0-16.3.fc15.x86_64 Jul 18 01:06:20 Installed: ghc-bytestring-0.9.1.10-16.3.fc15.x86_64 Jul 18 01:06:20 Installed: ghc-extensible-exceptions-0.1.1.2-16.3.fc15.x86_64 Jul 18 01:06:20 Installed: ghc-xmonad-0.9.2-8.fc15.x86_64 Jul 18 01:06:21 Installed: ghc-utf8-string-0.3.6-9.fc15.1.x86_64 Jul 18 01:06:21 Installed: ghc-haskell98-1.1.0.1-16.3.fc15.x86_64 Jul 18 01:06:21 Installed: ghc-X11-xft-0.3-15.fc15.x86_64 Jul 18 01:06:23 Installed: libmpc-0.8.3-0.3.svn855.fc15.x86_64 Jul 18 01:06:23 Installed: libXext-devel-1.2.0-2.fc15.x86_64 Jul 18 01:06:24 Installed: libXinerama-devel-1.1.1-2.fc15.x86_64 Jul 18 01:06:25 Installed: cpp-4.6.0-9.fc15.x86_64 Jul 18 01:06:26 Installed: ghc-xmonad-contrib-0.9.2-3.fc15.x86_64 Jul 18 01:06:26 Installed: libXrender-devel-0.9.6-2.fc15.x86_64 Jul 18 01:06:27 Installed: kernel-headers-2.6.38.8-35.fc15.x86_64 Jul 18 01:06:28 Installed: glibc-headers-2.14-4.x86_64 Jul 18 01:06:29 Installed: glibc-devel-2.14-4.x86_64 Jul 18 01:06:29 Installed: ppl-pwl-0.11.2-1.fc15.x86_64 Jul 18 01:06:30 Installed: ppl-0.11.2-1.fc15.x86_64 Jul 18 01:06:30 Installed: cloog-ppl-0.15.9-3.fc15.x86_64 Jul 18 01:06:33 Installed: gcc-4.6.0-9.fc15.x86_64 Jul 18 01:06:33 Installed: 1:gmp-devel-4.3.2-3.fc15.x86_64 Jul 18 01:06:34 Installed: xorg-x11-apps-7.6-2.fc15.x86_64 Jul 18 01:06:34 Installed: zlib-devel-1.2.5-3.fc15.x86_64 Jul 18 01:06:35 Installed: freetype-devel-2.4.4-4.fc15.x86_64 Jul 18 01:06:36 Installed: fontconfig-devel-2.8.0-3.fc15.x86_64 Jul 18 01:06:36 Installed: libXft-devel-2.2.0-2.fc15.x86_64 Jul 18 01:06:36 Installed: xterm-268-1.fc15.x86_64 Jul 18 01:06:37 Installed: xmonad-core-0.9.2-8.fc15.x86_64 Jul 18 01:06:37 Installed: libffi-devel-3.0.9-2.fc15.x86_64 Jul 18 01:06:40 Installed: ghc-7.0.2-16.3.fc15.x86_64 Jul 18 01:06:44 Installed: ghc-base-devel-4.3.1.0-16.3.fc15.x86_64 Jul 18 01:06:47 Installed: ghc-unix-devel-2.4.2.0-16.3.fc15.x86_64 Jul 18 01:06:47 Installed: ghc-old-locale-devel-1.0.0.2-16.3.fc15.x86_64 Jul 18 01:06:48 Installed: ghc-old-time-devel-1.0.0.6-16.3.fc15.x86_64 Jul 18 01:06:48 Installed: ghc-filepath-devel-1.2.0.0-16.3.fc15.x86_64 Jul 18 01:06:49 Installed: ghc-directory-devel-1.1.0.0-16.3.fc15.x86_64 Jul 18 01:06:49 Installed: ghc-process-devel-1.0.1.5-16.3.fc15.x86_64 Jul 18 01:06:50 Installed: ghc-extensible-exceptions-devel-0.1.1.2-16.3.fc15.x86_64 Jul 18 01:06:50 Installed: ghc-array-devel-0.3.0.2-16.3.fc15.x86_64 Jul 18 01:06:52 Installed: ghc-containers-devel-0.4.0.0-16.3.fc15.x86_64 Jul 18 01:06:53 Installed: ghc-time-devel-1.2.0.3-16.3.fc15.x86_64 Jul 18 01:06:54 Installed: ghc-random-devel-1.0.0.3-16.3.fc15.x86_64 Jul 18 01:06:54 Installed: ghc-haskell98-devel-1.1.0.1-16.3.fc15.x86_64 Jul 18 01:06:55 Installed: ghc-syb-devel-0.3-4.fc15.x86_64 Jul 18 01:06:56 Installed: ghc-X11-devel-1.5.0.0-11.fc15.x86_64 Jul 18 01:06:57 Installed: ghc-bytestring-devel-0.9.1.10-16.3.fc15.x86_64 Jul 18 01:06:58 Installed: ghc-utf8-string-devel-0.3.6-9.fc15.1.x86_64 Jul 18 01:06:59 Installed: ghc-X11-xft-devel-0.3-15.fc15.x86_64 Jul 18 01:07:00 Installed: ghc-transformers-devel-0.2.2.0-6.fc15.x86_64 Jul 18 01:07:00 Installed: ghc-mtl-devel-2.0.1.0-4.fc15.x86_64 Jul 18 01:07:01 Installed: ghc-xmonad-devel-0.9.2-8.fc15.x86_64 Jul 18 01:07:03 Installed: ghc-xmonad-contrib-devel-0.9.2-3.fc15.x86_64 Jul 18 01:07:04 Installed: xmonad-0.9.2-8.fc15.x86_64 Jul 18 01:07:04 Installed: xmonad-gnome-0.9.2-8.fc15.x86_64 ... Jul 20 22:45:06 Installed: libX11-devel-1.4.3-1.fc15.x86_64 I'm attaching the whole yum.log in this report since there are a lot of i686 packages at the time of installation.
Created attachment 514119 [details] yum.log since the time of Fedora 15 installation
I see thanks - I am still a bit confused. What is the output of the following: 1. rpm -qa libX11\* 2. rpm -V ghc-X11 How exactly did you install F15 originally?
You're welcome. Here's the output for: 1. rpm -qa libX11\* libX11-devel-1.4.3-1.fc15.x86_64 libX11-common-1.4.3-1.fc15.noarch libX11-1.4.3-1.fc15.i686 libX11-devel-1.4.3-1.fc15.i686 libX11-1.4.3-1.fc15.x86_64 2. rpm -V ghc-X11 No output. So I verified if ghc-X11 is installed: yum list installed | grep ghc-X11 ghc-X11.x86_64 1.5.0.0-11.fc15 @fedora ghc-X11-devel.x86_64 1.5.0.0-11.fc15 @fedora ghc-X11-xft.x86_64 0.3-15.fc15 @fedora ghc-X11-xft-devel.x86_64 0.3-15.fc15 @fedora I installed F15 by selecting a mirror in http://mirrors.fedoraproject.org/publiclist/Fedora/15/x86_64/. If I'm not mistaken I used a netinst iso found in http://fedora.inode.at/fedora/linux/releases/15/Fedora/x86_64/iso/Fedora-15-x86_64-netinst.iso. Sorry if I can't remember the exact link location. I double checked the actual iso in my bootable usb and it's filename is Fedora-15-x86_64-netinst.iso. I opted to do a netinstall because I haven't found a working liveiso and I do not have a working Fedora installation to make one for myself.
I see thank you. Then could you also attach /root/install.log, please? Would still like to get to the bottom of this.
Created attachment 515551 [details] /root/install.log Sure. Here it is. Thank you!
Ok I think this is a yum devel multilib issue. Your install of libao.i686: Jul 16 00:25:16 Installed: libX11-devel-1.4.3-1.fc15.i686 Jul 16 00:25:17 Installed: libao-1.0.0-3.fc15.i686 made Jul 18 01:07:04 Installed: xmonad-0.9.2-8.fc15.x86_64 think that libX11-devel is already installed since it can differentiate between x86_64 and i686. So ideally the libX11-devel requires should specify the arch. Unfortunately short of a filepath requires I am not very sure how to do that in rpm. I guess: Jul 20 22:45:06 Installed: libX11-devel-1.4.3-1.fc15.x86_64 then fixed your problem, right?
(In reply to comment #8) > think that libX11-devel is already installed since it > can differentiate between x86_64 and i686. I mean can't. > So ideally the libX11-devel requires should specify > the arch. Unfortunately short of a filepath requires > I am not very sure how to do that in rpm. Ok I just got educated on #fedora-devel about %{?_isa} which should indeed fix this and avoid the problem from reoccurring in the future. Thank you very much for your report! This should be fixed in xmonad-0.9.2-10.fc17. * Thu Jul 28 2011 Jens Petersen <petersen> - 0.9.2-10 - add _isa to the ghc-xmonad-contrib-devel requires to avoid missing libX11.so when custom linking (reported by Evan Dale Aromin, #723558) We may well backport this fix later to F16 and earlier.
Erm, well above is for the similar but unlikely issue for haskell library devel packages. The correct fix for C library devel packages is actually needed in ghc-rpm-macros, which handles ghc_pkg_c_deps.
> I guess: > > Jul 20 22:45:06 Installed: libX11-devel-1.4.3-1.fc15.x86_64 > > then fixed your problem, right? Yes. "yum provides */libX11.so" made me figure out what's needed.
> Thank you very much for your report! > > This should be fixed in xmonad-0.9.2-10.fc17. I'm glad to help. Thank you so much for answering back to my report! > * Thu Jul 28 2011 Jens Petersen <petersen> - 0.9.2-10 > - add _isa to the ghc-xmonad-contrib-devel requires to avoid missing libX11.so > when custom linking (reported by Evan Dale Aromin, #723558) > > We may well backport this fix later to F16 and earlier. Until the fix is backported, should this be added to the F15 common bugs wiki?
(In reply to comment #12) > Until the fix is backported, should this be added to the F15 common bugs wiki? That might be overkill: I don't know if anyone else has hit this problem? Though I still wonder why libX11-devel-1.4.3-1.fc15.i686 was installed? Having thought again about this I conclude that it is really up to the individual libraries to add the %{_isa} to their requires. Generically we can't be sure that an arbitrary -devel package is arch or noarch: though no doubt yum could handle this better.
I have made local changes to all the ghc-*.spec files that use ghc_pkg_c_deps to append %{?_isa} to foreign devel deps, and will commit those soon or next I rebuild the packages.
Fixed in ghc-X11-1.5.0.0-13.fc17 and ghc-X11-xft-0.3.1-1.fc17.