Package: gcc-3.3 Version: 1:3.3.1-0pre0 Severity: normal Hello,
I remarked a problem with gcc on Sparc which concerns the linking order of libraries. I have done a simple test to show that: First foo.c: <---> void foo() { } <---> Second file, main.c: <---> int main() { foo(); return 0; } <---> Then the commands: gcc -c -o foo.o foo.c ar -rcu libutil.a foo.o ranlib libutil.a gcc -c -o main.o main.c Until there everything works on all architectures. But when linking, I get the following on Sparc: gcc -o main main.o -L. -lutil main.o(.text+0x4): In function `main': : undefined reference to `foo' collect2: ld returned 1 exit status It seems that the library /usr/lib/libutil.a is used instead of the libutil.a in the current directory. AFAIK, the problem appears only on Sparc (among Debian supported architectures), and moreover only with gcc-3.2 and gcc-3.3 (it works well with gcc-2.95). Aurelien -- System Information: Debian Release: testing/unstable Architecture: sparc Kernel: Linux vore 2.4.21-rc2 #1 Fri May 16 09:03:19 EDT 2003 sparc64 Locale: LANG=C, LC_CTYPE=C Versions of packages gcc-3.3 depends on: ii binutils 2.14.90.0.4-0.1 The GNU assembler, linker and bina ii cpp-3.3 1:3.3.1-0pre0 The GNU C preprocessor ii gcc-3.3-base 1:3.3.1-0pre0 The GNU Compiler Collection (base ii libc6 2.3.2-1 GNU C Library: Shared libraries an ii libgcc1 1:3.3.1-0pre0 GCC support library -- no debconf information