From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 98107 invoked by alias); 11 Jul 2017 14:43:15 -0000 Mailing-List: contact cygwin-help@cygwin.com; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: cygwin-owner@cygwin.com Mail-Followup-To: cygwin@cygwin.com Received: (qmail 97768 invoked by uid 89); 11 Jul 2017 14:43:14 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-1.4 required=5.0 tests=AWL,BAYES_00,FREEMAIL_FROM,RCVD_IN_DNSWL_NONE,RCVD_IN_SORBS_SPAM,SPF_PASS autolearn=no version=3.3.2 spammy=kaz, Kylheku, kylheku, Kaz X-HELO: mail-it0-f48.google.com Received: from mail-it0-f48.google.com (HELO mail-it0-f48.google.com) (209.85.214.48) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with ESMTP; Tue, 11 Jul 2017 14:43:12 +0000 Received: by mail-it0-f48.google.com with SMTP id v202so65255378itb.0 for ; Tue, 11 Jul 2017 07:43:12 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:subject:to:references:from:message-id:date :user-agent:mime-version:in-reply-to:content-language :content-transfer-encoding; bh=tWI5h5np7CAosSE93/6jLE1eX4F499Ci7Q+n1hBuXtE=; b=DgcpYUWAnIs2odHzgwHh+ubvmqrm8W6BXGhBvSnWqAz4SZKxuotiJA+G0+O4B7YG/q HiJKdrjab7RPLF1cOCMaJ2Et3bQDCBSvQmQa1q9MHMyK14F34o5e7pMexXyDWVl3crhu W1svvQ2PvXjtlTbHghlNxYxKpKRv+FpBxJ9SN6j/niir/XNQAbxt0IHCH3MHcjZE6Pwx phH7kHldgzjq0UtD5AtFa+eH8h27LLpP5YfKfV+JO1vS8iKwD0ZypcuI4qnAN9wOLAdR PfJE6ZAzZA0VZC0FlOstDHVKvRPSOO0BzQ7w0yPe6CVLA8LAp4q1Jtd32ZkTUcQ8AikA 135Q== X-Gm-Message-State: AIVw112Dwe4kjHltyAYMeJ36l4oK92J8zoWS/so2PJyJO0Tf3R1dmIIW myVH/eujOsfQNI4j X-Received: by 10.36.31.129 with SMTP id d123mr17615741itd.5.1499784191136; Tue, 11 Jul 2017 07:43:11 -0700 (PDT) Received: from [192.168.0.6] (d4-50-42-50.try.wideopenwest.com. [50.4.50.42]) by smtp.gmail.com with ESMTPSA id y83sm91652ioe.17.2017.07.11.07.43.10 for (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Tue, 11 Jul 2017 07:43:10 -0700 (PDT) Subject: Re: distinguishing cygwin from mingw binaries To: cygwin@cygwin.com References: From: cyg Simple Message-ID: <6cac6454-4378-9043-bdb6-5ed85cd2004c@gmail.com> Date: Tue, 11 Jul 2017 14:43:00 -0000 User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:52.0) Gecko/20100101 Thunderbird/52.2.1 MIME-Version: 1.0 In-Reply-To: Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-IsSubscribed: yes X-SW-Source: 2017-07/txt/msg00186.txt.bz2 On 7/10/2017 2:00 PM, Kaz Kylheku wrote: > 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/ CAUTION: This requires you provide the entire source set of Cygnal since it is actually Cygwin which has the GPL license applied to it. You might as well package Cygwin1.dll itself. -- cyg Simple -- 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