[omniORB] Undefined symbol "__pure_virtual"

Duncan Grisby dgrisby@uk.research.att.com
Thu, 27 Jul 2000 11:34:04 +0100


On Thursday 27 July, Sai-Lai Lo wrote:

> This should not be necessary if gcc is built correctly on the platform as
> -lgcc is automatically inserted by the compiler at link stage.
> 
> For example, compiling a hello world program on linux, notice the -lgcc
> flag is among a whole list of -l flags produced by the compiler.

Indeed. It works fine on my FreeBSD 4 installation. There must be
something broken about your set-up.

$ uname -a

FreeBSD myhost 4.0-RELEASE FreeBSD 4.0-RELEASE #0: Mon Mar 20 22:50:22
GMT 2000 root@monster.cdrom.com:/usr/src/sys/compile/GENERIC i386

$ g++295 -v -o hello hello.cc 
Reading specs from
/usr/local/lib/gcc-lib/i386-portbld-freebsd4.0/2.95.2/specs gcc
version 2.95.2 19991024 (release)
 /usr/local/lib/gcc-lib/i386-portbld-freebsd4.0/2.95.2/cpp -lang-c++
-v -D__GNUC__=2 -D__GNUG__=2 -D__GNUC_MINOR__=95 -D__cplusplus -Di386
-Dunix -D__FreeBSD__=4 -D__i386__ -D__unix__ -D__FreeBSD__=4 -D__i386
-D__unix -Acpu(i386) -Amachine(i386) -Asystem(unix) -Asystem(FreeBSD)
-D__EXCEPTIONS -D__ELF__ hello.cc /var/tmp/cccU1677.ii GNU CPP version
2.95.2 19991024 (release) (i386 FreeBSD/ELF) #include "..." search
starts here: #include <...> search starts here:
 /usr/local/lib/gcc-lib/i386-portbld-freebsd4.0/2.95.2/include/g++
 /usr/local/include
 /usr/local/lib/gcc-lib/i386-portbld-freebsd4.0/2.95.2/../../../../i386-portbld-freebsd4.0/include
 /usr/local/lib/gcc-lib/i386-portbld-freebsd4.0/2.95.2/include
 /usr/include
End of search list.
The following default directories have been omitted from the search path:
End of omitted list.
 /usr/local/lib/gcc-lib/i386-portbld-freebsd4.0/2.95.2/cc1plus
/var/tmp/cccU1677.ii -quiet -dumpbase hello.cc -version -o
/var/tmp/ccbN1677.s GNU C++ version 2.95.2 19991024 (release)
(i386-portbld-freebsd4.0) compiled by GNU C version 2.95.2 19991024
(release).
 as -v -o /var/tmp/ccug1677.o /var/tmp/ccbN1677.s
GNU assembler version 2.9.1 (i386-unknown-freebsdelf), using BFD
version 2.9.1
 /usr/local/lib/gcc-lib/i386-portbld-freebsd4.0/2.95.2/collect2 -m
elf_i386 -V -dynamic-linker /usr/libexec/ld-elf.so.1 -o hello
/usr/lib/crt1.o /usr/lib/crti.o
/usr/local/lib/gcc-lib/i386-portbld-freebsd4.0/2.95.2/crtbegin.o
-L/usr/local/lib/gcc-lib/i386-portbld-freebsd4.0/2.95.2
-L/usr/local/lib /var/tmp/ccug1677.o -lstdc++ -lm -lgcc -lc -lgcc
/usr/local/lib/gcc-lib/i386-portbld-freebsd4.0/2.95.2/crtend.o
/usr/lib/crtn.o GNU ld version 2.9.1 (with BFD 2.9.1)
  Supported emulations:
   elf_i386

Cheers,

Duncan.

-- 
 -- Duncan Grisby  \  Research Engineer  --
  -- AT&T Laboratories Cambridge          --
   -- http://www.uk.research.att.com/~dpg1 --