• Recent
  • Tags
  • Unsolved
  • Solved
  • MagicMirror² Repository
  • Documentation
  • 3rd-Party-Modules
  • Donate
  • Discord
  • Register
  • Login
MagicMirror Forum
  • Recent
  • Tags
  • Unsolved
  • Solved
  • MagicMirror² Repository
  • Documentation
  • 3rd-Party-Modules
  • Donate
  • Discord
  • Register
  • Login
A New Chapter for MagicMirror: The Community Takes the Lead
Read the statement by Michael Teeuw here.

electron-rebuild problems with MagicMirror 2.22.0

Scheduled Pinned Locked Moved Solved Troubleshooting
53 Posts 5 Posters 13.2k Views 6 Watching
Loading More Posts
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • K Offline
    KristjanESPERANTO Module Developer @sdetweil
    last edited by KristjanESPERANTO Jan 6, 2023, 4:35 PM Jan 6, 2023, 4:28 PM

    To me this looks like a problem with the onoff package. Because if I remove onoff from the package.json, npm i works.

    onoff also comes with the dependency epoll, which appears a lot in the error messages.

    npm i onoff and npm i epoll produce similar error messages. I think that’s where the main problem is.

    S 2 Replies Last reply Jan 6, 2023, 4:36 PM Reply Quote 0
    • S Away
      sdetweil @KristjanESPERANTO
      last edited by Jan 6, 2023, 4:36 PM

      @KristjanESPERANTO the ‘problem’ is that the module installs electron-rebuild in its OWN MODULE folder, and it can no longer figure out what electron version it needs to build for…

      the only ‘fix’ is to install electron-rebuild in the MM folder (we should just install it to begin with in my opinion)
      and to launch THAT version of eb…

      Sam

      How to add modules

      learning how to use browser developers window for css changes

      1 Reply Last reply Reply Quote 0
      • S Away
        sdetweil @KristjanESPERANTO
        last edited by sdetweil Jan 6, 2023, 4:47 PM Jan 6, 2023, 4:47 PM

        @KristjanESPERANTO epoll binary is dependent on the Electron version.

        no matter which lib drags it in … so you MUST run eb… to get it current…

        see my prior post for the troubles…

        NOBODY gives a crap about breaking changes anymore…
        they all feel if you don’t update, then your code dies. and they don’t care…

        Sam

        How to add modules

        learning how to use browser developers window for css changes

        1 Reply Last reply Reply Quote 0
        • S Away
          sdetweil @sdetweil
          last edited by Jan 6, 2023, 6:16 PM

          @sdetweil and it succeeded on pi4 w bullseye… I also tested with my

          upgrade script and backup/restore
          and both those executed and did rebuild on the modules… (using the postinstall script)

          Sam

          How to add modules

          learning how to use browser developers window for css changes

          K 1 Reply Last reply Jan 6, 2023, 6:43 PM Reply Quote 0
          • K Offline
            karsten13 @sdetweil
            last edited by Jan 6, 2023, 6:43 PM

            node@raspberrypi:/opt/magic_mirror/modules$ git clone https://github.com/sdetweil/MMM-Buttons.git
            Cloning into 'MMM-Buttons'...
            remote: Enumerating objects: 56, done.
            remote: Counting objects: 100% (4/4), done.
            remote: Compressing objects: 100% (4/4), done.
            remote: Total 56 (delta 0), reused 2 (delta 0), pack-reused 52
            Receiving objects: 100% (56/56), 11.86 KiB | 1.69 MiB/s, done.
            Resolving deltas: 100% (25/25), done.
            node@raspberrypi:/opt/magic_mirror/modules$ cd MMM-Buttons/
            node@raspberrypi:/opt/magic_mirror/modules/MMM-Buttons$ ls -la
            total 40
            drwxr-xr-x 3 node node 4096 Jan  6 19:39 .
            drwxr-xr-x 5 node node 4096 Jan  6 19:39 ..
            drwxr-xr-x 8 node node 4096 Jan  6 19:39 .git
            -rw-r--r-- 1 node node  530 Jan  6 19:39 CHANGELOG.md
            -rw-r--r-- 1 node node 3416 Jan  6 19:39 MMM-Buttons.js
            -rw-r--r-- 1 node node 5725 Jan  6 19:39 README.md
            -rw-r--r-- 1 node node 2778 Jan  6 19:39 node_helper.js
            -rw-r--r-- 1 node node  693 Jan  6 19:39 package.json
            -rwxr-xr-x 1 node node  179 Jan  6 19:39 postinstall
            node@raspberrypi:/opt/magic_mirror/modules/MMM-Buttons$ npm install
            
            > Magic-Mirror-Module-Buttons@1.0.0 postinstall
            > ./postinstall
            
            /opt/magic_mirror/modules/MMM-Buttons
            ⠧ Building module: epoll, Completed: 0make: Entering directory '/opt/magic_mirror/modules/MMM-Buttons/node_modules/epoll/build'
              CXX(target) Release/obj.target/epoll/src/epoll.o
            ⠙ Building module: epoll, Completed: 0  SOLINK_MODULE(target) Release/obj.target/epoll.node
            ⠼ Building module: epoll, Completed: 0  COPY Release/epoll.node
            make: Leaving directory '/opt/magic_mirror/modules/MMM-Buttons/node_modules/epoll/build'
            ✔ Rebuild Complete
            
            added 6 packages, and audited 7 packages in 2m
            
            found 0 vulnerabilities
            
            S 1 Reply Last reply Jan 6, 2023, 6:44 PM Reply Quote 0
            • S Away
              sdetweil @karsten13
              last edited by Jan 6, 2023, 6:44 PM

              @karsten13 yep, looks good…

              Sam

              How to add modules

              learning how to use browser developers window for css changes

              K 1 Reply Last reply Jan 6, 2023, 6:53 PM Reply Quote 0
              • K Offline
                KristjanESPERANTO Module Developer @sdetweil
                last edited by Jan 6, 2023, 6:53 PM

                For me it looks like this:

                kristjan@debian:~/Infomonitor/MagicMirror/modules$ git clone https://github.com/sdetweil/MMM-Buttons.git
                Cloning into 'MMM-Buttons'...
                remote: Enumerating objects: 56, done.
                remote: Counting objects: 100% (4/4), done.
                remote: Compressing objects: 100% (4/4), done.
                remote: Total 56 (delta 0), reused 2 (delta 0), pack-reused 52
                Receiving objects: 100% (56/56), 11.86 KiB | 1.69 MiB/s, done.
                Resolving deltas: 100% (25/25), done.
                kristjan@debian:~/Infomonitor/MagicMirror/modules$ cd MMM-Buttons/
                kristjan@debian:~/Infomonitor/MagicMirror/modules/MMM-Buttons$ npm install
                npm ERR! code 1
                npm ERR! path /home/kristjan/Infomonitor/MagicMirror/modules/MMM-Buttons/node_modules/epoll
                npm ERR! command failed
                npm ERR! command sh -c -- node-gyp rebuild
                npm ERR! make: Entering directory '/home/kristjan/Infomonitor/MagicMirror/modules/MMM-Buttons/node_modules/epoll/build'
                npm ERR!   CXX(target) Release/obj.target/epoll/src/epoll.o
                npm ERR!   SOLINK_MODULE(target) Release/obj.target/epoll.node
                npm ERR! make: Leaving directory '/home/kristjan/Infomonitor/MagicMirror/modules/MMM-Buttons/node_modules/epoll/build'
                npm ERR! gyp info it worked if it ends with ok
                npm ERR! gyp info using node-gyp@9.3.1
                npm ERR! gyp info using node@16.18.0 | linux | x64
                npm ERR! gyp info find Python using Python version 3.9.2 found at "/usr/bin/python3"
                npm ERR! gyp info spawn /usr/bin/python3
                npm ERR! gyp info spawn args [
                npm ERR! gyp info spawn args   '/home/kristjan/Infomonitor/MagicMirror/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   '/home/kristjan/Infomonitor/MagicMirror/modules/MMM-Buttons/node_modules/epoll/build/config.gypi',
                npm ERR! gyp info spawn args   '-I',
                npm ERR! gyp info spawn args   '/home/kristjan/Infomonitor/MagicMirror/node_modules/node-gyp/addon.gypi',
                npm ERR! gyp info spawn args   '-I',
                npm ERR! gyp info spawn args   '/home/kristjan/.cache/node-gyp/16.18.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=/home/kristjan/.cache/node-gyp/16.18.0',
                npm ERR! gyp info spawn args   '-Dnode_gyp_dir=/home/kristjan/Infomonitor/MagicMirror/node_modules/node-gyp',
                npm ERR! gyp info spawn args   '-Dnode_lib_file=/home/kristjan/.cache/node-gyp/16.18.0/<(target_arch)/node.lib',
                npm ERR! gyp info spawn args   '-Dmodule_root_dir=/home/kristjan/Infomonitor/MagicMirror/modules/MMM-Buttons/node_modules/epoll',
                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 spawn make
                npm ERR! gyp info spawn args [ 'BUILDTYPE=Release', '-C', 'build' ]
                npm ERR! /usr/bin/ld: /lib/x86_64-linux-gnu/libm.so.6: unknown type [0x13] section `.relr.dyn'
                npm ERR! /usr/bin/ld: skipping incompatible /lib/x86_64-linux-gnu/libm.so.6 when searching for /lib/x86_64-linux-gnu/libm.so.6
                npm ERR! /usr/bin/ld: cannot find /lib/x86_64-linux-gnu/libm.so.6
                npm ERR! /usr/bin/ld: /lib/x86_64-linux-gnu/libm.so.6: unknown type [0x13] section `.relr.dyn'
                npm ERR! /usr/bin/ld: skipping incompatible /lib/x86_64-linux-gnu/libm.so.6 when searching for /lib/x86_64-linux-gnu/libm.so.6
                npm ERR! /usr/bin/ld: /lib/x86_64-linux-gnu/libmvec.so.1: unknown type [0x13] section `.relr.dyn'
                npm ERR! /usr/bin/ld: skipping incompatible /lib/x86_64-linux-gnu/libmvec.so.1 when searching for /lib/x86_64-linux-gnu/libmvec.so.1
                npm ERR! /usr/bin/ld: cannot find /lib/x86_64-linux-gnu/libmvec.so.1
                npm ERR! /usr/bin/ld: /lib/x86_64-linux-gnu/libmvec.so.1: unknown type [0x13] section `.relr.dyn'
                npm ERR! /usr/bin/ld: skipping incompatible /lib/x86_64-linux-gnu/libmvec.so.1 when searching for /lib/x86_64-linux-gnu/libmvec.so.1
                npm ERR! collect2: error: ld returned 1 exit status
                npm ERR! make: *** [epoll.target.mk:145: Release/obj.target/epoll.node] Error 1
                npm ERR! gyp ERR! build error 
                npm ERR! gyp ERR! stack Error: `make` failed with exit code: 2
                npm ERR! gyp ERR! stack     at ChildProcess.onExit (/home/kristjan/Infomonitor/MagicMirror/node_modules/node-gyp/lib/build.js:203:23)
                npm ERR! gyp ERR! stack     at ChildProcess.emit (node:events:513:28)
                npm ERR! gyp ERR! stack     at Process.ChildProcess._handle.onexit (node:internal/child_process:293:12)
                npm ERR! gyp ERR! System Linux 5.10.0-20-amd64
                npm ERR! gyp ERR! command "/home/kristjan/.nvm/versions/node/v16.18.0/bin/node" "/home/kristjan/Infomonitor/MagicMirror/node_modules/.bin/node-gyp" "rebuild"
                npm ERR! gyp ERR! cwd /home/kristjan/Infomonitor/MagicMirror/modules/MMM-Buttons/node_modules/epoll
                npm ERR! gyp ERR! node -v v16.18.0
                npm ERR! gyp ERR! node-gyp -v v9.3.1
                npm ERR! gyp ERR! not ok
                
                npm ERR! A complete log of this run can be found in:
                npm ERR!     /home/kristjan/.npm/_logs/2023-01-06T18_47_25_457Z-debug-0.log
                kristjan@debian:~/Infomonitor/MagicMirror/modules/MMM-Buttons$ uname -r
                5.10.0-20-amd64
                kristjan@debian:~/Infomonitor/MagicMirror/modules/MMM-Buttons$ lsb_release -a
                No LSB modules are available.
                Distributor ID:	Debian
                Description:	Debian GNU/Linux 11 (bullseye)
                Release:	11
                Codename:	bullseye
                
                S 2 Replies Last reply Jan 6, 2023, 6:56 PM Reply Quote 0
                • S Away
                  sdetweil @wishmaster270
                  last edited by Jan 6, 2023, 6:53 PM

                  @wishmaster270 i don’t see any issues for your module either (modified using postinstall script)

                  sam@galliumos:~/MagicMirror/modules/MMM-GPIO-Notifications$ npm install --omit=dev --no-fund --no-audit
                  npm WARN deprecated @npmcli/move-file@2.0.1: This functionality has been moved to @npmcli/fs
                  
                  > MMM-GPIO-Notifications@0.0.5 postinstall
                  > ./postinstall
                  
                  ⠧ Building module: epoll, Completed: 0make: Entering directory '/home/sam/MagicMirror/modules/MMM-GPIO-Notifications/node_modules/epoll/build'
                    CXX(target) Release/obj.target/epoll/src/epoll.o
                  ⠴ Building module: epoll, Completed: 0  SOLINK_MODULE(target) Release/obj.target/epoll.node
                  ⠧ Building module: epoll, Completed: 0  COPY Release/epoll.node
                  ⠇ Building module: epoll, Completed: 0make: Leaving directory '/home/sam/MagicMirror/modules/MMM-GPIO-Notifications/node_modules/epoll/build'
                  ✔ Rebuild Complete
                  
                  added 170 packages in 20s
                  
                  

                  npm 8.11.0
                  node 16.16.0

                  Sam

                  How to add modules

                  learning how to use browser developers window for css changes

                  1 Reply Last reply Reply Quote 0
                  • S Away
                    sdetweil @KristjanESPERANTO
                    last edited by Jan 6, 2023, 6:56 PM

                    @KristjanESPERANTO hm…

                    my laptop uname
                    Linux galliumos 4.16.18-galliumos #1 SMP PREEMPT Sun Jun 23 04:14:45 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux

                    Sam

                    How to add modules

                    learning how to use browser developers window for css changes

                    K 1 Reply Last reply Jan 6, 2023, 7:12 PM Reply Quote 0
                    • S Away
                      sdetweil @KristjanESPERANTO
                      last edited by sdetweil Jan 6, 2023, 7:00 PM Jan 6, 2023, 6:59 PM

                      @KristjanESPERANTO but it didn’t execute the postinstall script…

                      tried to build without it… and it WILL fail without using electron-rebuild

                      what npm version is this?

                      Sam

                      How to add modules

                      learning how to use browser developers window for css changes

                      K 1 Reply Last reply Jan 6, 2023, 7:01 PM Reply Quote 0
                      • 1
                      • 2
                      • 3
                      • 4
                      • 5
                      • 6
                      • 1 / 6
                      1 / 6
                      • First post
                        7/53
                        Last post
                      Enjoying MagicMirror? Please consider a donation!
                      MagicMirror created by Michael Teeuw.
                      Forum managed by Sam, technical setup by Karsten.
                      This forum is using NodeBB as its core | Contributors
                      Contact | Privacy Policy