Skip to content

Install fails on ARM (Raspberry Pi) #43

Closed

Description

Steps to reproduce

  1. Install the latest version of node-gyp globally.
  2. Use Node 4.0.0+
  3. Attempt to install this module via npm: npm install argon2 --save in a project.

Actual behaviour

gyp verb command build []
gyp verb build type Release
gyp verb architecture arm
gyp verb node dev dir /home/pi/.node-gyp/4.2.1
gyp verb `which` succeeded for `make` /usr/bin/make
gyp info spawn make
gyp info spawn args [ 'V=1', 'BUILDTYPE=Release', '-C', 'build' ]
make: Entering directory '/home/pi/node-test/node_modules/argon2/build'
  cc '-DNODE_GYP_MODULE_NAME=libargon2' '-D_LARGEFILE_SOURCE' '-D_FILE_OFFSET_BITS=64' -I/home/pi/.node-gyp/4.2.1/include/node -I/home/pi/.node-gyp/4.2.1/src -I/home/pi/.node-gyp/4.2.1/deps/uv/include -I/home/pi/.node-gyp/4.2.1/deps/v8/include -I../argon2/include  -fPIC -pthread -Wall -Wextra -Wno-unused-parameter -march=native -pthread -Wno-type-limits -fvisibility=hidden -msse -msse2 -O3 -ffunction-sections -fdata-sections -fno-omit-frame-pointer  -MMD -MF ./Release/.deps/Release/obj.target/libargon2/argon2/src/argon2.o.d.raw  -c -o Release/obj.target/libargon2/argon2/src/argon2.o ../argon2/src/argon2.c
cc: error: unrecognized command line option ‘-msse’
cc: error: unrecognized command line option ‘-msse2’
libargon2.target.mk:103: recipe for target 'Release/obj.target/libargon2/argon2/src/argon2.o' failed
make: *** [Release/obj.target/libargon2/argon2/src/argon2.o] Error 1
make: Leaving directory '/home/pi/node-test/node_modules/argon2/build'
gyp ERR! build error 
gyp ERR! stack Error: `make` failed with exit code: 2
gyp ERR! stack     at ChildProcess.onExit (/usr/local/lib/node_modules/npm/node_modules/node-gyp/lib/build.js:270:23)
gyp ERR! stack     at emitTwo (events.js:87:13)
gyp ERR! stack     at ChildProcess.emit (events.js:172:7)
gyp ERR! stack     at Process.ChildProcess._handle.onexit (internal/child_process.js:200:12)
gyp ERR! System Linux 4.4.9+
gyp ERR! command "/usr/local/bin/node" "/usr/local/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "rebuild"
gyp ERR! cwd /home/pi/node-test/node_modules/argon2
gyp ERR! node -v v4.2.1
gyp ERR! node-gyp -v v3.0.3
gyp ERR! not ok 

Environment

Operating system:
Raspbian GNU/Linux 8 (jessie) (Linux 4.4.9)
Node version:
v.4.2.1
Compiler version:
gcc version 4.9.2 (Raspbian 4.9.2-10)

Building argon2 itself without node-gyp works just fine, but I can't seem to get the library-file linked with the node-module. Maybe changing the bindings and build parameters for ARM (leaving out the msse and msse2 parameters) would solve this?

Activity

  1. ranisalt commented on Jun 6, 2016

    @ranisalt
    Owner

    This is because it defaults to the optimized (SSE2 enabled) version of argon2, yet only the reference one compiles on RPi. I've yet to find an easy way to detect and switch them, I'll focus on it now.

  2. ranisalt commented on Jun 6, 2016

    @ranisalt
    Owner

    Could you check that 0865b21 works for you? It's on branch rpi and it worked for me.

  3. ghost closed this as completedon Jun 6, 2016
  4. ghost reopened this on Jun 6, 2016
  5. ranisalt commented on Jun 6, 2016

    @ranisalt
    Owner

    Yes, I think the needed file is still in the npmignore, and I will fix it.

  6. ghost closed this as completedon Jun 6, 2016
  7. ranisalt commented on Jun 6, 2016

    @ranisalt
    Owner

    Thanks! If no more issues appear until Wednesday it will be launched as 0.12.0

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions