delorie.com/archives/browse.cgi   search  
Mail Archives: cygwin/2012/01/03/12:45:40

X-Recipient: archive-cygwin AT delorie DOT com
X-SWARE-Spam-Status: No, hits=-3.7 required=5.0 tests=BAYES_00,FREEMAIL_FROM,RCVD_IN_DNSWL_NONE,RP_MATCHES_RCVD
X-Spam-Check-By: sourceware.org
Message-ID: <4F033EA9.8010302@alice.it>
Date: Tue, 03 Jan 2012 18:45:13 +0100
From: Angelo Graziosi <angelo DOT graziosi AT alice DOT it>
User-Agent: Mozilla/5.0 (Windows NT 5.1; rv:9.0) Gecko/20111222 Thunderbird/9.0.1
MIME-Version: 1.0
To: Cygwin <cygwin AT cygwin DOT com>
Subject: GCC, '-pg' option and 'mcount' undefined
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

For the sake of completeness, I want to flag the following issue I have 
found on Cygwin.

I have an application that doesn't build on Cygwin (gcc-4.5.3) because 
undefined reference to `_mcount' etc... I have tried to reproduce it 
with this simple example:

$ cat hello.c
#include <stdio.h>

int main()
{
    printf("Hello World\n");
}

$ gcc -c -pg hello.c
$ gcc hello.o -o hello
hello.o:hello.c:(.text+0xa): undefined reference to `_mcount'
hello.o:hello.c:(.text+0xf): undefined reference to `__monstartup'
collect2: ld returned 1 exit status

If I try the same above example (and the true application) on Mac OS X 
Lion with gcc-4.5.3 or on GNU Linux distributions like Fedora14 (gcc 
4.5.1), Kubuntu (gcc-4.6.1), Ubuntu (i386, gcc-4.6.1), it works just fine,

$ ./hello
Hello World

If I want to build the above example on Cygwin, I need to link using the 
same option '-pg',

$ gcc -pg hello.o -o hello
$ ./hello
Hello World

Yes, I can patch my true application to use '-pg' option when it needs, 
but I would know if you (Dave?) have other ideas here.

Thanks,
   Angelo.

--
Problem reports:       http://cygwin.com/problems.html
FAQ:                   http://cygwin.com/faq/
Documentation:         http://cygwin.com/docs.html
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple

- Raw text -


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