Followup to libstdc++ needing lpthread on i586-linux

Ross Alexander rossa@stimpy.math.auckland.ac.nz
Tue Sep 30 15:42:00 GMT 1997


stimpy:~$ cat test.cc
#include <iostream.h>
int main()
{
  cout << "Hello World.\n";
}

stimpy:~$ gcc -v
Reading specs from /usr/lib/gcc-lib/i586-linux/egcs-2.90.10/specs
gcc version egcs-2.90.10 970924 (gcc2-970802 experimental)

stimpy:~$ g++ -v test.cc
Reading specs from /usr/lib/gcc-lib/i586-linux/egcs-2.90.10/specs
gcc version egcs-2.90.10 970924 (gcc2-970802 experimental)
 /usr/lib/gcc-lib/i586-linux/egcs-2.90.10/cpp -lang-c++ -v -undef -D__GNUC__=2 -D__GNUG__=2 -D__cplusplus -D__GNUC_MINOR__=90 -D__ELF__ -Dunix -Dlinux -D__ELF__ -D__unix__ -D__linux__ -D__unix -D__linux -Asystem(posix) -D__EXCEPTIONS -Di386 -Di586 -Asystem(unix) -Acpu(i386) -Amachine(i386) -D__i386__ -D__i586__ -Asystem(unix) -Acpu(i386) -Amachine(i386) test.cc /tmp/cca18906.ii
GNU CPP version egcs-2.90.10 970924 (gcc2-970802 experimental) (i386 Linux/ELF)
#include "..." search starts here:
#include <...> search starts here:
 /usr/include/g++
 /usr/lib/g++-include
 /usr/local/include
 /usr/i586-linux/include
 /usr/lib/gcc-lib/i586-linux/egcs-2.90.10/include
 /usr/include
End of search list.
 /usr/lib/gcc-lib/i586-linux/egcs-2.90.10/cc1plus /tmp/cca18906.ii -quiet -dumpbase test.cc -version -o /tmp/cca18906.s
GNU C++ version egcs-2.90.10 970924 (gcc2-970802 experimental) (i586-linux) compiled by GNU C version egcs-2.90.10 970924 (gcc2-970802 experimental).
 as -V -Qy -o /tmp/cca189061.o /tmp/cca18906.s
GNU assembler version 2.8.1 (i686-linux), using BFD version 2.8.1
 /usr/lib/gcc-lib/i586-linux/egcs-2.90.10/ld -m elf_i386 -dynamic-linker /lib/ld-linux.so.2 /usr/lib/crt1.o /usr/lib/crti.o /usr/lib/gcc-lib/i586-linux/egcs-2.90.10/crtbegin.o -L/usr/lib/gcc-lib/i586-linux/egcs-2.90.10 -L/usr/i586-linux/lib /tmp/cca189061.o -lstdc++ -lm -lgcc -lc -lgcc /usr/lib/gcc-lib/i586-linux/egcs-2.90.10/crtend.o /usr/lib/crtn.o
/usr/lib/libstdc++.so: undefined reference to `_pthread_cleanup_pop_restore'
/usr/lib/libstdc++.so: undefined reference to `_pthread_cleanup_push_defer'
collect2: ld returned 1 exit status

stimpy:~$ g++ -v test.cc -lpthread
Reading specs from /usr/lib/gcc-lib/i586-linux/egcs-2.90.10/specs
gcc version egcs-2.90.10 970924 (gcc2-970802 experimental)
 /usr/lib/gcc-lib/i586-linux/egcs-2.90.10/cpp -lang-c++ -v -undef -D__GNUC__=2 -D__GNUG__=2 -D__cplusplus -D__GNUC_MINOR__=90 -D__ELF__ -Dunix -Dlinux -D__ELF__ -D__unix__ -D__linux__ -D__unix -D__linux -Asystem(posix) -D__EXCEPTIONS -Di386 -Di586 -Asystem(unix) -Acpu(i386) -Amachine(i386) -D__i386__ -D__i586__ -Asystem(unix) -Acpu(i386) -Amachine(i386) test.cc /tmp/cca18912.ii
GNU CPP version egcs-2.90.10 970924 (gcc2-970802 experimental) (i386 Linux/ELF)
#include "..." search starts here:
#include <...> search starts here:
 /usr/include/g++
 /usr/lib/g++-include
 /usr/local/include
 /usr/i586-linux/include
 /usr/lib/gcc-lib/i586-linux/egcs-2.90.10/include
 /usr/include
End of search list.
 /usr/lib/gcc-lib/i586-linux/egcs-2.90.10/cc1plus /tmp/cca18912.ii -quiet -dumpbase test.cc -version -o /tmp/cca18912.s
GNU C++ version egcs-2.90.10 970924 (gcc2-970802 experimental) (i586-linux) compiled by GNU C version egcs-2.90.10 970924 (gcc2-970802 experimental).
 as -V -Qy -o /tmp/cca189121.o /tmp/cca18912.s
GNU assembler version 2.8.1 (i686-linux), using BFD version 2.8.1
 /usr/lib/gcc-lib/i586-linux/egcs-2.90.10/ld -m elf_i386 -dynamic-linker /lib/ld-linux.so.2 /usr/lib/crt1.o /usr/lib/crti.o /usr/lib/gcc-lib/i586-linux/egcs-2.90.10/crtbegin.o -L/usr/lib/gcc-lib/i586-linux/egcs-2.90.10 -L/usr/i586-linux/lib /tmp/cca189121.o -lpthread -lstdc++ -lm -lgcc -lc -lgcc /usr/lib/gcc-lib/i586-linux/egcs-2.90.10/crtend.o /usr/lib/crtn.o
stimpy:~$ uname -a
Linux stimpy 2.0.30 #60 Mon May 12 11:43:10 NZST 1997 i686 unknown
stimpy:~$ 

Sorry about the confusion before.

Ross Alexander



More information about the Gcc mailing list