delorie.com/archives/browse.cgi   search  
Mail Archives: cygwin/2007/06/28/11:23:17

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 AT cygwin DOT com>
Reply-To: cygwin AT cygwin DOT 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 AT cygwin DOT com
Subject: Re: How to link with third party libraries using gcc
References: <11331072 DOT post AT talk DOT nabble DOT com> <4682C0EE DOT D7088ADD AT dessent DOT net> <11342161 DOT post AT talk DOT nabble DOT com>
In-Reply-To: <11342161.post@talk.nabble.com>
Mailing-List: contact cygwin-help AT cygwin DOT com; run by ezmlm
List-Id: <cygwin.cygwin.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

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/

- Raw text -


  webmaster     delorie software   privacy  
  Copyright © 2019   by DJ Delorie     Updated Jul 2019