public inbox for cygwin@cygwin.com
 help / color / mirror / Atom feed
From: Jeff Janes <jeff.janes@gmail.com>
To: cygwin@cygwin.com
Subject: compiling coreutils with cygport
Date: Fri, 13 Jul 2012 21:25:00 -0000	[thread overview]
Message-ID: <CAMkU=1yRPm7vu30taP6Y0xNy3BRZxVOYUAL_aMCo794SSbGb6Q@mail.gmail.com> (raw)

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

             reply	other threads:[~2012-07-13 21:25 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-07-13 21:25 Jeff Janes [this message]
2012-07-13 22:04 ` Eric Blake
2012-07-14  7:50   ` Corinna Vinschen
2012-07-14  7:54     ` Corinna Vinschen
2012-07-16  9:01   ` Yaakov (Cygwin/X)
2012-07-16 10:29 ` Yaakov Selkowitz

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to='CAMkU=1yRPm7vu30taP6Y0xNy3BRZxVOYUAL_aMCo794SSbGb6Q@mail.gmail.com' \
    --to=jeff.janes@gmail.com \
    --cc=cygwin@cygwin.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).