# Revision history [back]

### Installing glibc.x86_64 when glibc.i686 already installed for multilib attempt

I have been trying to give x86_64 an attempt on my 64bit capable machine, and have managed to boot into a 64bit kernel (3.8.13-201.rt12.1.fc18.ccrma.x86_64.rt) and am able to run bash, etc. However, I have no 64bit nvidia driver for this kernel in order to get a graphical interface up. (Before you ask, yes, I am able to compile and run the driver for rt kernels.) At this point, I am stuck because I know it is possible to have multilib working (this is fc17, yes, old, but please don't tell me to upgrade or reinstall at this point) since I have seen "guides" saying they did it for older releases, however they don't really actually say how, just that they managed to do it.

In order to get dkms to compile the driver, I need to, well, be able to compile, which I cannot since that requires installing glibc.x86_64, which I am unable to do:

$gcc -m64 dummy.c -o dummy64 dummy.c:1:0: sorry, unimplemented: 64-bit mode not compiled in  Where dummy.c is just: main(){}  Trying: $ x86_64-linux-gnu-gcc  -m64 dummy.c -o dummy64
/usr/lib/gcc/x86_64-linux-gnu/4.7.1/../../../../x86_64-linux-gnu/bin/ld: cannot find crt1.o: No such file or directory
/usr/lib/gcc/x86_64-linux-gnu/4.7.1/../../../../x86_64-linux-gnu/bin/ld: cannot find crti.o: No such file or directory
/usr/lib/gcc/x86_64-linux-gnu/4.7.1/../../../../x86_64-linux-gnu/bin/ld: cannot find crtbegin.o: No such file or directory
/usr/lib/gcc/x86_64-linux-gnu/4.7.1/../../../../x86_64-linux-gnu/bin/ld: cannot find -lgcc
/usr/lib/gcc/x86_64-linux-gnu/4.7.1/../../../../x86_64-linux-gnu/bin/ld: cannot find -lc
/usr/lib/gcc/x86_64-linux-gnu/4.7.1/../../../../x86_64-linux-gnu/bin/ld: cannot find -lgcc
/usr/lib/gcc/x86_64-linux-gnu/4.7.1/../../../../x86_64-linux-gnu/bin/ld: cannot find crtend.o: No such file or directory
/usr/lib/gcc/x86_64-linux-gnu/4.7.1/../../../../x86_64-linux-gnu/bin/ld: cannot find crtn.o: No such file or directory
collect2: error: ld returned 1 exit status

$rpm -q --whatprovides which x86_64-linux-gnu-gcc gcc-x86_64-linux-gnu-4.7.1-0.1.20120606.fc17.i686$ ls /usr/lib/gcc/x86_64-linux-gnu/4.7.1/../../../../x86_64-linux-gnu/bin/
ar  as  ld  ld.bfd  nm  objcopy  objdump  ranlib  strip

\$ rpm -q cross-gcc-common
cross-gcc-common-4.7.1-0.1.20120606.fc17.noarch


Some searching reveals that those missing files are provided by glibc-devel-2.15-59.fc17.x86_64.rpm, which depends on glibc-2.15-59.fc17.x86_64.rpm. I have both tried using yum to do all the heavy lifting, and just manually downloading all the necessary rpms and installing viarpm, but I just can't get glibc to install:

package glibc-common-2.15-59.fc17.x86_64 is intended for a different architecture

etc. I tried these from both a 32bit environment and booting into the 64bit kernel, but that makes no difference. So, how do I solve this? How can I install glibc.x86_64 alongside the 32bit version so I can continue to run my 32bit programs happily? I would like to avoid using --force since, that is seldom a good idea.