delorie.com/archives/browse.cgi | search |
X-Spam-Check-By: | sourceware.org |
From: | "Dave Korn" <dave DOT korn AT artimi DOT com> |
To: | <cygwin AT cygwin DOT com> |
Subject: | RE: Link errors related to vtable |
Date: | Wed, 10 Jan 2007 15:05:12 -0000 |
Message-ID: | <004101c734c8$ba883260$a501a8c0@CAM.ARTIMI.COM> |
MIME-Version: | 1.0 |
X-Mailer: | Microsoft Office Outlook 11 |
In-Reply-To: | <45A4E422.3000903@byu.net> |
Mailing-List: | contact cygwin-help AT cygwin DOT com; run by ezmlm |
List-Id: | <cygwin.cygwin.com> |
List-Unsubscribe: | <mailto:cygwin-unsubscribe-archive-cygwin=delorie DOT com AT cygwin DOT com> |
List-Subscribe: | <mailto:cygwin-subscribe AT cygwin DOT com> |
List-Archive: | <http://sourceware.org/ml/cygwin/> |
List-Post: | <mailto:cygwin AT cygwin DOT com> |
List-Help: | <mailto:cygwin-help AT cygwin DOT com>, <http://sourceware.org/ml/#faqs> |
Sender: | cygwin-owner AT cygwin DOT com |
Mail-Followup-To: | cygwin AT cygwin DOT com |
Delivered-To: | mailing list cygwin AT cygwin DOT com |
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/
webmaster | delorie software privacy |
Copyright © 2019 by DJ Delorie | Updated Jul 2019 |