delorie.com/archives/browse.cgi   search  
Mail Archives: cygwin/2008/06/03/09:34:03

X-Recipient: archive-cygwin AT delorie DOT com
X-Spam-Check-By: sourceware.org
From: "Dave Korn" <dave DOT korn AT artimi DOT com>
To: "'cygwin'" <cygwin AT cygwin DOT com>
References: <4ae9b89d0805301549i5ee30654l5f6335544ea38780 AT mail DOT gmail DOT com> <484135CE DOT 30E20C20 AT dessent DOT net> <4ae9b89d0806030624m6e9ae9f4u69a7d613fd8ab621 AT mail DOT gmail DOT com>
Subject: RE: Cygwin - linker errors - __assert, __itob and __ftol
Date: Tue, 3 Jun 2008 14:33:37 +0100
Message-ID: <02d501c8c57e$6da1f1a0$2708a8c0@CAM.ARTIMI.COM>
MIME-Version: 1.0
X-Mailer: Microsoft Office Outlook 11
In-Reply-To: <4ae9b89d0806030624m6e9ae9f4u69a7d613fd8ab621@mail.gmail.com>
Mailing-List: contact cygwin-help AT cygwin DOT com; run by ezmlm
List-Id: <cygwin.cygwin.com>
List-Unsubscribe: <mailto:cygwin-unsubscribe-archive-cygwin=delorie DOT com AT cygwin DOT 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

C S wrote on 03 June 2008 14:25:

> Brian,
> 
>  i figured out that not only do i need to compile against the
> no-cygwin flag but also link to it as well. so i tried to add the -Wl
> option like this:
> 
> g++ -mno-cygwin -D__int64="long long" -W1-mno-cygwin 

  Ah, there's your problem.  You typed a '1' instead of an 'l'.  And you
forgot the comma.

  No, wait a minute, I was wrong.  The actual problem is that you aren't
correctly describing what you've done.  Cut and paste stuff from your shell
into your email, don't just make it up or you'll inevitably get it wrong.

  Fortunately I can still tell what the actual error is:

> the error i get now is:
> 
> /usr/lib/gcc/i686-pc-mingw32/3.4.4../../../../i686-pc-mingw32/bin/ld:
> unrecognized emulation mode: no-cygwin
> Supported Emulations: i386pe
> collect2: ld returned exit status
> 
> at the prompt i did a ls /lib/gcc/i686-pc-mingw32 and it returned
> 3.4.4 so that seems right.
> 
> any clues or suggestions?? thanks all in advance!

  It's not a linker option in that sense; you just need to make sure you've
passed it to gcc or g++ along with all the .o files and it knows how to
drive the linker from that.  So just remove your -Wl altogether; the plain
old "-mno-cygwin" that you have immediately after the "g++" will do the job.
The effect it has is to cause g++.exe to pass different -L options to ld.


    cheers,
      DaveK
-- 
Can't think of a witty .sigline today....


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