XCP-ng
    • Categories
    • Recent
    • Tags
    • Popular
    • Users
    • Groups
    • Register
    • Login

    libfuse.so: error adding symbols: File in wrong format

    Scheduled Pinned Locked Moved Xen Orchestra
    47 Posts 8 Posters 22.4k Views 8 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.
    • M Offline
      mavoff @Mark C
      last edited by mavoff

      @Mark-C Hi there

      I had this fuse fix for arm working for a long while.
      Recently due to another issue I was pushed towards updating, only to get a broken XO and issue abandoned. Even when shown that I was on this branch specifically, fix_fuse_dependancy_arm.

      Also tried your suggestion as a fix, but not quite working.

      # yarn
      yarn install v1.22.19
      [1/5] Validating package.json...
      [2/5] Resolving packages...
      [3/5] Fetching packages...
      [4/5] Linking dependencies...
      warning "workspace-aggregator-7976f8d6-c4ac-4618-ae07-8b737c9d1cc1 > @xen-orchestra/fs > @aws-sdk/lib-storage@3.171.0" has unmet peer dependency "@aws-sdk/abort-controller@^3.0.0".
      warning Workspaces can only be enabled in private projects.
      [5/5] Building fresh packages...
      [1/12] ⠐ husky
      [6/12] ⠐ argon2
      [3/12] ⠐ highlight.js
      [4/12] ⠐ esbuild
      warning Error running install script for optional dependency: "/opt/xen-orchestra/node_modules/fuse-native: Command failed.
      Exit code: 1
      Command: node-gyp-build
      Arguments: 
      Directory: /opt/xen-orchestra/node_modules/fuse-native
      Output:
      node:events:495
            throw er; // Unhandled 'error' event
            ^
      
      Error: spawn node-gyp ENOENT
          at ChildProcess._handle.onexit (node:internal/child_process:284:19)
          at onErrorNT (node:internal/child_process:477:16)
          at process.processTicksAndRejections (node:internal/process/task_queues:82:21)
      Emitted 'error' event on ChildProcess instance at:
          at ChildProcess._handle.onexit (node:internal/child_process:290:12)
          at onErrorNT (node:internal/child_process:477:16)
          at process.processTicksAndRejections (node:internal/process/task_queues:82:21) {
        errno: -2,
        code: 'ENOENT',
        syscall: 'spawn node-gyp',
        path: 'node-gyp',
        spawnargs: [ 'rebuild' ]
      [10/12] ⠠ core-js
      [6/12] ⠠ argon2
      [8/12] ⠠ vuepress
      [7/12] ⠠ leveldown
      error /opt/xen-orchestra/node_modules/leveldown: Command failed.
      Exit code: 1
      Command: node-gyp-build
      Arguments: 
      Directory: /opt/xen-orchestra/node_modules/leveldown
      Output:
      node:events:495
            throw er; // Unhandled 'error' event
            ^
      
      Error: spawn node-gyp ENOENT
          at ChildProcess._handle.onexit (node:internal/child_process:284:19)
          at onErrorNT (node:internal/child_process:477:16)
          at process.processTicksAndRejections (node:internal/process/task_queues:82:21)
      Emitted 'error' event on ChildProcess instance at:
          at ChildProcess._handle.onexit (node:internal/child_process:290:12)
          at onErrorNT (node:internal/child_process:477:16)
          at process.processTicksAndRejections (node:internal/process/task_queues:82:21) {
        errno: -2,
        code: 'ENOENT',
        syscall: 'spawn node-gyp',
        path: 'node-gyp',
        spawnargs: [ 'rebuild' ]
      

      Thank you for your reply either way. Cheers

      M 1 Reply Last reply Reply Quote 0
      • M Offline
        Mark C @mavoff
        last edited by Mark C

        @maverick Hi Maverick,

        I just tried a test build prep and it seems to work for me. I created a new user, xo_test and swapped to it, then:

        
        xo_test@xo2:~$ mkdir build
        xo_test@xo2:~$ cd build/
        xo_test@xo2:~/build$ git clone https://github.com/sagemathinc/fuse-native
        Cloning into 'fuse-native'...
        remote: Enumerating objects: 409, done.
        remote: Counting objects: 100% (409/409), done.
        remote: Compressing objects: 100% (160/160), done.
        remote: Total 409 (delta 259), reused 396 (delta 246), pack-reused 0
        Receiving objects: 100% (409/409), 150.36 KiB | 2.64 MiB/s, done.
        Resolving deltas: 100% (259/259), done.
        
        xo_test@xo2:~/build$ git clone https://github.com/vatesfr/xen-orchestra.git
        Cloning into 'xen-orchestra'...
        remote: Enumerating objects: 119983, done.
        remote: Counting objects: 100% (3095/3095), done.
        remote: Compressing objects: 100% (1400/1400), done.
        remote: Total 119983 (delta 2143), reused 2278 (delta 1654), pack-reused 116888
        Receiving objects: 100% (119983/119983), 64.38 MiB | 9.78 MiB/s, done.
        Resolving deltas: 100% (86309/86309), done.
        
        xo_test@xo2:~/build$ cp -a fuse-native fuse-native.orig
        xo_test@xo2:~/build/fuse-native$ nano -w fuse-native/package.json 
        
        xo_test@xo2:~/build$ diff -u fuse-native.orig fuse-native
        Common subdirectories: fuse-native.orig/.git and fuse-native/.git
        diff -u fuse-native.orig/package.json fuse-native/package.json
        --- fuse-native.orig/package.json	2023-10-23 14:25:18.067638984 +0100
        +++ fuse-native/package.json	2023-10-23 14:29:19.703990676 +0100
        @@ -1,6 +1,6 @@
         {
        -  "name": "@cocalc/fuse-native",
        -  "version": "2.4.0",
        +  "name": "fuse-native",
        +  "version": "2.2.6",
           "description": "Node.js bindings for the FUSE api (Filesystem in Userspace)",
           "main": "index.js",
           "bin": {
        @@ -28,7 +28,7 @@
           },
           "repository": {
             "type": "git",
        -    "url": "https://github.com/sagemathinc/fuse-native.git"
        +    "url": "https://github.com/fuse-friends/fuse-native.git"
           },
           "author": {
             "name": "William Stein (SageMath, Inc.)",
        @@ -44,7 +44,7 @@
           "author": " ()",
           "license": "MIT",
           "bugs": {
        -    "url": "https://github.com/sagemathinc/fuse-native/issues"
        +    "url": "https://github.com/fuse-friends/fuse-native/issues"
           },
        -  "homepage": "https://github.com/sagemathinc/fuse-native"
        +  "homepage": "https://github.com/fuse-friends/fuse-native"
         }
        Common subdirectories: fuse-native.orig/test and fuse-native/test
        
        xo_test@xo2:~/build$ cp -a fuse-native xen-orchestra
        xo_test@xo2:~/build$ cd xen-orchestra/
        xo_test@xo2:~/build/xen-orchestra$ cd fuse-native/
        xo_test@xo2:~/build/xen-orchestra/fuse-native$ yarn link
        yarn link v1.22.19
        success Registered "fuse-native".
        info You can now run `yarn link "fuse-native"` in the projects where you want to use this package and it will be used instead.
        Done in 0.15s.
        
        xo_test@xo2:~/build/xen-orchestra/fuse-native$ cd ..
        xo_test@xo2:~/build/xen-orchestra$ yarn link fuse-native
        yarn link v1.22.19
        success Using linked package for "fuse-native".
        Done in 0.13s.
        
        xo_test@xo2:~/build/xen-orchestra$ yarn
        yarn install v1.22.19
        [1/5] Validating package.json...
        [2/5] Resolving packages...
        [3/5] Fetching packages...
        warning url-loader@1.1.2: Invalid bin field for "url-loader".
        [4/5] Linking dependencies...
        warning "workspace-aggregator-6dab12fa-fabf-4759-8627-2058ff251bdf > @vates/node-vsphere-soap > soap@1.0.0" has incorrect peer dependency "axios@^0.27.2".
        warning Workspaces can only be enabled in private projects.
        [5/5] Building fresh packages...
        $ husky install
        husky - Git hooks installed
        Done in 425.65s.
        

        I haven't kicked off the yarn build, but it was the yarn stage that failed for you.

        Does the above help? [ As I said back in August, manually editing the package.json for sagemathinc's fuse-native to match the fuse-friends one that is called out in the xen-orchestra git tree is a completely horrible hack, but it does seem to work for me. ]

        xo_test@xo2:~/build$ cat /etc/debian_version 
        12.2
        

        Cheers,

        Mark

        EDIT 24/Oct/2023: The build needs node-gyp and node-gyp-build packages installing with npm, and the fuse libraries and devel packages and pkg-config for the operating system, along with the pre-reqs noted in the XO from the Sources build instructions in the wiki. The build host needs a decent amount of RAM - it built for me in 3GB but failed with 1GB. Once built, it runs fine for me with 1GB.

        M 1 Reply Last reply Reply Quote 1
        • M Offline
          Mark C @Mark C
          last edited by

          Sorry for the bad paste of the diff. Quoted properly here.

          xo_test@xo2:~/build$ diff -u fuse-native.orig fuse-native
          Common subdirectories: fuse-native.orig/.git and fuse-native/.git
          diff -u fuse-native.orig/package.json fuse-native/package.json
          --- fuse-native.orig/package.json	2023-10-23 14:25:18.067638984 +0100
          +++ fuse-native/package.json	2023-10-23 14:29:19.703990676 +0100
          @@ -1,6 +1,6 @@
           {
          -  "name": "@cocalc/fuse-native",
          -  "version": "2.4.0",
          +  "name": "fuse-native",
          +  "version": "2.2.6",
             "description": "Node.js bindings for the FUSE api (Filesystem in Userspace)",
             "main": "index.js",
             "bin": {
          @@ -28,7 +28,7 @@
             },
             "repository": {
               "type": "git",
          -    "url": "https://github.com/sagemathinc/fuse-native.git"
          +    "url": "https://github.com/fuse-friends/fuse-native.git"
             },
             "author": {
               "name": "William Stein (SageMath, Inc.)",
          @@ -44,7 +44,7 @@
             "author": " ()",
             "license": "MIT",
             "bugs": {
          -    "url": "https://github.com/sagemathinc/fuse-native/issues"
          +    "url": "https://github.com/fuse-friends/fuse-native/issues"
             },
          -  "homepage": "https://github.com/sagemathinc/fuse-native"
          +  "homepage": "https://github.com/fuse-friends/fuse-native"
           }
          Common subdirectories: fuse-native.orig/test and fuse-native/test
          
          M 1 Reply Last reply Reply Quote 1
          • M Offline
            mavoff @Mark C
            last edited by

            @Mark-C Hi Mark,

            Thanks for all the trouble, I tried to replicate your steps but unfortunately without success.

            [root@xo-admin ~]# cd /opt
            [root@xo-admin opt]# git clone https://github.com/vatesfr/xen-orchestra
            Cloning into 'xen-orchestra'...
            remote: Enumerating objects: 120119, done.
            remote: Counting objects: 100% (3260/3260), done.
            remote: Compressing objects: 100% (1430/1430), done.
            remote: Total 120119 (delta 2274), reused 2458 (delta 1787), pack-reused 116859
            Receiving objects: 100% (120119/120119), 63.88 MiB | 39.84 MiB/s, done.
            Resolving deltas: 100% (86372/86372), done.
            [root@xo-admin opt]# mkdir /usr/local/build && cd /usr/local/build
            [root@xo-admin build]# git clone https://github.com/sagemathinc/fuse-native
            Cloning into 'fuse-native'...
            remote: Enumerating objects: 409, done.
            remote: Counting objects: 100% (409/409), done.
            remote: Compressing objects: 100% (160/160), done.
            remote: Total 409 (delta 259), reused 396 (delta 246), pack-reused 0
            Receiving objects: 100% (409/409), 150.36 KiB | 6.26 MiB/s, done.
            Resolving deltas: 100% (259/259), done.
            [root@xo-admin build]# cp -a fuse-native fuse-native.orig
            [root@xo-admin build]# vim fuse-native/package.json 
            [root@xo-admin build]# diff -u fuse-native.orig fuse-native
            Common subdirectories: fuse-native.orig/.git and fuse-native/.git
            diff -u fuse-native.orig/package.json fuse-native/package.json
            --- fuse-native.orig/package.json	2023-10-23 18:51:45.481550145 +0000
            +++ fuse-native/package.json	2023-10-23 18:57:55.147358162 +0000
            @@ -1,6 +1,6 @@
             {
            -  "name": "@cocalc/fuse-native",
            -  "version": "2.4.0",
            +  "name": "fuse-native",
            +  "version": "2.2.6",
               "description": "Node.js bindings for the FUSE api (Filesystem in Userspace)",
               "main": "index.js",
               "bin": {
            @@ -28,7 +28,7 @@
               },
               "repository": {
                 "type": "git",
            -    "url": "https://github.com/sagemathinc/fuse-native.git"
            +    "url": "https://github.com/fuse-friends/fuse-native.git"
               },
               "author": {
                 "name": "William Stein (SageMath, Inc.)",
            @@ -44,7 +44,7 @@
               "author": " ()",
               "license": "MIT",
               "bugs": {
            -    "url": "https://github.com/sagemathinc/fuse-native/issues"
            +    "url": "https://github.com/fuse-friends/fuse-native/issues"
               },
            -  "homepage": "https://github.com/sagemathinc/fuse-native"
            +  "homepage": "https://github.com/fuse-friends/fuse-native"
             }
            Common subdirectories: fuse-native.orig/test and fuse-native/test
            [root@xo-admin build]# cp -a fuse-native /opt/xen-orchestra && cd /opt/xen-orchestra/fuse-native
            [root@xo-admin fuse-native]# yarn link
            yarn link v1.22.19
            success Registered "fuse-native".
            info You can now run `yarn link "fuse-native"` in the projects where you want to use this package and it will be used instead.
            Done in 0.07s.
            [root@xo-admin fuse-native]# cd ..
            [root@xo-admin xen-orchestra]# yarn link fuse-native
            yarn link v1.22.19
            success Using linked package for "fuse-native".
            Done in 0.06s.
            [root@xo-admin xen-orchestra]# yarn
            yarn install v1.22.19
            [1/5] Validating package.json...
            [2/5] Resolving packages...
            [3/5] Fetching packages...
            [4/5] Linking dependencies...
            warning "workspace-aggregator-a38c624e-a713-4a04-9b77-b644fa3bdb45 > @vates/node-vsphere-soap > soap@1.0.0" has incorrect peer dependency "axios@^0.27.2".
            warning Workspaces can only be enabled in private projects.
            [5/5] Building fresh packages...
            [6/19] ⠐ vue-demi
            [2/19] ⠐ highlight.js
            [3/19] ⠐ esbuild
            [4/19] ⠐ fuse-native
            error /opt/xen-orchestra/node_modules/fuse-native: Command failed.
            Exit code: 1
            Command: node-gyp-build
            Arguments: 
            Directory: /opt/xen-orchestra/node_modules/fuse-native
            Output:
            node:events:495
                  throw er; // Unhandled 'error' event
                  ^
            
            Error: spawn node-gyp ENOENT
                at ChildProcess._handle.onexit (node:internal/child_process:284:19)
                at onErrorNT (node:internal/child_process:477:16)
                at process.processTicksAndRejections (node:internal/process/task_queues:82:21)
            Emitted 'error' event on ChildProcess instance at:
                at ChildProcess._handle.onexit (node:internal/child_process:290:12)
                at onErrorNT (node:internal/child_process:477:16)
                at process.processTicksAndRejections (node:internal/process/task_queues:82:21) {
              errno: -2,
              code: 'ENOENT',
              syscall: 'spawn node-gyp',
              path: 'node-gyp',
              spawnargs: [ 'rebuild' ]
            
            
            
            
            [root@xo-admin xen-orchestra]# 
            

            The instance is an ARM based instance on Oracle Cloud Infrastructure running

            [root@xo-admin xen-orchestra]# cat /etc/os-release 
            NAME="Oracle Linux Server"
            VERSION="8.8"
            ID="ol"
            ID_LIKE="fedora"
            VARIANT="Server"
            VARIANT_ID="server"
            VERSION_ID="8.8"
            PLATFORM_ID="platform:el8"
            PRETTY_NAME="Oracle Linux Server 8.8"
            ANSI_COLOR="0;31"
            CPE_NAME="cpe:/o:oracle:linux:8:8:server"
            HOME_URL="https://linux.oracle.com/"
            BUG_REPORT_URL="https://github.com/oracle/oracle-linux"
            
            ORACLE_BUGZILLA_PRODUCT="Oracle Linux 8"
            ORACLE_BUGZILLA_PRODUCT_VERSION=8.8
            ORACLE_SUPPORT_PRODUCT="Oracle Linux"
            ORACLE_SUPPORT_PRODUCT_VERSION=8.8
            

            Cheers

            M 1 Reply Last reply Reply Quote 0
            • M Offline
              Mark C @mavoff
              last edited by Mark C

              @maverick

              I don't have an oracle 8.8 build environment to check directly, but this error seems to imply node-gyp can't be found / started, or it is looking in the wrong place / there's a path difference between Oracle and Debian build environments.

              code: 'ENOENT',
                syscall: 'spawn node-gyp',
                path: 'node-gyp',
                spawnargs: [ 'rebuild' ]
              

              Try 'npm install -g node-gyp' to make sure it is present? The same for node-gyp-build.

              Do you also have the pkg-config rpm installed? And the native fuse libs rpm? The sagemathinc package will need these.

              Cheers,

              Mark

              PS. I did run a 'yarn build' in my Debian VM and it built successfully after I gave it 3GB of RAM.

              EDIT 24/Oct/2023: the -devel fuse libraries are needed too.

              M 1 Reply Last reply Reply Quote 1
              • M Offline
                mavoff @Mark C
                last edited by mavoff

                @Mark-C Hello Mark good morning and once more thanks for your feedback.

                So, regarding installed libs, they are:

                # dnf list installed | grep fuse
                fuse-common.aarch64                         3.3.0-16.0.1.el8                                   @ol8_baseos_latest    
                fuse-libs.aarch64                           2.9.7-16.0.1.el8                                   @ol8_baseos_latest    
                fuse3.aarch64                               3.3.0-16.0.1.el8                                   @ol8_baseos_latest    
                fuse3-libs.aarch64                          3.3.0-16.0.1.el8                                   @ol8_baseos_latest    
                

                the node-gyp ... was installed before, as every yarn ran on the fix_fuse_dependancy_arm before the pull ran successfully but worth the try:

                ]# npm install -g node-gyp
                
                added 129 packages in 6s
                
                17 packages are looking for funding
                  run `npm fund` for details
                [root@xo-admin ~]# npm install -g node-gyp-build
                
                added 1 package in 465ms
                [root@xo-admin ~]# cd /opt/xen-orchestra
                [root@xo-admin xen-orchestra]# yarn
                yarn install v1.22.19
                [1/5] Validating package.json...
                [2/5] Resolving packages...
                [3/5] Fetching packages...
                [4/5] Linking dependencies...
                warning "workspace-aggregator-81db5e50-50e8-4d08-ac0a-85a8882fd055 > @vates/node-vsphere-soap > soap@1.0.0" has incorrect peer dependency "axios@^0.27.2".
                warning Workspaces can only be enabled in private projects.
                [5/5] Building fresh packages...
                [14/19] ⠠ argon2
                [13/19] ⠠ esbuild
                [12/19] ⠠ vue-echarts
                [4/19] ⠠ fuse-native
                error /opt/xen-orchestra/node_modules/fuse-native: Command failed.
                Exit code: 1
                Command: node-gyp-build
                Arguments: 
                Directory: /opt/xen-orchestra/node_modules/fuse-native
                Output:
                gyp info it worked if it ends with ok
                gyp info using node-gyp@9.4.0
                gyp info using node@18.18.2 | linux | arm64
                gyp info find Python using Python version 3.6.8 found at "/usr/bin/python3"
                gyp info spawn /usr/bin/python3
                gyp info spawn args [
                gyp info spawn args   '/usr/local/lib/node_modules/node-gyp/gyp/gyp_main.py',
                gyp info spawn args   'binding.gyp',
                gyp info spawn args   '-f',
                gyp info spawn args   'make',
                gyp info spawn args   '-I',
                gyp info spawn args   '/opt/xen-orchestra/fuse-native/build/config.gypi',
                gyp info spawn args   '-I',
                gyp info spawn args   '/usr/local/lib/node_modules/node-gyp/addon.gypi',
                gyp info spawn args   '-I',
                gyp info spawn args   '/root/.cache/node-gyp/18.18.2/include/node/common.gypi',
                gyp info spawn args   '-Dlibrary=shared_library',
                gyp info spawn args   '-Dvisibility=default',
                gyp info spawn args   '-Dnode_root_dir=/root/.cache/node-gyp/18.18.2',
                gyp info spawn args   '-Dnode_gyp_dir=/usr/local/lib/node_modules/node-gyp',
                gyp info spawn args   '-Dnode_lib_file=/root/.cache/node-gyp/18.18.2/<(target_arch)/node.lib',
                gyp info spawn args   '-Dmodule_root_dir=/opt/xen-orchestra/fuse-native',
                gyp info spawn args   '-Dnode_engine=v8',
                gyp info spawn args   '--depth=.',
                gyp info spawn args   '--no-parallel',
                gyp info spawn args   '--generator-output',
                gyp info spawn args   'build',
                gyp info spawn args   '-Goutput_dir=.'
                gyp info spawn args ]
                Package fuse was not found in the pkg-config search path.
                Perhaps you should add the directory containing `fuse.pc'
                to the PKG_CONFIG_PATH environment variable
                Package 'fuse', required by 'virtual:world', not found
                Package fuse was not found in the pkg-config search path.
                Perhaps you should add the directory containing `fuse.pc'
                to the PKG_CONFIG_PATH environment variable
                Package 'fuse', required by 'virtual:world', not found
                gyp: Call to 'pkg-config --libs-only-L --libs-only-l fuse' returned exit status 1 while in binding.gyp. while trying to load binding.gyp
                gyp ERR! configure error 
                gyp ERR! stack Error: `gyp` failed with exit code: 1
                gyp ERR! stack     at ChildProcess.onCpExit (/usr/local/lib/node_modules/node-gyp/lib/configure.js:325:16)
                gyp ERR! stack     at ChildProcess.emit (node:events:517:28)
                gyp ERR! stack     at ChildProcess._handle.onexit (node:internal/child_process:292:12)
                gyp ERR! System Linux 5.4.17-2136.324.5.3.el8uek.aarch64
                gyp ERR! command "/usr/local/bin/node" "/usr/local/bin/node-gyp" "rebuild"
                gyp ERR! cwd /opt/xen-orchestra/fuse-native
                
                # find / -type f -iname fuse.pc
                
                # dnf whatprovides *fuse.pc
                Last metadata expiration check: 3:09:58 ago on Tue 24 Oct 2023 06:22:10 AM GMT.
                fuse-devel-2.9.7-12.0.1.el8.aarch64 : File System in Userspace (FUSE) v2 devel files
                Repo        : ol8_baseos_latest
                Matched from:
                Other       : *fuse.pc
                
                fuse-devel-2.9.7-12.0.2.el8.aarch64 : File System in Userspace (FUSE) v2 devel files
                Repo        : ol8_baseos_latest
                Matched from:
                Other       : *fuse.pc
                
                fuse-devel-2.9.7-12.0.3.el8.aarch64 : File System in Userspace (FUSE) v2 devel files
                Repo        : ol8_baseos_latest
                Matched from:
                Other       : *fuse.pc
                
                fuse-devel-2.9.7-12.0.4.el8.aarch64 : File System in Userspace (FUSE) v2 devel files
                Repo        : ol8_baseos_latest
                Matched from:
                Other       : *fuse.pc
                
                fuse-devel-2.9.7-15.0.2.el8.aarch64 : File System in Userspace (FUSE) v2 devel files
                Repo        : ol8_baseos_latest
                Matched from:
                Other       : *fuse.pc
                
                fuse-devel-2.9.7-16.0.1.el8.aarch64 : File System in Userspace (FUSE) v2 devel files
                Repo        : ol8_baseos_latest
                Matched from:
                Other       : *fuse.pc
                
                libconfuse-devel-3.3-7.el8.aarch64 : Development files for libconfuse
                Repo        : epel
                Matched from:
                Other       : *fuse.pc
                
                squashfuse-devel-0.1.104-1.el8.aarch64 : Development files for squashfuse
                Repo        : epel
                Matched from:
                Other       : *fuse.pc
                
                
                # dnf install -y fuse-devel
                Last metadata expiration check: 3:10:38 ago on Tue 24 Oct 2023 06:22:10 AM GMT.
                Dependencies resolved.
                ============================================================================================================================================================================================================================================
                 Package                                               Architecture                                       Version                                                        Repository                                                    Size
                ============================================================================================================================================================================================================================================
                Installing:
                 fuse-devel                                            aarch64                                            2.9.7-16.0.1.el8                                               ol8_baseos_latest                                             44 k
                
                Transaction Summary
                ============================================================================================================================================================================================================================================
                Install  1 Package
                
                Total download size: 44 k
                Installed size: 124 k
                Downloading Packages:
                fuse-devel-2.9.7-16.0.1.el8.aarch64.rpm                                                                                                                                                                     422 kB/s |  44 kB     00:00    
                --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
                Total                                                                                                                                                                                                       410 kB/s |  44 kB     00:00     
                Running transaction check
                Transaction check succeeded.
                Running transaction test
                Transaction test succeeded.
                Running transaction
                  Preparing        :                                                                                                                                                                                                                    1/1 
                  Installing       : fuse-devel-2.9.7-16.0.1.el8.aarch64                                                                                                                                                                                1/1 
                  Running scriptlet: fuse-devel-2.9.7-16.0.1.el8.aarch64                                                                                                                                                                                1/1 
                  Verifying        : fuse-devel-2.9.7-16.0.1.el8.aarch64                                                                                                                                                                                1/1 
                
                Installed:
                  fuse-devel-2.9.7-16.0.1.el8.aarch64                                                                                                                                                                                                       
                
                Complete!
                [root@xo-admin xen-orchestra]# yarn
                yarn install v1.22.19
                [1/5] Validating package.json...
                [2/5] Resolving packages...
                [3/5] Fetching packages...
                [4/5] Linking dependencies...
                warning "workspace-aggregator-fe799cd0-9fa4-4eaa-b335-8bcb3fdfd4a2 > @vates/node-vsphere-soap > soap@1.0.0" has incorrect peer dependency "axios@^0.27.2".
                warning Workspaces can only be enabled in private projects.
                [5/5] Building fresh packages...
                $ husky install
                husky - Git hooks installed
                Done in 50.84s.
                

                Going for the build now

                1 Reply Last reply Reply Quote 0
                • M Offline
                  mavoff
                  last edited by

                  @Mark-C kudus to you mate. Many thanks for your help, finally got it back.

                  ]# yarn build
                  yarn run v1.22.19
                  $ turbo run build --scope xo-server --scope xo-server-'*' --scope xo-web
                  ╭────────────────────────────────────────────────────────────────────────╮
                  │                                                                        │
                  │                  Update available v1.10.15 ≫ v1.10.16                  │
                  │    Changelog: https://github.com/vercel/turbo/releases/tag/v1.10.16    │
                  │               Run "npx @turbo/codemod update" to update                │
                  │                                                                        │
                  │      Follow @turborepo for updates: https://twitter.com/turborepo      │
                  ╰────────────────────────────────────────────────────────────────────────╯
                   WARNING  failed to contact turbod. Continuing in standalone mode: connection to turbo daemon process failed.
                  	To quickly resolve the issue, try running:
                  	- $ turbo daemon clean
                  
                  	To debug further - please ensure the following:
                  	- the process identified by the pid in the file at /tmp/turbod/8288938151d980a6/turbod.pid is not running, and remove /tmp/turbod/8288938151d980a6/turbod.pid
                  	- check the logs at /root/.local/share/turborepo/logs/8288938151d980a6-xen-orchestra.log
                  	- the unix domain socket at /tmp/turbod/8288938151d980a6/turbod.sock has been removed
                  
                  	You can also run without the daemon process by passing --no-daemon
                  • Packages in scope: xo-server, xo-server-audit, xo-server-auth-github, xo-server-auth-google, xo-server-auth-ldap, xo-server-auth-oidc, xo-server-auth-saml, xo-server-backup-reports, xo-server-load-balancer, xo-server-netbox, xo-server-perf-alert, xo-server-sdn-controller, xo-server-test, xo-server-test-plugin, xo-server-transport-email, xo-server-transport-icinga2, xo-server-transport-nagios, xo-server-transport-slack, xo-server-transport-xmpp, xo-server-usage-report, xo-server-web-hooks, xo-web
                  • Running build in 22 packages
                  • Remote caching disabled
                  
                   Tasks:    26 successful, 26 total
                  Cached:    0 cached, 26 total
                    Time:    2m38.144s 
                  
                  Done in 159.10s.
                  

                  Screenshot 2023-10-24 at 10.45.12.png

                  Super! Cheers mate!!

                  M 1 Reply Last reply Reply Quote 0
                  • M Offline
                    Mark C @mavoff
                    last edited by Mark C

                    @maverick

                    Fab. Glad to see you got there and it builds on Oracle Linux ARM64 / aarch64 too! It'd be good to hear if you come across any functions that don't work on the aarch64 build.

                    I'm also sorry for the missing dependencies. I guess I had installed those early on in my attempts to get this compiled in August and missed them from the instructions. I'll go back and edit my post above to document them.

                    Cheers,

                    Mark

                    M 1 Reply Last reply Reply Quote 2
                    • M Offline
                      mavoff @Mark C
                      last edited by

                      @Mark-C

                      Wouldn't have made it without your help! Super.

                      So far everything seems to be working normally, except for my original issue on the other topic, posting there now.

                      If any more issues come up I'll post them here and reference on this topic. Many thanks!!

                      A 1 Reply Last reply Reply Quote 1
                      • A Offline
                        AshleyDe @mavoff
                        last edited by

                        That libfuse.so error is a classic architecture mismatch headache—usually happens when the linker tries to grab a 32-bit lib for a 64-bit build (or vice versa). Double-check your library paths to make sure it's not pulling from a legacy directory.
                        On a side note, while I was cleaning up some of my own project scripts today, I came across this utility for SOAP to JSON conversion. I know it’s a bit of a tangent from the FUSE issue, but if any of you are dealing with older web services while modernizing your stack, it’s a total lifesaver.

                        M 1 Reply Last reply Reply Quote 0
                        • M Offline
                          Mark C @AshleyDe
                          last edited by

                          @AshleyDe It was exactly that, but complicated by the abandoned status of the fuse-native module being used for XOA in 2023. That module contained binary blobs, but unfortunately no binary for aarch64. Being abandoned meant getting aarch64 into that module was not possible.

                          My horrible bodge was to swap to an alternative module for fuse-native that built from source. Thus it avoided the missing aarch64 blob, but required additional dependancies for the compile to work.

                          I'm no longer using XOA on the aarch64 platform in my home lab so I haven't kept up to date on whether this is still needed in 2026.

                          1 Reply Last reply Reply Quote 0

                          Hello! It looks like you're interested in this conversation, but you don't have an account yet.

                          Getting fed up of having to scroll through the same posts each visit? When you register for an account, you'll always come back to exactly where you were before, and choose to be notified of new replies (either via email, or push notification). You'll also be able to save bookmarks and upvote posts to show your appreciation to other community members.

                          With your input, this post could be even better 💗

                          Register Login
                          • First post
                            Last post