From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 19899 invoked by alias); 13 Jul 2012 21:25:18 -0000 Received: (qmail 19872 invoked by uid 22791); 13 Jul 2012 21:25:17 -0000 X-SWARE-Spam-Status: No, hits=-3.3 required=5.0 tests=AWL,BAYES_00,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,FREEMAIL_FROM,KHOP_RCVD_TRUST,RCVD_IN_DNSWL_LOW,RCVD_IN_HOSTKARMA_YE,TW_YG X-Spam-Check-By: sourceware.org Received: from mail-gg0-f171.google.com (HELO mail-gg0-f171.google.com) (209.85.161.171) by sourceware.org (qpsmtpd/0.43rc1) with ESMTP; Fri, 13 Jul 2012 21:25:04 +0000 Received: by ggmi1 with SMTP id i1so4419762ggm.2 for ; Fri, 13 Jul 2012 14:25:04 -0700 (PDT) MIME-Version: 1.0 Received: by 10.43.104.202 with SMTP id dn10mr1787277icc.29.1342214703890; Fri, 13 Jul 2012 14:25:03 -0700 (PDT) Received: by 10.42.80.65 with HTTP; Fri, 13 Jul 2012 14:25:03 -0700 (PDT) Date: Fri, 13 Jul 2012 21:25:00 -0000 Message-ID: Subject: compiling coreutils with cygport From: Jeff Janes To: cygwin@cygwin.com Content-Type: text/plain; charset=ISO-8859-1 X-IsSubscribed: yes 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 X-SW-Source: 2012-07/txt/msg00292.txt.bz2 If I use setup.exe to download the src for coreutils (just by checking the "Src?" checkbox in the gui) , and then use cygport to build it, it fails. The reason it fails seems to be that ginstall.exe does not have the proper manifest file so windows refuses to execute it. This is the same error you get if you try to build coreutils downloaded from upstream gnu sources. cygport coreutils-8.15-1.cygport prep compile .... make[2]: Entering directory `/usr/src/coreutils-8.15-1/build/man' GEN chcon.1 GEN chgrp.1 GEN chmod.1 GEN cksum.1 GEN chown.1 GEN dd.1 GEN dir.1 GEN dircolors.1 GEN install.1 help2man: can't get `--help' info from install.td/install Makefile:1833: recipe for target `install.1' failed make[2]: *** [install.1] Error 126 make[2]: *** Waiting for unfinished jobs.... GEN ls.1 make[2]: Leaving directory `/usr/src/coreutils-8.15-1/build/man' Makefile:1594: recipe for target `all-recursive' failed make[1]: *** [all-recursive] Error 1 make[1]: Leaving directory `/usr/src/coreutils-8.15-1/build' Makefile:1549: recipe for target `all' failed make: *** [all] Error 2 *** ERROR: make failed This error is present when using the latest cygport, but it has not new to that version, it has been around for months, and on multiple different systems. If I delete the two patch files which setup.exe automatically downloads into /usr/src (coreutils-8.15-1.src.patch and coreutils-8.15-1.cygwin.patch), and then run cygport as before, it compiles fine. Also, it works if I delete all the files which setup.exe downloads to /usr/src except for the "coreutils-8.15-1.cygport" one, and then run: cygport coreutils-8.15-1.cygport download prep compile So it looks like the setup.exe is giving me a coreutils tar ball which has already been patched to work with cygwin, but is also giving me some patch files which undo that and cause it to be broken again. I can work around that by deleting the patch files, but it doesn't seem like that should be necessary. Is the problem in cygport, or setup.exe, or in my understanding of how these things are supposed to work together? As an aside, the reason I wanted to build coreutils from source is that I was trying to figure out why cut.exe is so slow, even under LANG=C. It is slow both compared to a functionally equivalent invocation of cygwin's awk.exe, and compared to running cut on a linux VM. What I found was that cut.exe is slow because the "putchar" function is slow under cygwin. cut.exe uses "putchar" to generate its output, while awk.exe does not. I'm kind of at a dead-end there, as I can't figure out where putchar itself is implemented. So I've just learned to use awk.exe rather than cut.exe when I care about performance. Cheers, Jeff -- 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