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 17.9k 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.
    • S Offline
      sdetweil @wishmaster270
      last edited by sdetweil

      @wishmaster270 on my intel box this worked great

      sam@galliumos:~/MagicMirror/modules/MMM-Buttons$ npm install --omit=dev --no-audit --no-fund
      
      > Magic-Mirror-Module-Buttons@1.0.0 postinstall
      > ./postinstall
      
      /home/sam/MagicMirror/modules/MMM-Buttons
      ⠇ Building module: epoll, Completed: 0make: Entering directory '/home/sam/MagicMirror/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 '/home/sam/MagicMirror/modules/MMM-Buttons/node_modules/epoll/build'
      ✔ Rebuild Complete
      
      added 6 packages in 31s
      

      worked on on buster

      pi@raspberrypi42:~/MagicMirror/modules/MMM-Buttons $ npm install --omit=dev --no-fund --no-audit
      
      > Magic-Mirror-Module-Buttons@1.0.0 postinstall
      > ./postinstall
      
      ⠸ Building module: epoll, Completed: 0make: Entering directory '/home/pi/MagicMirror/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 '/home/pi/MagicMirror/modules/MMM-Buttons/node_modules/epoll/build'
      ✔ Rebuild Complete
      
      up to date in 14s
      pi@raspberrypi42:~/MagicMirror/modules/MMM-Buttons $ grep version ../../package.json 
      	"version": "2.22.0",
      
      

      Sam

      How to add modules

      learning how to use browser developers window for css changes

      KristjanESPERANTOK S 2 Replies Last reply Reply Quote 0
      • KristjanESPERANTOK Offline
        KristjanESPERANTO Module Developer @sdetweil
        last edited by KristjanESPERANTO

        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 Reply Quote 0
        • S Offline
          sdetweil @KristjanESPERANTO
          last edited by

          @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 Offline
            sdetweil @KristjanESPERANTO
            last edited by sdetweil

            @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 Offline
              sdetweil @sdetweil
              last edited by

              @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

              karsten13K 1 Reply Last reply Reply Quote 0
              • karsten13K Online
                karsten13 @sdetweil
                last edited by

                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 Reply Quote 0
                • S Offline
                  sdetweil @karsten13
                  last edited by

                  @karsten13 yep, looks good…

                  Sam

                  How to add modules

                  learning how to use browser developers window for css changes

                  KristjanESPERANTOK 1 Reply Last reply Reply Quote 0
                  • KristjanESPERANTOK Offline
                    KristjanESPERANTO Module Developer @sdetweil
                    last edited by

                    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 Reply Quote 0
                    • S Offline
                      sdetweil @wishmaster270
                      last edited by

                      @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 Offline
                        sdetweil @KristjanESPERANTO
                        last edited by

                        @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

                        karsten13K 1 Reply Last reply Reply Quote 0
                        • 1
                        • 2
                        • 3
                        • 4
                        • 5
                        • 6
                        • 1 / 6
                        • First post
                          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