nextcloud / recognize

👁 👂 Smart media tagging for Nextcloud: recognizes faces, objects, landscapes, music genres
https://apps.nextcloud.com/apps/recognize
GNU Affero General Public License v3.0
556 stars 46 forks source link

Could not execute the Node.js binary. You may need to set the path to a working binary manually. #1214

Open marianionut opened 19 hours ago

marianionut commented 19 hours ago

Which version of recognize are you using?

8.1.1

Enabled Modes

Face recognition, Object recognition

TensorFlow mode

GPU mode

Downstream App

Memories App

Which Nextcloud version do you have installed?

Nextcloud Hub 9 (30.0.2)

Which Operating system do you have installed?

Ubuntu 24.04.1 LTS

Which database are you running Nextcloud on?

mysql Ver 8.0.40 for Linux on x86_64 (Source distribution)

Which Docker container are you using to run Nextcloud? (if applicable)

it's a snap install

How much RAM does your server have?

Dynamic memory between 8 GB and 16 GB RAM

What processor Architecture does your CPU have?

x86_64

Describe the Bug

Nodejs stopped working after OS upgrade inside snap package Could not execute the Node.js binary. You may need to set the path to a working binary manually.

root@nextcloud:/home/nextcloud# node --version
v20.17.0
root@nextcloud:/home/nextcloud# /snap/bin/node --version
v20.18.0
root@nextcloud:/home/nextcloud# /var/snap/nextcloud/current/nextcloud/extra-apps/recognize/bin/node --version
Error relocating /usr/lib/x86_64-linux-gnu/libstdc++.so.6: arc4random: symbol not found
Error relocating /usr/lib/x86_64-linux-gnu/libstdc++.so.6: __fprintf_chk: symbol not found
Error relocating /usr/lib/x86_64-linux-gnu/libstdc++.so.6: __openat_2: symbol not found
Error relocating /usr/lib/x86_64-linux-gnu/libstdc++.so.6: __strftime_l: symbol not found
Error relocating /usr/lib/x86_64-linux-gnu/libstdc++.so.6: __memcpy_chk: symbol not found
Error relocating /usr/lib/x86_64-linux-gnu/libstdc++.so.6: __cxa_thread_atexit_impl: symbol not found
Error relocating /usr/lib/x86_64-linux-gnu/libstdc++.so.6: __mbsnrtowcs_chk: symbol not found
Error relocating /usr/lib/x86_64-linux-gnu/libstdc++.so.6: __read_chk: symbol not found
Error relocating /usr/lib/x86_64-linux-gnu/libstdc++.so.6: strfromf128: symbol not found
Error relocating /usr/lib/x86_64-linux-gnu/libstdc++.so.6: __wmemset_chk: symbol not found
Error relocating /usr/lib/x86_64-linux-gnu/libstdc++.so.6: __mbsrtowcs_chk: symbol not found
Error relocating /usr/lib/x86_64-linux-gnu/libstdc++.so.6: __memset_chk: symbol not found
Error relocating /usr/lib/x86_64-linux-gnu/libstdc++.so.6: strtof128: symbol not found
Error relocating /usr/lib/x86_64-linux-gnu/libstdc++.so.6: __wmemcpy_chk: symbol not found
Error relocating /usr/lib/x86_64-linux-gnu/libstdc++.so.6: __sprintf_chk: symbol not found
Error relocating /usr/lib/x86_64-linux-gnu/libstdc++.so.6: __memmove_chk: symbol not found
Error relocating /usr/lib/x86_64-linux-gnu/libstdc++.so.6: __isoc23_strtoul: symbol not found
Error relocating /usr/lib/x86_64-linux-gnu/libstdc++.so.6: __libc_single_threaded: symbol not found
Error relocating /usr/lib/x86_64-linux-gnu/libgcc_s.so.1: _dl_find_object: symbol not found
Error relocating /usr/lib/x86_64-linux-gnu/libgcc_s.so.1: __memset_chk: symbol not found
Error relocating /usr/lib/x86_64-linux-gnu/libgcc_s.so.1: __cpu_indicator_init: symbol not found
Error relocating /usr/lib/x86_64-linux-gnu/libgcc_s.so.1: __cpu_model: symbol not found
Error relocating /usr/lib/x86_64-linux-gnu/ld-linux-x86-64.so.2: unsupported relocation type 37
root@nextcloud:/home/nextcloud#

I tried to Set Library Path Manually LD_LIBRARY_PATH environment variable to include the directory where the libraries are located. For example:

export LD_LIBRARY_PATH=/usr/lib/x86_64-linux-gnu:$LD_LIBRARY_PATH then I tried running the Node.js binary again, but still fails /var/snap/nextcloud/current/nextcloud/extra-apps/recognize/bin/node --version

I also tried to symlink the node from host in the recognize folder, but it does't work root@nextcloud:/home/nextcloud# /root/.nvm/versions/node/v20.17.0/bin/node --version v20.17.0 root@nextcloud:/home/nextcloud

Expected Behavior

Nodejs is working with ubuntu 24.04 and nextcloud snap version Nextcloud Hub 9 (30.0.2)

To Reproduce

Image Image

Install Recognize in nextcloud snap version Nextcloud Hub 9 (30.0.2) with ubuntu 24.04

Debug log

Node.js Could not execute the Node.js binary. You may need to set the path to a working binary manually.

If the shipped Node.js binary doesn't work on your system for some reason you can set the path to a custom node.js binary. Currently supported is Node v20.9 and newer v20 releases.

/snap/bin/node

For Nextcloud Snap users, you need to adjust this path to point to the snap's "current" directory as the pre-configured path will change with each update. For example, set it to "/var/snap/nextcloud/current/nextcloud/extra-apps/recognize/bin/node" instead of "/var/snap/nextcloud/9337974/nextcloud/extra-apps/recognize/bin/node"

github-actions[bot] commented 19 hours ago

Hello :wave:

Thank you for taking the time to open this issue with recognize. I know it's frustrating when software causes problems. You have made the right choice to come here and open an issue to make sure your problem gets looked at and if possible solved. I try to answer all issues and if possible fix all bugs here, but it sometimes takes a while until I get to it. Until then, please be patient. Note also that GitHub is a place where people meet to make software better together. Nobody here is under any obligation to help you, solve your problems or deliver on any expectations or demands you may have, but if enough people come together we can collaborate to make this software better. For everyone. Thus, if you can, you could also look at other issues to see whether you can help other people with your knowledge and experience. If you have coding experience it would also be awesome if you could step up to dive into the code and try to fix the odd bug yourself. Everyone will be thankful for extra helping hands! One last word: If you feel, at any point, like you need to vent, this is not the place for it; you can go to the forum, to twitter or somewhere else. But this is a technical issue tracker, so please make sure to focus on the tech and keep your opinions to yourself. (Also see our Code of Conduct. Really.)

I look forward to working with you on this issue Cheers :blue_heart: