Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Version 0.28.3 shows compile errors on FreeBSD #335

Closed
3 tasks done
mfechner opened this issue Feb 1, 2022 · 2 comments
Closed
3 tasks done

Version 0.28.3 shows compile errors on FreeBSD #335

mfechner opened this issue Feb 1, 2022 · 2 comments

Comments

@mfechner
Copy link

mfechner commented Feb 1, 2022

Welcome to the issues section if it's your first time!

Before creating an issue, please be sure to:

  • Checkout to the latest version, including submodules
  • Try to find an isolated way to reproduce the behavior
  • Fill in all the blanks in the most specific way you can

Steps to reproduce

  1. Use a FreeBSD (13.0-p6) system and just do:
  2. npm init -y
  3. npm i argon2

Expected behaviour

It should successfully source compile argon2.

Actual behaviour

Compile fails with:

npm ERR! code 1
npm ERR! path /var/tmp/gitlab_runner/builds/s2P8Hacs/0/mfechner/monitor_solar/node_modules/argon2
npm ERR! command failed
npm ERR! command sh -c node-pre-gyp install --fallback-to-build
npm ERR! gmake: Entering directory '/var/tmp/gitlab_runner/builds/s2P8Hacs/0/mfechner/monitor_solar/node_modules/argon2/build'
npm ERR!   CC(target) Release/obj.target/libargon2/argon2/src/opt.o
npm ERR!   CC(target) Release/obj.target/libargon2/argon2/src/argon2.o
npm ERR!   CC(target) Release/obj.target/libargon2/argon2/src/core.o
npm ERR!   CC(target) Release/obj.target/libargon2/argon2/src/blake2/blake2b.o
npm ERR!   CC(target) Release/obj.target/libargon2/argon2/src/thread.o
npm ERR!   CC(target) Release/obj.target/libargon2/argon2/src/encoding.o
npm ERR!   AR(target) Release/obj.target/argon2.a
npm ERR!   COPY Release/argon2.a
npm ERR!   CXX(target) Release/obj.target/argon2/src/argon2_node.o
npm ERR! gmake: Leaving directory '/var/tmp/gitlab_runner/builds/s2P8Hacs/0/mfechner/monitor_solar/node_modules/argon2/build'
npm ERR! Failed to execute '/usr/local/bin/node /usr/local/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js build --fallback-to-build --module=/var/tmp/gitlab_runner/builds/s2P8Hacs/0/mfechner/monitor_solar/node_modules/argon2/lib/binding/napi-v3/argon2.node --module_name=argon2 --module_path=/var/tmp/gitlab_runner/builds/s2P8Hacs/0/mfechner/monitor_solar/node_modules/argon2/lib/binding/napi-v3 --napi_version=8 --node_abi_napi=napi --napi_build_version=3 --node_napi_label=napi-v3' (1)
npm ERR! node-pre-gyp info it worked if it ends with ok
npm ERR! node-pre-gyp info using node-pre-gyp@1.0.8
npm ERR! node-pre-gyp info using node@16.13.0 | freebsd | x64
npm ERR! node-pre-gyp info check checked for "/var/tmp/gitlab_runner/builds/s2P8Hacs/0/mfechner/monitor_solar/node_modules/argon2/lib/binding/napi-v3/argon2.node" (not found)
npm ERR! node-pre-gyp http GET https://github.com/ranisalt/node-argon2/releases/download/v0.28.3/argon2-v0.28.3-napi-v3-freebsd-x64-unknown.tar.gz
npm ERR! node-pre-gyp ERR! install response status 404 Not Found on https://github.com/ranisalt/node-argon2/releases/download/v0.28.3/argon2-v0.28.3-napi-v3-freebsd-x64-unknown.tar.gz 
npm ERR! node-pre-gyp WARN Pre-built binaries not installable for argon2@0.28.3 and node@16.13.0 (node-v93 ABI, unknown) (falling back to source compile with node-gyp) 
npm ERR! node-pre-gyp WARN Hit error response status 404 Not Found on https://github.com/ranisalt/node-argon2/releases/download/v0.28.3/argon2-v0.28.3-napi-v3-freebsd-x64-unknown.tar.gz 
npm ERR! gyp info it worked if it ends with ok
npm ERR! gyp info using node-gyp@8.3.0
npm ERR! gyp info using node@16.13.0 | freebsd | x64
npm ERR! gyp info ok 
npm ERR! gyp info it worked if it ends with ok
npm ERR! gyp info using node-gyp@8.3.0
npm ERR! gyp info using node@16.13.0 | freebsd | x64
npm ERR! gyp info find Python using Python version 3.8.12 found at "/usr/local/bin/python3"
npm ERR! gyp info spawn /usr/local/bin/python3
npm ERR! gyp info spawn args [
npm ERR! gyp info spawn args   '/usr/local/lib/node_modules/npm/node_modules/node-gyp/gyp/gyp_main.py',
npm ERR! gyp info spawn args   'binding.gyp',
npm ERR! gyp info spawn args   '-f',
npm ERR! gyp info spawn args   'make',
npm ERR! gyp info spawn args   '-I',
npm ERR! gyp info spawn args   '/var/tmp/gitlab_runner/builds/s2P8Hacs/0/mfechner/monitor_solar/node_modules/argon2/build/config.gypi',
npm ERR! gyp info spawn args   '-I',
npm ERR! gyp info spawn args   '/usr/local/lib/node_modules/npm/node_modules/node-gyp/addon.gypi',
npm ERR! gyp info spawn args   '-I',
npm ERR! gyp info spawn args   '/var/tmp/gitlab_runner/.cache/node-gyp/16.13.0/include/node/common.gypi',
npm ERR! gyp info spawn args   '-Dlibrary=shared_library',
npm ERR! gyp info spawn args   '-Dvisibility=default',
npm ERR! gyp info spawn args   '-Dnode_root_dir=/var/tmp/gitlab_runner/.cache/node-gyp/16.13.0',
npm ERR! gyp info spawn args   '-Dnode_gyp_dir=/usr/local/lib/node_modules/npm/node_modules/node-gyp',
npm ERR! gyp info spawn args   '-Dnode_lib_file=/var/tmp/gitlab_runner/.cache/node-gyp/16.13.0/<(target_arch)/node.lib',
npm ERR! gyp info spawn args   '-Dmodule_root_dir=/var/tmp/gitlab_runner/builds/s2P8Hacs/0/mfechner/monitor_solar/node_modules/argon2',
npm ERR! gyp info spawn args   '-Dnode_engine=v8',
npm ERR! gyp info spawn args   '--depth=.',
npm ERR! gyp info spawn args   '--no-parallel',
npm ERR! gyp info spawn args   '--generator-output',
npm ERR! gyp info spawn args   'build',
npm ERR! gyp info spawn args   '-Goutput_dir=.'
npm ERR! gyp info spawn args ]
npm ERR! gyp info ok 
npm ERR! gyp info it worked if it ends with ok
npm ERR! gyp info using node-gyp@8.3.0
npm ERR! gyp info using node@16.13.0 | freebsd | x64
npm ERR! gyp info spawn gmake
npm ERR! gyp info spawn args [ 'BUILDTYPE=Release', '-C', 'build' ]
npm ERR! ../src/argon2_node.cpp:52:21: error: assigning to 'uint8_t *' (aka 'unsigned char *') from 'const std::__1::basic_string<unsigned char, std::__1::char_traits<unsigned char>, std::__1::allocator<unsigned char>>::value_type *' (aka 'const unsigned char *') discards qualifiers
npm ERR!     ctx.pwd = plain.data();
npm ERR!               ~~~~~~^~~~~~
npm ERR! ../src/argon2_node.cpp:54:21: error: assigning to 'uint8_t *' (aka 'unsigned char *') from 'const std::__1::basic_string<unsigned char, std::__1::char_traits<unsigned char>, std::__1::allocator<unsigned char>>::value_type *' (aka 'const unsigned char *') discards qualifiers
npm ERR!     ctx.salt = salt.data();
npm ERR!                ~~~~~^~~~~~
npm ERR! ../src/argon2_node.cpp:56:18: error: assigning to 'uint8_t *' (aka 'unsigned char *') from 'const std::__1::basic_string<unsigned char, std::__1::char_traits<unsigned char>, std::__1::allocator<unsigned char>>::value_type *' (aka 'const unsigned char *') discards qualifiers
npm ERR!     ctx.secret = opts.secret.empty() ? nullptr : opts.secret.data();
npm ERR!                  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
npm ERR! ../src/argon2_node.cpp:58:14: error: assigning to 'uint8_t *' (aka 'unsigned char *') from 'const std::__1::basic_string<unsigned char, std::__1::char_traits<unsigned char>, std::__1::allocator<unsigned char>>::value_type *' (aka 'const unsigned char *') discards qualifiers
npm ERR!     ctx.ad = opts.ad.empty() ? nullptr : opts.ad.data();
npm ERR!              ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
npm ERR! ../src/argon2_node.cpp:159:29: warning: implicit conversion from 'unsigned long' to 'uint32_t' (aka 'unsigned int') changes value from 4294967296 to 0 [-Wconstant-conversion]
npm ERR!     setMaxMin("memoryCost", ARGON2_MAX_MEMORY, max(ARGON2_MIN_MEMORY, 1024));
npm ERR!     ~~~~~~~~~               ^~~~~~~~~~~~~~~~~
npm ERR! ../src/../argon2/include/argon2.h:68:50: note: expanded from macro 'ARGON2_MAX_MEMORY'
npm ERR!     ARGON2_MIN(UINT32_C(0xFFFFFFFF), UINT64_C(1) << ARGON2_MAX_MEMORY_BITS)
npm ERR!     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
npm ERR! ../src/../argon2/include/argon2.h:63:46: note: expanded from macro 'ARGON2_MIN'
npm ERR! #define ARGON2_MIN(a, b) ((a) < (b) ? (a) : (b))
npm ERR!                                              ^
npm ERR! 1 warning and 4 errors generated.
npm ERR! gmake: *** [argon2.target.mk:119: Release/obj.target/argon2/src/argon2_node.o] Error 1
npm ERR! gyp ERR! build error 
npm ERR! gyp ERR! stack Error: `gmake` failed with exit code: 2
npm ERR! gyp ERR! stack     at ChildProcess.onExit (/usr/local/lib/node_modules/npm/node_modules/node-gyp/lib/build.js:194:23)
npm ERR! gyp ERR! stack     at ChildProcess.emit (node:events:390:28)
npm ERR! gyp ERR! stack     at Process.ChildProcess._handle.onexit (node:internal/child_process:290:12)
npm ERR! gyp ERR! System FreeBSD 13.0-RELEASE-p6
npm ERR! gyp ERR! command "/usr/local/bin/node" "/usr/local/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "build" "--fallback-to-build" "--module=/var/tmp/gitlab_runner/builds/s2P8Hacs/0/mfechner/monitor_solar/node_modules/argon2/lib/binding/napi-v3/argon2.node" "--module_name=argon2" "--module_path=/var/tmp/gitlab_runner/builds/s2P8Hacs/0/mfechner/monitor_solar/node_modules/argon2/lib/binding/napi-v3" "--napi_version=8" "--node_abi_napi=napi" "--napi_build_version=3" "--node_napi_label=napi-v3"

