Mail Archives: cygwin/2002/01/22/03:57:43
-------- Original Message --------
From: - Tue Jan 22 09:25:53 2002
X-UIDL: 1011646075.3390.mail
X-Mozilla-Status: 0011
X-Mozilla-Status2: 00000000
Return-Path: <ccj00 AT doc DOT ic DOT ac DOT uk>
Delivered-To: ptsekov AT mail DOT syntrex DOT com
Received: (qmail 3388 invoked by alias); 21 Jan 2002 20:47:55 -0000
Delivered-To: alias-localdelivery-ptsekov AT syntrex DOT com
Received: (qmail 3385 invoked by uid 8); 21 Jan 2002 20:47:55 -0000
Received: from duck.doc.ic.ac.uk (146.169.1.46) by mail.syntrex.com with SMTP id
smtpd11tZLg; Mon, 21 Jan 2002 15:47:54 EST
Received: from texel12.doc.ic.ac.uk ([146.169.49.61] helo=there ident=ccj00) by duck.doc.ic.ac.uk with smtp
(Exim 3.16 #7) id 16SkOs-00036t-00 for ptsekov AT syntrex DOT com; Mon, 21 Jan 2002 19:46:38 +0000
Content-Type: text/plain; charset="iso-8859-1"
From: Christopher January <ccj00 AT doc DOT ic DOT ac DOT uk>
To: Pavel Tsekov <ptsekov AT syntrex DOT com>
Subject: Re: How to make g++ link with QT (a microsoft compatible
library) on x86
Date: Mon, 21 Jan 2002 19:46:38 +0000
X-Mailer: KMail [version 1.3.1]
References: <94A671CDB200AA49ADCC85C7FE10ED4D67FE28 AT hermes DOT super DOT dk>
<3C4BE79C DOT 7000400 AT syntrex DOT com>
In-Reply-To: <3C4BE79C DOT 7000400 AT syntrex DOT com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Message-Id: <E16SkOs-00036t-00 AT duck DOT doc DOT ic DOT ac DOT uk>
> Yep - this is the expected behavior! :) GNU g++ and MSVC
> use different (incompatible) naming schemes to describe
> symbols in C++ classes, thus the GNU linker cannot find the
> appropriate symbol name for the QT symbols when linking
> against MSVC compiled QT.
>
> Torben Neesgaard wrote:
> > Hi
> > Is there a g++ switch for linking with foreign libraries?
> >
> > Under Windows 2000, using g++, I am trying to link with QT,
> > which is released only for Microsoft Visual C++.
> > I get the error-messages shown below. Supposing this caused by
> > incompatibilities between g++ and Visual C I am searching for
> > a switch or something to cope with it. Is g++ that clever?
> > Please don't tell me to recompile g++ with Visual C++...
Visual C++ and g++ are binary incompatible, due not only to different name
mangling, but also to different representations of objects in memory (c.f.
virtual members). The only solution to this problem is to write C wrappers
for the C++ functions.
One of the goals to kde-cygwin team is to port QT/X11 to Win32. Politics
aside, if this ever happens then you will be able to link this library
against g++ objects. However it will be licensed under the GPL (QT Free
edition and QT Coporate edition are not, of course), so you may run into
licensing issues.
QT/X11 already compiles under Cygwin and can be used with the XFree86
server.
There is also an embryonic native Windows libx11 for Cygwin.
re your problem, your best bet is to actually modify your application to
compile under MVC++.
Regards
Chris
--
Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple
Bug reporting: http://cygwin.com/bugs.html
Documentation: http://cygwin.com/docs.html
FAQ: http://cygwin.com/faq/
- Raw text -