X-Recipient: archive-cygwin@delorie.com
DomainKey-Signature: a=rsa-sha1; c=nofws; d=sourceware.org; h=list-id
	:list-unsubscribe:list-subscribe:list-archive:list-post
	:list-help:sender:to:subject:mime-version:content-type
	:content-transfer-encoding:date:from:message-id; q=dns; s=
	default; b=IPg9AX6FUl5XRFxc9m+WlsXAJeIZ/PJfm4McamCYTVaNH7hjdI9VA
	kVnFzoESX0r1D5b8Qg6LRPaZ1GCvfjyrcaVCP7NGD6xOvEk07f4RfCyJEiy+GP+P
	QcKM1czDNkLamwr5ruttysM5i8qn+f3Nu7HdwqZh1BC5tFiCjASArI=
DKIM-Signature: v=1; a=rsa-sha1; c=relaxed; d=sourceware.org; h=list-id
	:list-unsubscribe:list-subscribe:list-archive:list-post
	:list-help:sender:to:subject:mime-version:content-type
	:content-transfer-encoding:date:from:message-id; s=default; bh=v
	Qry8qMAPPSIpVttZF4ZsBm3sRg=; b=FEX0+4FPvnDwKpYyTG/oWEP5AZisQ/qny
	RiKFfF7sA9NQPbpQMN/2EUQoYbhtFzQdr+/XyGaWFGeR8iVVOi4AuhKIroQ4XJJB
	VXfBXNXdLcwPCtKKhPao4YKSnQQh4Ty9lB3hhydaXoTmNjoCCsWYeHsTUXqGM7a5
	op1EGNiTpU=
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
Authentication-Results: sourceware.org; auth=none
X-Virus-Found: No
X-Spam-SWARE-Status: No, score=-1.9 required=5.0 tests=BAYES_00,FROM_STARTS_WITH_NUMS,RCVD_IN_DNSWL_LOW,SPF_PASS autolearn=ham version=3.3.2 spammy=stock, shipping, personal, delivering
X-HELO: smtp-out-so.shaw.ca
X-Authority-Analysis: v=2.2 cv=Qc8WhoTv c=1 sm=1 tr=0 a=95A0EdhkF1LMGt25d7h1IQ==:117 a=95A0EdhkF1LMGt25d7h1IQ==:17 a=IkcTkHD0fZMA:10 a=SMorJkV_YP8A:10 a=G3gG6ho9WtcA:10 a=2KUf1mbJAAAA:8 a=NaM-9we5AAAA:8 a=B0cxEex319ZqzXFBRdcA:9 a=QEXdDO2ut3YA:10 a=LME9DoRMzU6P72L8X6EC:22 a=KQxfyNE6DlFdbrDZV3aZ:22
To: cygwin@cygwin.com
Subject: Re: distinguishing cygwin from mingw binaries
X-PHP-Originating-Script: 501:rcmail.php
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8; format=flowed
Date: Mon, 10 Jul 2017 11:00:47 -0700
From: Kaz Kylheku <920-082-4242@kylheku.com>
Message-ID: <b133682e5719c0e2a546b4968a0c7233@mail.kylheku.com>
X-Sender: 920-082-4242@kylheku.com
User-Agent: Roundcube Webmail/0.9.2
X-CMAE-Envelope: MS4wfIc8cUY40RprBxcqIPz9YAMfP6ShKGeeALORL1usxAs8pK7AP/84PhhsK4xlkqHHioXQYj0X5eJDvyrOf9VovbK0qedyr+Vlj2BRJJTghKIjmUR7bxl+ xWQkZAGwvwbTjFK2iluDCELN1+qpULe7QBIItIkcUrj9kEiHZHtApRkL
X-IsSubscribed: yes
Content-Transfer-Encoding: 8bit
X-MIME-Autoconverted: from quoted-printable to 8bit by delorie.com id v6AI1E88023139

On 10.07.2017 10:40, Nellis, Kenneth wrote:
> For my personal use, I use gcc to generate binaries, but occasionally I 
> need
> to make a binary available to someone who doesn't use Cygwin. For that 
> I use
> Cygwin's x86_64-w64-mingw32-gcc.
> 
> After the fact, I would like to know whether the binary requires Cygwin 
> support
> or not. One way is: strings foo.exe | grep cygwin1.dll
> 
> Curious what techniques others might use.

There is always the technique of actually packaging the program 
deliverables
and then testing them, beginning with installation, if you were the 
end-user.

If the program doesn't run when installed by itself in C:\Program Files
somewhere, then it might be missing DLLs.

I use a special fork of Cygwin called Cygnal for delivering programs to
users who don't use Cygwin and don't understand POSIX conventions for 
paths
and other things.

http://www.kylheku.com/cygnal/

With this, you make your executable with the regular Cygwin host 
compiler.
Yes, you know your executable needs a CYGWIN1.DLL (and possibly others);
no guesswork. You package the needed DLL's with the program.

Except, you use the CYGWIN1.DLL from the Cygnal project rather than the
stock Cygwin one.

Example software shipping with Cygnal is the port of the TXR language to
Win32 and Win64. Installers available here:
https://bintray.com/kazinator/Binaries/TXR/


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


