This is the mail archive of the cygwin mailing list for the Cygwin project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

RE: Link errors related to vtable


On 10 January 2007 13:04, Eric Blake wrote:

> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA1
> 
> According to George on 1/9/2007 11:02 PM:
>> Hi,
>> I am getting link errors like below when I compile my
>> code(systemc) which is  on cygwin 1.5.23 with gcc
>> 3.4.4
>> (systemc is a c++ class library)
> 
> No wonder.  C++ code MUST be compiled with g++, not gcc (unless you REALLY
> know what you are doing).

  I guess George does, since...

On 10 January 2007 06:03, George wrote:

> -------------------------------------------------------
> g++ -O3 -Wall -I. -I.. -I../../../include -L. -L..
> -L../../../lib-linux -o run.x packet.o
> packet_generator.o hub.o main.o -lsystemc -lm  2>&1 |
> c++filt
>
main.o:main.cpp:(.text$_ZN11packet_fifoC1EN7sc_core14sc_module_nameE[packet_fi
fo::packet_fifo(sc_core::sc_module_name)]+0x91):
> undefined reference to `VTT for packet_fifo'

  George, this will be hard for me to diagnose without an STC.  The first
thing you should do is read "6.4 Vague Linkage" in the gcc manual which
explains how and when gcc decides to emit the vtable for a class; then try
running nm over the object files and seeing if it's there in the expected one
or not.  Maybe there's a link-ordering problem or something.

  If you can produce an STC based only on snippets of main and packet_fifo I'd
be able to figure it out in more detail.

    cheers,
      DaveK
-- 
Can't think of a witty .sigline today....


--
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple
Problem reports:       http://cygwin.com/problems.html
Documentation:         http://cygwin.com/docs.html
FAQ:                   http://cygwin.com/faq/


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]