X-Spam-Check-By: sourceware.org
Message-ID: <4683D230.9030705@cygwin.com>
Date: Thu, 28 Jun 2007 11:22:24 -0400
From: "Larry Hall (Cygwin)" <reply-to-list-only-lh@cygwin.com>
Reply-To: cygwin@cygwin.com
User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.8.1.3) Gecko/20070505 Remi/2.0.0.0-3.fc4.remi Thunderbird/2.0.0.0 Mnenhy/0.7.5.0
MIME-Version: 1.0
To: cygwin@cygwin.com
Subject: Re: How to link with third party libraries using gcc
References: <11331072.post@talk.nabble.com> <4682C0EE.D7088ADD@dessent.net> <11342161.post@talk.nabble.com>
In-Reply-To: <11342161.post@talk.nabble.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit
Mailing-List: contact cygwin-help@cygwin.com; run by ezmlm
List-Id: <cygwin.cygwin.com>
List-Subscribe: <mailto:cygwin-subscribe@cygwin.com>
List-Archive: <http://sourceware.org/ml/cygwin/>
List-Post: <mailto:cygwin@cygwin.com>
List-Help: <mailto:cygwin-help@cygwin.com>, <http://sourceware.org/ml/#faqs>
Sender: cygwin-owner@cygwin.com
Mail-Followup-To: cygwin@cygwin.com
Delivered-To: mailing list cygwin@cygwin.com

km4hr wrote:
> Brian,
> 
> It sounds like the solution could range from something as simple as
> including the ".lib" files on the gcc command line on up to complicated
> stuff I've never heard of like "decorations", "toolchains", and "calling
> conventions".
> 
> I tried the simple suggestion. I copied the ".lib" files to the directory
> where my program is located. I then entered the following command:
> 
> gcc myprog.c library1.lib library2.lib  -o myprog
> 
> I got "undefined reference to ..." errors. One for each library function in
> my program. 
> 
> Next I removed the ".lib" files from the gcc command string as follows:
> 
> gcc myprog.c -o myprog
> 
> I got exactly the same errors as I did with the ".lib" files included.
> Apparently gcc has no idea what the ".lib" files are.


No, it means the '.lib' you gave it doesn't have any of the symbols you
need.  'nm' it and see if it has any symbols at all and what they look
like.  Compare that with feedback you get from the link.  If the symbols
look similar but are different by just "@" and some number suffixes, then
you have a calling convention/decoration problem.  Time to read up on that
stuff.


> Since I have no comprehesion of "decorations", "toolchains", and "calling
> conventions", or how to find out what that means, I wonder if there's
> another explanation. I've got a sinking feeling about this. As if I'm going
> where no man has gone before.


Not at all.  But you need to learn a little bit about the platform you're
working with before things will make some sense to you.


-- 
Larry Hall                              http://www.rfk.com
RFK Partners, Inc.                      (508) 893-9779 - RFK Office
216 Dalton Rd.                          (508) 893-9889 - FAX
Holliston, MA 01746

_____________________________________________________________________

A: Yes.
 > Q: Are you sure?
 >> A: Because it reverses the logical flow of conversation.
 >>> Q: Why is top posting annoying in email?

--
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/

