------- Comment #2 from mikpe at it dot uu dot se 2009-07-07 10:18 ------- (In reply to comment #1) > Now I'm trying to compile gcc-4.4.0 configured as follows: > > ../gcc-4.4.0/configure --build=x86_64-pc-linux-gnu --host=x86_64-pc-linux-gnu > --target=x86_64-pc-linux-gnu --enable-languages=c --disable-multilib > > make fails with the same error message. > > crti.o is located at /usr/lib64/crti.o > > this is the output of cat LOG | grep crti.o | grep ENOENT | grep lib64 after > having issued strace -f make 2> LOG: > > [pid 32046] > access("/sources/gcc-build/gcc/../lib/gcc/x86_64-pc-linux-gnu/4.4.0/../../../../x86_64-pc-linux-gnu/lib/../lib64/crti.o", > R_OK) = -1 ENOENT (No such file or directory) > [pid 32046] > access("/sources/gcc-build/gcc/../lib/gcc/x86_64-pc-linux-gnu/4.4.0/../../../../lib64/crti.o", > R_OK) = -1 ENOENT (No such file or directory) > [pid 32046] access("/lib/../lib64/crti.o", R_OK) = -1 ENOENT (No such file or > directory) > [pid 32046] access("/usr/lib/../lib64/crti.o", R_OK) = -1 ENOENT (No such file > or directory) > > As you can see it tries to access /usr/lib64/crti.o, but inexplicably it can't > find it.
Check that /usr/lib/ exists. If it doesn't then /usr/lib/../lib64/ will ENOENT rather than resolve to /usr/lib64/. Also check that /usr/lib isn't a symlink, in which case /usr/lib/.. may not be /usr . -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=40602