Opened 3 months ago

Last modified 3 months ago

#58893 assigned defect

nodejs12 @12.9.1: error: use of undeclared identifier 'strnlen'

Reported by: ryandesign (Ryan Schmidt) Owned by: ci42
Priority: Normal Milestone:
Component: ports Version:
Keywords: snowleopard Cc:
Port: nodejs12

Description

nodejs12 does not build on Mac OS X 10.6:

../deps/v8/src/utils/vector.h:250:29: error: use of undeclared identifier 'strnlen'
  return Vector<char>(data, strnlen(data, max));
                            ^
1 error generated.

The legacy support portgroup provides an implementation of this function.

I have not checked the other node versions.

Attachments (1)

nodejs12-1068-fail.log.zip (107.8 KB) - added by kencu (Ken) 3 months ago.
10.6.8 build fail log after legacysupport PG added

Download all attachments as: .zip

Change History (4)

comment:1 Changed 3 months ago by kencu (Ken)

others are OK. I fixed them all back in April.

$ port -v installed | grep nodejs
  nodejs4 @4.9.1_0 platform='darwin 10' archs='x86_64' date='2019-04-21T17:30:18-0700'
  nodejs6 @6.17.1_0 platform='darwin 10' archs='x86_64' date='2019-04-21T18:53:51-0700'
  nodejs8 @8.16.0_0 platform='darwin 10' archs='x86_64' date='2019-04-21T22:54:06-0700'
  nodejs10 @10.15.3_0 platform='darwin 10' archs='x86_64' date='2019-04-22T12:44:02-0700'

I thought I had fixed up nodejs12 as well, but I guess something's added since I last looked at it.

comment:2 Changed 3 months ago by kencu (Ken)

legacysupport fixes the strnlen error up, but then other errors arise later on, so the build still fails.

Changed 3 months ago by kencu (Ken)

Attachment: nodejs12-1068-fail.log.zip added

10.6.8 build fail log after legacysupport PG added

comment:3 Changed 3 months ago by kencu (Ken)

I'm thinking this error could be occurring because our macports libuv version that we are using for the legacy systems is not fully up to date, or at least doesn't match the expected version that nodejs12 is expecting...

:info:build   /opt/local/bin/clang++-mp-5.0 -o /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_devel_nodejs12/nodejs12/work/node-v12.9.0/out/Release/obj.target/libnode/src/node_report.o ../src/node_report.cc '-DV8_DEPRECATION_WARNINGS' '-DV8_IMMINENT_DEPRECATION_WARNINGS' '-D_DARWIN_USE_64_BIT_INODE=1' '-DOPENSSL_NO_PINSHARED' '-DOPENSSL_THREADS' '-DNODE_ARCH="x64"' '-DNODE_WANT_INTERNALS=1' '-DV8_DEPRECATION_WARNINGS=1' '-DNODE_OPENSSL_SYSTEM_CERT_PATH=""' '-DHAVE_INSPECTOR=1' '-DHAVE_DTRACE=1' '-DNODE_REPORT' '-D__POSIX__' '-DNODE_USE_V8_PLATFORM=1' '-DNODE_HAVE_I18N_SUPPORT=1' '-DNODE_HAVE_SMALL_ICU=1' '-DNODE_PLATFORM="darwin"' '-DHAVE_OPENSSL=1' '-DUCONFIG_NO_SERVICE=1' '-DU_ENABLE_DYLOAD=0' '-DU_STATIC_IMPLEMENTATION=1' '-DU_HAVE_STD_STRING=1' '-DUCONFIG_NO_BREAK_ITERATION=0' '-DHTTP_PARSER_STRICT=0' '-DNGHTTP2_STATICLIB' -I../src -I/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_devel_nodejs12/nodejs12/work/node-v12.9.0/out/Release/obj/gen -I/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_devel_nodejs12/nodejs12/work/node-v12.9.0/out/Release/obj/gen/include -I/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_devel_nodejs12/nodejs12/work/node-v12.9.0/out/Release/obj/gen/src -I../deps/histogram/src -I../deps/v8/include -I../deps/icu-small/source/i18n -I../deps/icu-small/source/common -I../deps/zlib -I../deps/http_parser -I../deps/llhttp/include -I../deps/cares/include -I../deps/nghttp2/lib/includes -I../deps/brotli/c/include -I../deps/openssl/openssl/include  -Os -gdwarf-2 -arch x86_64 -Wall -Wendif-labels -W -Wno-unused-parameter -Werror=undefined-inline -Wall -Wendif-labels -W -Wno-unused-parameter -std=gnu++1y -stdlib=libc++ -fno-rtti -fno-exceptions -fno-strict-aliasing -MMD -MF /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_devel_nodejs12/nodejs12/work/node-v12.9.0/out/Release/.deps//opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_devel_nodejs12/nodejs12/work/node-v12.9.0/out/Release/obj.target/libnode/src/node_report.o.d.raw  -Os -stdlib=libc++ -c
:info:build ../src/node_report.cc:551:3: error: unknown type name 'uv_env_item_t'
:info:build   uv_env_item_t* envitems;
:info:build   ^
:info:build 1 error generated.
Note: See TracTickets for help on using tickets.