Can you compile node.js under cygwin?

Eliot Moss moss@cs.umass.edu
Sat Oct 26 14:09:00 GMT 2019


On 10/25/2019 1:37 PM, Cary Lewis wrote:
> I tried to clone the repo, and after running configure, then make I got
> this error:
> 
> make -C out BUILDTYPE=Release V=0
>    touch 12396aa5d0c66cc1eba58d7550d4db5f74c0a51c.intermediate
> 
> LD_LIBRARY_PATH=/home/clewis/node/out/Release/lib.host:/home/clewis/node/out/Release/lib.target:$LD_LIBRARY_PATH;
> export LD_LIBRARY_PATH; cd ../.; mkdir -p tools/msvs/genfiles; "mc
> src/res/node_etw_provider.man -h tools/msvs/genfiles -r tools/msvs/genfiles"
> /bin/sh: mc src/res/node_etw_provider.man -h tools/msvs/genfiles -r
> tools/msvs/genfiles: No such file or directory
> make[1]: *** [node_etw.target.mk:17:
> 12396aa5d0c66cc1eba58d7550d4db5f74c0a51c.intermediate] Error 127
> rm 12396aa5d0c66cc1eba58d7550d4db5f74c0a51c.intermediate
> make: *** [Makefile:101: node] Error 2

This program's configure is not cygwin-aware, apparently.  It sees something
that looks like Windows and it's heading toward msvs (Microsoft Visual Studio),
a Windows program, not a cygwin program.

I tried configure --dest-os=linux, and that mostly worked, but assumes ELF
binaries are being used, but cygwin uses PE, not ELF (so that Windows can
run the binaries linked with the cygwin library / runtime).  So the openssl
assembly files failed.  Using configure --dest-os=linux --openssl-no-asm got
past that problem but fails when trying to find /usr/include/sys/syscall.h,
someting not provided under cygwin.

I also tried not giving --dest-os (and it then wants to do the msvs stuff,
i.e., it treats it as Windows) and --dest-os=posix (which is what uname -a
reports under modern cygwin) to no avail.

So IMO node's configure needs to be adjusted, but how to do that correctly
is beyond my knowledge or the time I can invest.

Eliot Moss

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



More information about the Cygwin mailing list