From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 8686 invoked by alias); 10 May 2007 11:00:58 -0000 Received: (qmail 8673 invoked by uid 22791); 10 May 2007 11:00:57 -0000 X-Spam-Check-By: sourceware.org Received: from kuber.nabble.com (HELO kuber.nabble.com) (216.139.236.158) by sourceware.org (qpsmtpd/0.31) with ESMTP; Thu, 10 May 2007 11:00:38 +0000 Received: from isper.nabble.com ([192.168.236.156]) by kuber.nabble.com with esmtp (Exim 4.63) (envelope-from ) id 1Hm6Nw-0006iI-KF for gcc-help@gcc.gnu.org; Thu, 10 May 2007 04:00:36 -0700 Message-ID: <10410954.post@talk.nabble.com> Date: Thu, 10 May 2007 11:00:00 -0000 From: gccNewbie To: gcc-help@gcc.gnu.org Subject: Simple linking problem MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit X-Nabble-From: bguild@shaw.ca X-IsSubscribed: yes Mailing-List: contact gcc-help-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Id: List-Archive: List-Post: List-Help: Sender: gcc-help-owner@gcc.gnu.org X-SW-Source: 2007-05/txt/msg00087.txt.bz2 After spending years working in Java, I've decided I'd like to do a little C programming. I've gotten gcc, which I think is the first step. In fact, I'm using an old version, 3.2.3 for MinGW. I've done "Hello world" just to be sure gcc is working. Now I'm trying to get gcc to link. I've studed all the options, all the ways to invoke gcc, and I can find nothing helpful. I've got a library in a file starting with 'lib' and ending with '.a'. I've downloaded this file from the web, I've downloaded the source and used the makefile to compile the library. It seems that no matter what I do I cannot get gcc to treat this file as a library containing the stuff that I am absolutely sure it is supposed to contain. I know gcc is finding the file. If I go "gcc -lblah" and it cannot find libblah.a, it will give me an error that tells me the library wasn't found. So the library file is found. I see nothing in the documentation that suggests I should need to do anything more than "gcc -lmylib test.c" to compile 'test.c' with the functions defined in mylib. I have the library, I tell gcc to use the library, and yet it acts as though these library functions are undefined, giving 'undefined reference to' messages. I've looked at all the documentation I can think to study without finding any possible solution. Is there any way to get gcc to tell me exactly what is really in the library file? I can use 'ar' to discover the file names that make up the library, but I'd like to know the function names that are in there so I can tell if gcc is to blame or if the library really doesn't have the things that gcc says it doesn't have. This has got to be a simple problem. I'd just like a hint about where to look for the cause. What do you do when gcc tells you that something is undefined even though you know that it's defined? -- View this message in context: http://www.nabble.com/Simple-linking-problem-tf3720892.html#a10410954 Sent from the gcc - Help mailing list archive at Nabble.com.