Created attachment 396486 [details] build.log I am really new to Gentoo, so just following the error's instructions from emerge. I am compiling on the Raspberry Pi 2 using the Arm arch. Error Message: In file included from ../src/node.cc:35:0: ../src/node_crypto.h:42:24: fatal error: openssl/ec.h: No such file or directory #include <openssl/ec.h> ^ compilation terminated. node.target.mk:132: recipe for target '/var/tmp/portage/net-libs/nodejs-0.12.0/work/node-v0.12.0/out/Release/obj.target/node/src/node.o' failed # emerge --info '=net-libs/nodejs-0.12.0::gentoo' Portage 2.2.14 (python 2.7.9-final-0, default/linux/arm/13.0/armv7a, gcc-4.8.3, glibc-2.19-r1, 3.18.7-v7+ armv7l) ================================================================= System Settings ================================================================= System uname: Linux-3.18.7-v7+-armv7l-with-gentoo-2.2 KiB Mem: 949328 total, 636100 free KiB Swap: 262140 total, 261668 free Timestamp of tree: Fri, 13 Feb 2015 21:00:02 +0000 ld GNU ld (Gentoo 2.24 p1.4) 2.24 app-shells/bash: 4.2_p53 dev-lang/perl: 5.18.2-r2 dev-lang/python: 2.7.9-r1, 3.3.5-r1 dev-util/pkgconfig: 0.28-r1 sys-apps/baselayout: 2.2 sys-apps/openrc: 0.13.9 sys-apps/sandbox: 2.6-r1 sys-devel/autoconf: 2.69 sys-devel/automake: 1.13.4 sys-devel/binutils: 2.24-r3 sys-devel/gcc: 4.8.3 sys-devel/gcc-config: 1.7.3 sys-devel/libtool: 2.4.4 sys-devel/make: 4.0-r1 sys-kernel/linux-headers: 3.16 (virtual/os-headers) sys-libs/glibc: 2.19-r1 Repositories: gentoo ACCEPT_KEYWORDS="arm" ACCEPT_LICENSE="* -@EULA" CBUILD="armv7a-hardfloat-linux-gnueabi" CFLAGS="-O2 -pipe -mcpu=cortex-a7 -mfpu=neon-vfpv4 -mfloat-abi=hard" CHOST="armv7a-hardfloat-linux-gnueabi" CONFIG_PROTECT="/etc" CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/env.d /etc/gconf /etc/gentoo-release /etc/sandbox.d /etc/terminfo" CXXFLAGS="-O2 -pipe -mcpu=cortex-a7 -mfpu=neon-vfpv4 -mfloat-abi=hard" DISTDIR="/usr/portage/distfiles" FCFLAGS="-O2 -pipe -march=armv7-a" FEATURES="assume-digests binpkg-logs config-protect-if-modified distlocks ebuild-locks fixlafiles merge-sync news parallel-fetch preserve-libs protect-owned sandbox sfperms strict unknown-features-warn unmerge-logs unmerge-orphans userfetch userpriv usersandbox usersync" FFLAGS="-O2 -pipe -march=armv7-a" GENTOO_MIRRORS="http://distfiles.gentoo.org" LDFLAGS="-Wl,-O1 -Wl,--as-needed" MAKEOPTS="-j4" PKGDIR="/usr/portage/packages" PORTAGE_CONFIGROOT="/" PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --omit-dir-times --compress --force --whole-file --delete --stats --human-readable --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages" PORTAGE_TMPDIR="/var/tmp" PORTDIR="/usr/portage" PORTDIR_OVERLAY="" USE="acl arm armv5te armv6 armv6t2 berkdb bindist bzip2 cli cracklib crypt cxx dri fortran gdbm iconv ipv6 libav modules ncurses nls nptl openmp pam pcre readline session ssl tcpd unicode zlib" APACHE2_MODULES="authn_core authz_core socache_shmcb unixd actions alias auth_basic authn_alias authn_anon authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache cgi cgid dav dav_fs dav_lock deflate dir disk_cache env expires ext_filter file_cache filter headers include info log_config logio mem_cache mime mime_magic negotiation rewrite setenvif speling status unique_id userdir usertrack vhost_alias" CALLIGRA_FEATURES="kexi words flow plan sheets stage tables krita karbon braindump author" CAMERAS="ptp2" COLLECTD_PLUGINS="df interface irq load memory rrdtool swap syslog" ELIBC="glibc" GPSD_PROTOCOLS="ashtech aivdm earthmate evermore fv18 garmin garmintxt gpsclock itrax mtk3301 nmea ntrip navcom oceanserver oldstyle oncore rtcm104v2 rtcm104v3 sirf superstar2 timing tsip tripmate tnt ublox ubx" INPUT_DEVICES="keyboard mouse evdev" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LIBREOFFICE_EXTENSIONS="presenter-console presenter-minimizer" OFFICE_IMPLEMENTATION="libreoffice" PHP_TARGETS="php5-5" PYTHON_SINGLE_TARGET="python2_7" PYTHON_TARGETS="python2_7 python3_3" RUBY_TARGETS="ruby19 ruby20" USERLAND="GNU" VIDEO_CARDS="exynos fbdev omap omapfb dummy v4l" XTABLES_ADDONS="quota2 psd pknock lscan length2 ipv4options ipset ipp2p iface geoip fuzzy condition tee tarpit sysrq steal rawnat logmark ipmark dhcpmac delude chaos account" Unset: CPPFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, INSTALL_MASK, LANG, LC_ALL, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS, SYNC, USE_PYTHON # emerge -pqv '=net-libs/nodejs-0.12.0::gentoo' [ebuild N ] net-libs/nodejs-0.12.0 USE="npm" I will attach the build log. Thanks again, I know support is community driven. Any help is greatly appreciated.
+ 15 Feb 2015; Patrick Lauer <patrick@gentoo.org> nodejs-0.12.0.ebuild: + Force openssl sanity #540106 Stupid USE="bindist" in stage3 screwing things up again ...
Hi thanks for looking at this problem. I have emerge --sync and tried again with the exact same error. Maybe it is something else? emerge had me add these package.use items: # cat /etc/portage/package.use # required by net-libs/nodejs-0.12.0 # required by nodejs (argument) =dev-libs/openssl-1.0.1k -bindist =net-misc/openssh-6.7 -bindist # required by net-libs/nodejs-0.12.0 # required by nodejs (argument) =dev-libs/openssl-1.0.1j -bindist # required by net-libs/nodejs-0.12.0 # required by nodejs (argument) =dev-libs/openssl-0.9.8z_p4 -bindist Then I tried to compile and the result is the exact same error. Maybe something else is wrong? It complains of a missing file. Error Message: In file included from ../src/node.cc:35:0: ../src/node_crypto.h:42:24: fatal error: openssl/ec.h: No such file or directory #include <openssl/ec.h> Thanks Again
This is a pretty "well known" issue in gentoo for people building openssl with bindist. Patrick has commited a fix which requires openssl to be recompiled. Recompile openssl followed by nodejs. Closing.
Created attachment 396514 [details] build.log (after rebuilding dev-libs/openssl)
Thanks again for your help. I have recompiled openssl and tried to emerge nodejs again with the same error. Maybe I am using the unpatched openssl version? Here is my info again incase it changed. I have also uploaded newer build log. hc ~ # emerge --info '=net-libs/nodejs-0.12.0::gentoo' Portage 2.2.14 (python 2.7.9-final-0, default/linux/arm/13.0/armv7a, gcc-4.8.3, glibc-2.19-r1, 3.18.7-v7+ armv7l) ================================================================= System Settings ================================================================= System uname: Linux-3.18.7-v7+-armv7l-with-gentoo-2.2 KiB Mem: 949328 total, 495740 free KiB Swap: 262140 total, 259300 free Timestamp of tree: Sun, 15 Feb 2015 15:30:01 +0000 ld GNU ld (Gentoo 2.24 p1.4) 2.24 app-shells/bash: 4.2_p53 dev-lang/perl: 5.18.2-r2 dev-lang/python: 2.7.9-r1, 3.3.5-r1 dev-util/pkgconfig: 0.28-r1 sys-apps/baselayout: 2.2 sys-apps/openrc: 0.13.9 sys-apps/sandbox: 2.6-r1 sys-devel/autoconf: 2.69 sys-devel/automake: 1.13.4 sys-devel/binutils: 2.24-r3 sys-devel/gcc: 4.8.3 sys-devel/gcc-config: 1.7.3 sys-devel/libtool: 2.4.4 sys-devel/make: 4.0-r1 sys-kernel/linux-headers: 3.16 (virtual/os-headers) sys-libs/glibc: 2.19-r1 Repositories: gentoo ACCEPT_KEYWORDS="arm" ACCEPT_LICENSE="* -@EULA" CBUILD="armv7a-hardfloat-linux-gnueabi" CFLAGS="-O2 -pipe -mcpu=cortex-a7 -mfpu=neon-vfpv4 -mfloat-abi=hard" CHOST="armv7a-hardfloat-linux-gnueabi" CONFIG_PROTECT="/etc" CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/env.d /etc/gconf /etc/gentoo-release /etc/sandbox.d /etc/terminfo" CXXFLAGS="-O2 -pipe -mcpu=cortex-a7 -mfpu=neon-vfpv4 -mfloat-abi=hard" DISTDIR="/usr/portage/distfiles" FCFLAGS="-O2 -pipe -march=armv7-a" FEATURES="assume-digests binpkg-logs config-protect-if-modified distlocks ebuild-locks fixlafiles merge-sync news parallel-fetch preserve-libs protect-owned sandbox sfperms strict unknown-features-warn unmerge-logs unmerge-orphans userfetch userpriv usersandbox usersync" FFLAGS="-O2 -pipe -march=armv7-a" GENTOO_MIRRORS="http://distfiles.gentoo.org" LDFLAGS="-Wl,-O1 -Wl,--as-needed" MAKEOPTS="-j5" PKGDIR="/usr/portage/packages" PORTAGE_CONFIGROOT="/" PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --omit-dir-times --compress --force --whole-file --delete --stats --human-readable --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages" PORTAGE_TMPDIR="/var/tmp" PORTDIR="/usr/portage" PORTDIR_OVERLAY="" USE="acl arm armv5te armv6 armv6t2 armvfp berkdb bindist bzip2 cli cracklib crypt cxx dri fortran gdbm iconv ipv6 libav modules ncurses nls nptl openmp pam pcre readline session ssl tcpd unicode zlib" APACHE2_MODULES="authn_core authz_core socache_shmcb unixd actions alias auth_basic authn_alias authn_anon authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache cgi cgid dav dav_fs dav_lock deflate dir disk_cache env expires ext_filter file_cache filter headers include info log_config logio mem_cache mime mime_magic negotiation rewrite setenvif speling status unique_id userdir usertrack vhost_alias" CALLIGRA_FEATURES="kexi words flow plan sheets stage tables krita karbon braindump author" CAMERAS="ptp2" COLLECTD_PLUGINS="df interface irq load memory rrdtool swap syslog" ELIBC="glibc" GPSD_PROTOCOLS="ashtech aivdm earthmate evermore fv18 garmin garmintxt gpsclock itrax mtk3301 nmea ntrip navcom oceanserver oldstyle oncore rtcm104v2 rtcm104v3 sirf superstar2 timing tsip tripmate tnt ublox ubx" INPUT_DEVICES="keyboard mouse evdev" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LIBREOFFICE_EXTENSIONS="presenter-console presenter-minimizer" OFFICE_IMPLEMENTATION="libreoffice" PHP_TARGETS="php5-5" PYTHON_SINGLE_TARGET="python2_7" PYTHON_TARGETS="python2_7 python3_3" RUBY_TARGETS="ruby19 ruby20" USERLAND="GNU" VIDEO_CARDS="exynos fbdev omap omapfb dummy v4l" XTABLES_ADDONS="quota2 psd pknock lscan length2 ipv4options ipset ipp2p iface geoip fuzzy condition tee tarpit sysrq steal rawnat logmark ipmark dhcpmac delude chaos account" Unset: CPPFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, INSTALL_MASK, LANG, LC_ALL, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS, SYNC, USE_PYTHON hc ~ # emerge -pqv '=net-libs/nodejs-0.12.0::gentoo' [ebuild N ] net-libs/nodejs-0.12.0 USE="npm"
I just tried emerge with the -uD nodejs and I get this skip message: hc ~ # emerge -uD nodejs Calculating dependencies... done! [ebuild N ~] net-libs/nodejs-0.12.0 USE="npm" WARNING: One or more updates/rebuilds have been skipped due to a dependency conflict: dev-libs/openssl:0 (dev-libs/openssl-1.0.1k:0/0::gentoo, ebuild scheduled for merge) conflicts with >=dev-libs/openssl-0.9.6d:0[bindist] required by (net-misc/openssh-6.7_p1:0/0::gentoo, installed) ^^^^^^^ >>> Verifying ebuild manifests >>> Emerging (1 of 1) net-libs/nodejs-0.12.0::gentoo Then it compiles and errors. I have done the emerge openssh as well and it works by itself. my package.use looks like this: hc ~ # cat /etc/portage/package.use # required by net-libs/nodejs-0.12.0 # required by nodejs (argument) dev-libs/openssl+ -bindist net-misc/openssh+ -bindist # required by net-libs/nodejs-0.12.0 # required by nodejs (argument) =dev-libs/openssl-1.0.1k -bindist # required by net-libs/nodejs-0.12.0 # required by nodejs (argument) =dev-libs/openssl-1.0.1j -bindist I am not sure how to proceed.
*** Bug 518760 has been marked as a duplicate of this bug. ***
Argh. This bindist stuff... One solution – which would be suboptimal – would be allowing to build against the bundled openssl library. I'm not particularly keen about it. Co-maintainers?
I managed to get it to compile by adding -bindist to my global use in make.conf. I then did emerge -auDN @world where it recompiled the ssh and ssl packages. Afterwards I was able to compile nodejs with no problems. So my make.conf line looks like so: USE="armvfp -bindist" Anyway, I would not have known it was related to the bindist flag without your responses, so thanks again! I don't know if this should be closed or not? I have what I need working, but not sure if others need that part fixed? I guess if you use the bindist flag it still a problem.
Should be fixed with https://github.com/gentoo/gentoo-portage-rsync-mirror/pull/118
This should be fixed since 0.12.2-r2.