Follow @Openwall on Twitter for new release announcements and other news
[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <CAKfGGh2e5c5n5cnbgN4yuAimTqTATBWUqceGb1ih1=BHFwaiQQ@mail.gmail.com>
Date: Tue, 26 Aug 2014 21:05:17 +0200
From: "piranna@...il.com" <piranna@...il.com>
To: musl@...ts.openwall.com
Subject: Re: Bug on fstat()?

Sorry for the delay. Ok, I must to say it: the cross-compiler did the
trick :-D I downloaded one of the pre-compiled ones and didn't
understand too much how to use it, so I clone the repository and build
and install it by hand thinking it would help me to understand how it
worked, but didn't :-( Lucklily, I found a Node.js install script from
alpinelinux (http://git.alpinelinux.org/cgit/aports/tree/main/nodejs/APKBUILD)
and a cross-compiler helper script for Parrot AR drone
(https://github.com/felixge/node-cross-compiler/blob/master/platforms/ardrone2.sh)
that gave me some inspiration and I was able to finally compile the
static build :-) I needed to disable OpenSSL support because it gave a
strange error:


  /opt/cross/i686-linux-musl/bin/i686-linux-musl-g++
'-DOPENSSL_NO_SSL2=1' '-DV8_TARGET_ARCH_IA32' '-DENABLE_DISASSEMBLER'
'-DV8_USE_DEFAULT_PLATFORM' -I../deps/v8/src  -pthread -Wall -Wextra
-Wno-unused-parameter -m32 -fno-strict-aliasing -m32 -O3
-ffunction-sections -fdata-sections -fno-tree-vrp
-fno-omit-frame-pointer -fdata-sections -ffunction-sections -O3
-fno-rtti -fno-exceptions -MMD -MF
/home/piranna/Dropbox/Proyectos/NodeOS/NodeOS-QEmu/Layer2-nodejs/deps/node/out/Release/.deps//home/piranna/Dropbox/Proyectos/NodeOS/NodeOS-QEmu/Layer2-nodejs/deps/node/out/Release/obj.target/mksnapshot.ia32/deps/v8/src/mksnapshot.o.d.raw
 -c -o /home/piranna/Dropbox/Proyectos/NodeOS/NodeOS-QEmu/Layer2-nodejs/deps/node/out/Release/obj.target/mksnapshot.ia32/deps/v8/src/mksnapshot.o
../deps/v8/src/mksnapshot.cc
/home/piranna/Dropbox/Proyectos/NodeOS/NodeOS-QEmu/Layer2-nodejs/deps/node/out/Release/obj.target/deps/openssl/libopenssl.a(eng_all.o):
En la función `ENGINE_load_builtin_engines':
eng_all.c:(.text.ENGINE_load_builtin_engines+0x46): referencia a
`ENGINE_load_padlock' sin definir
eng_all.c:(.text.ENGINE_load_builtin_engines+0x4b): referencia a
`ENGINE_load_gost' sin definir
collect2: error: ld returned 1 exit status
deps/openssl/openssl-cli.target.mk:193: recipe for target
'/home/piranna/Dropbox/Proyectos/NodeOS/NodeOS-QEmu/Layer2-nodejs/deps/node/out/Release/openssl-cli'
failed


Seems to be that OpenSSL command line executable is trying to find
this references. I have tried to disable the generation of that target
from GYP but seems more difficult to do that what I though. I know
OpenSSL has some issues with musl, but anyone knows how to fix this?
Seems OpenSSL support is required so NPM can work and to be able to
install packages... :-/

Otherwise, the Node.js static build is working flawlessly and the
problem with fstat() has been fixed with the cross-compiler :-D I'm
having some issues with compiled modules, but probably they are dues
to compile them outside the custom environment (with the current
Node.js version and glibc instead of the development one and musl),
I'll try to make it work from inside them :-)


-- 
"Si quieres viajar alrededor del mundo y ser invitado a hablar en un
monton de sitios diferentes, simplemente escribe un sistema operativo
Unix."
– Linus Tordvals, creador del sistema operativo Linux

Powered by blists - more mailing lists

Confused about mailing lists and their use? Read about mailing lists on Wikipedia and check out these guidelines on proper formatting of your messages.