atom / keyboard-layout

Node module to read and observe the current keyboard layout
MIT License
61 stars 48 forks source link

Building for Linux 32 bits #43

Open saenzramiro opened 6 years ago

saenzramiro commented 6 years ago

Hello there,

I'm trying to build an Electron app for Linux 32 bits and I get this errors:

Error: /home/travis/.nvm/versions/node/v9.11.2/bin/node exited with code 1
Error output:
../HashSetWrap.cpp:61:37: warning: 'NewInstance' is deprecated [-Wdeprecated-declarations]
    args.GetReturnValue().Set(cons->NewInstance(argc, argv));
                                    ^
/home/travis/.electron-gyp/iojs-1.8.7/deps/v8/include/v8.h:3749:3: note: 'NewInstance' has been explicitly marked deprecated here
  V8_DEPRECATED("Use maybe version",
  ^
/home/travis/.electron-gyp/iojs-1.8.7/deps/v8/include/v8config.h:332:29: note: expanded from macro 'V8_DEPRECATED'
  declarator __attribute__((deprecated))
                            ^
1 warning generated.
../addon.cc:23:6: warning: unused function 'InitAll' [-Wunused-function]
void InitAll(v8::Local<v8::Object> exports, v8::Local<v8::Value> unused,
     ^
1 warning generated.
../ad_block_client_wrap.cc:170:37: warning: 'NewInstance' is deprecated [-Wdeprecated-declarations]
    args.GetReturnValue().Set(cons->NewInstance(argc, argv));
                                    ^
/home/travis/.electron-gyp/iojs-1.8.7/deps/v8/include/v8.h:3749:3: note: 'NewInstance' has been explicitly marked deprecated here
  V8_DEPRECATED("Use maybe version",
  ^
/home/travis/.electron-gyp/iojs-1.8.7/deps/v8/include/v8config.h:332:29: note: expanded from macro 'V8_DEPRECATED'
  declarator __attribute__((deprecated))
                            ^
1 warning generated.
../src/Failure.cpp:47:2: warning: 'delete' applied to a pointer that was allocated with 'new[]'; did you mean 'delete[]'? [-Wmismatched-new-delete]
        delete stage;
        ^
              []
../src/Failure.cpp:33:16: note: allocated with 'new[]' here
        char *stage = new char [strlen (part1)
                      ^
1 warning generated.
../src/SimpleString.cpp:33:2: warning: 'delete' applied to a pointer that was allocated with 'new[]'; did you mean 'delete[]'? [-Wmismatched-new-delete]
        delete buffer;
        ^
              []
../src/SimpleString.cpp:12:10: note: allocated with 'new[]' here
: buffer(new char [1])
         ^
../src/SimpleString.cpp:19:11: note: allocated with 'new[]' here
: buffer (new char [strlen (otherBuffer) + 1])
          ^
1 warning generated.
../HashSetWrap.cpp:61:37: warning: 'NewInstance' is deprecated [-Wdeprecated-declarations]
    args.GetReturnValue().Set(cons->NewInstance(argc, argv));
                                    ^
/home/travis/.electron-gyp/iojs-1.8.7/deps/v8/include/v8.h:3749:3: note: 'NewInstance' has been explicitly marked deprecated here
  V8_DEPRECATED("Use maybe version",
  ^
/home/travis/.electron-gyp/iojs-1.8.7/deps/v8/include/v8config.h:332:29: note: expanded from macro 'V8_DEPRECATED'
  declarator __attribute__((deprecated))
                            ^
1 warning generated.
../vendor/hunspell/src/google/bdict_reader.cc:670:15: warning: unused variable 'begin' [-Wunused-variable]
  const char* begin = reinterpret_cast<const char*>(&bdict_data_[cur_offset_]);
              ^
1 warning generated.
In file included from ../vendor/hunspell/src/hunspell/affentry.cxx:9:
../vendor/hunspell/src/hunspell/affentry.hxx:30:105: warning: implicit conversion of NULL constant to 'unsigned short' [-Wnull-conversion]
  struct hentry *      check_twosfx(const char * word, int len, char in_compound, const FLAG needflag = NULL);
                                                                                                      ~ ^~~~
                                                                                                        0
../vendor/hunspell/src/hunspell/affentry.hxx:93:114: warning: implicit conversion of NULL constant to 'unsigned short' [-Wnull-conversion]
  struct hentry *   check_twosfx(const char * word, int len, int optflags, PfxEntry* ppfx, const FLAG needflag = NULL);
                                                                                                               ~ ^~~~
                                                                                                                 0
../vendor/hunspell/src/hunspell/affentry.cxx:546:57: warning: while loop has empty body [-Wempty-body]
                        while (p && *p != ']' && ((p = nextchar(p)) != NULL));
                                                                             ^
../vendor/hunspell/src/hunspell/affentry.cxx:546:57: note: put the semicolon on a separate line to silence this warning
3 warnings generated.
In file included from ../vendor/hunspell/src/hunspell/affixmgr.cxx:12:
../vendor/hunspell/src/hunspell/affentry.hxx:30:105: warning: implicit conversion of NULL constant to 'unsigned short' [-Wnull-conversion]
  struct hentry *      check_twosfx(const char * word, int len, char in_compound, const FLAG needflag = NULL);
                                                                                                      ~ ^~~~
                                                                                                        0
../vendor/hunspell/src/hunspell/affentry.hxx:93:114: warning: implicit conversion of NULL constant to 'unsigned short' [-Wnull-conversion]
  struct hentry *   check_twosfx(const char * word, int len, int optflags, PfxEntry* ppfx, const FLAG needflag = NULL);
                                                                                                               ~ ^~~~
                                                                                                                 0
2 warnings generated.
In file included from ../vendor/hunspell/src/hunspell/hashmgr.cxx:9:
../vendor/hunspell/src/hunspell/hashmgr.hxx:32:21: warning: private field 'userword' is not used [-Wunused-private-field]
  int               userword;
                    ^
1 warning generated.
/usr/bin/ld: cannot find -lxkbfile
clang-5.0: error: linker command failed with exit code 1 (use -v to see invocation)
make: *** [Release/obj.target/keyboard-layout-manager.node] Error 1
gyp ERR! build error 
gyp ERR! stack Error: `make` failed with exit code: 2
gyp ERR! stack     at ChildProcess.onExit (/home/travis/.nvm/versions/node/v9.11.2/lib/node_modules/npm/node_modules/node-gyp/lib/build.js:258:23)
gyp ERR! stack     at ChildProcess.emit (events.js:180:13)
gyp ERR! stack     at Process.ChildProcess._handle.onexit (internal/child_process.js:209:12)
gyp ERR! System Linux 4.13.0-1017-gcp
gyp ERR! command "/home/travis/.nvm/versions/node/v9.11.2/bin/node" "/home/travis/.nvm/versions/node/v9.11.2/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "rebuild"
gyp ERR! cwd /home/travis/build/saenzramiro/electron-travis-test/desktop/node_modules/keyboard-layout
gyp ERR! node -v v9.11.2
gyp ERR! node-gyp -v v3.6.2
gyp ERR! not ok 
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! keyboard-layout@2.0.13 install: `node-gyp rebuild`
npm ERR! Exit status 1
npm ERR! 
npm ERR! Failed at the keyboard-layout@2.0.13 install script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.
npm ERR! A complete log of this run can be found in:
npm ERR!     /home/travis/.npm/_logs/2018-06-18T16_57_17_616Z-debug.log
    at ChildProcess.childProcess.once.code (/home/travis/build/saenzramiro/electron-travis-test/desktop/node_modules/builder-util/src/util.ts:252:14)
    at Object.onceWrapper (events.js:272:13)
    at ChildProcess.emit (events.js:180:13)
    at maybeClose (internal/child_process.js:936:16)
    at Socket.stream.socket.on (internal/child_process.js:353:11)
    at Socket.emit (events.js:180:13)
    at Pipe._handle.close [as _onclose] (net.js:541:12)
From previous event:
    at rebuild (/home/travis/build/saenzramiro/electron-travis-test/desktop/node_modules/electron-builder-lib/out/util/yarn.js:234:18)
    at /home/travis/build/saenzramiro/electron-travis-test/desktop/node_modules/electron-builder-lib/src/util/yarn.ts:20:11
    at Generator.next (<anonymous>)
    at runCallback (timers.js:763:18)
    at tryOnImmediate (timers.js:734:5)
    at processImmediate (timers.js:716:5)
From previous event:
    at installOrRebuild (/home/travis/build/saenzramiro/electron-travis-test/desktop/node_modules/electron-builder-lib/out/util/yarn.js:68:17)
    at /home/travis/build/saenzramiro/electron-travis-test/desktop/node_modules/electron-builder-lib/src/packager.ts:451:13
    at Generator.next (<anonymous>)
From previous event:
    at Packager.installAppDependencies (/home/travis/build/saenzramiro/electron-travis-test/desktop/node_modules/electron-builder-lib/src/packager.ts:415:70)
    at /home/travis/build/saenzramiro/electron-travis-test/desktop/node_modules/electron-builder-lib/src/packager.ts:365:20
From previous event:
    at Packager.doBuild (/home/travis/build/saenzramiro/electron-travis-test/desktop/node_modules/electron-builder-lib/src/packager.ts:341:39)
    at /home/travis/build/saenzramiro/electron-travis-test/desktop/node_modules/electron-builder-lib/src/packager.ts:317:52
From previous event:
    at Packager._build (/home/travis/build/saenzramiro/electron-travis-test/desktop/node_modules/electron-builder-lib/src/packager.ts:294:133)
    at /home/travis/build/saenzramiro/electron-travis-test/desktop/node_modules/electron-builder-lib/src/packager.ts:290:23
    at Generator.next (<anonymous>)
    at runCallback (timers.js:763:18)
    at tryOnImmediate (timers.js:734:5)
    at processImmediate (timers.js:716:5)
From previous event:
    at Packager.build (/home/travis/build/saenzramiro/electron-travis-test/desktop/node_modules/electron-builder-lib/src/packager.ts:248:14)
    at /home/travis/build/saenzramiro/electron-travis-test/desktop/node_modules/electron-builder-lib/src/index.ts:51:40
    at Generator.next (<anonymous>)
From previous event:
    at build (/home/travis/build/saenzramiro/electron-travis-test/desktop/node_modules/electron-builder-lib/out/index.js:220:17)
    at build (/home/travis/build/saenzramiro/electron-travis-test/desktop/node_modules/electron-builder/src/builder.ts:234:10)
    at then (/home/travis/build/saenzramiro/electron-travis-test/desktop/node_modules/electron-builder/src/cli/cli.ts:46:19)
    at <anonymous>

For 64 bits works ok. Am I doing something wrong?

saenzramiro commented 6 years ago

BUMP

johnjjung commented 6 years ago

BUMP!

smoak commented 5 years ago

You need to have the 32 bit version of libxkbfile installed. You might have to compile it from source yourself, but you can get the source here:

https://www.x.org/releases/individual/lib/libxkbfile-1.0.9.tar.gz