fivemack: (Default)
[personal profile] fivemack
We've just got a new machine at work on which I've been asked to install OpenSuSE 10.2 64-bit; this felt entirely straightforward.

Unfortunately, the default install of OpenSuSE doesn't include gcc. When I try installing gcc using YaST2, I get something which looks superficially like gcc, but which says 'gcc: error trying to exec 'cc1': execvp: No such file or directory' whenever I try to compile anything with it.

So, where's cc1 coming from? Deciding now would be a good time to use up some of the EU Assorted Symbol Mountain, I type

for i in /media/SU1020.001/suse/x86_64/*.rpm; do rpm -qpl $i | sed -e "s/^/${i//\//_}/g" | grep cc1; done

which tells me that /usr/lib64/gcc/x86_64-suse-linux/4.1.2/cc1 is provided by cpp41-4.1.2_20061115-5.x86_64.rpm

And indeed /usr/lib64/gcc/x86_64-suse-linux/4.1.2/cc1 exists on the machine. So, why isn't /usr/bin/gcc-4.1 finding it?

Normally strace comes to the rescue, but 'strace /usr/bin/gcc-4.1 -c foo.c' outputs many lines of the form

stat64(0x806b628, 0xff885abc) = -1 ENOENT (No such file or directory)

which are totally useless because strace is failing to dereference the pointer to the filename passed to stat64.
This account has disabled anonymous posting.
If you don't have an account you can create one now.
HTML doesn't work in the subject.
More info about formatting

March 2024

S M T W T F S
     12
3456789
10111213141516
17181920212223
24 252627282930
31      

Most Popular Tags

Style Credit

Expand Cut Tags

No cut tags
Page generated Mar. 23rd, 2026 05:41 am
Powered by Dreamwidth Studios