Environment

Operating system: FreeBSD 13.0-p6

Node version:: 16.13.0

Compiler version:
If it is using cpp to compile:

╰─ cpp --version
FreeBSD clang version 11.0.1 (git@github.com:llvm/llvm-project.git llvmorg-11.0.1-0-g43ff75f2c3fe)
Target: x86_64-unknown-freebsd13.0
Thread model: posix
InstalledDir: /usr/bin

╰─ cc --version
FreeBSD clang version 11.0.1 (git@github.com:llvm/llvm-project.git llvmorg-11.0.1-0-g43ff75f2c3fe)
Target: x86_64-unknown-freebsd13.0
Thread model: posix
InstalledDir: /usr/bin

╰─ gcc --version
gcc (FreeBSD Ports Collection) 10.3.0
Copyright (C) 2020 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

╰─ gmake --version
GNU Make 4.3
Built for amd64-portbld-freebsd13.0
Copyright (C) 1988-2020 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.

╰─ python --version
Python 3.8.12
@ranisalt
Copy link
Owner

ranisalt commented Feb 2, 2022

Should be fixed with v0.28.4, as it includes #332 which fixes this build error on FreeBSD

@mfechner
Copy link
Author

mfechner commented Feb 5, 2022

Thanks a lot, I can confirm that v0.28.4 now compiles again with FreeBSD.

@mfechner mfechner closed this as completed Feb 5, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants