Closed neutmute closed 11 months ago
Hello. Try setting the file permissions (chmod) of the file to allow it to be extracted. 777 for the purposes of tests is fine, Now you can try run program "by finger" just invoke binary from /usr/bin (or just from unzipped archive).
If that doesn't work then I have some guesses about the distro you're using (glibc version) but I'll wait for more data.
fast reply!
Do you mean file permissions on the zip? I unzipped it fine and it deployed ok but the file seems to be invisible when I run it.
/usr/bin/argon_fan_controller
had +x on it as shown above
But I tried 777 anyway...
Before: stat --format '%a' /usr/bin/argon_fan_controller
=> 755
sudo chmod 777 /usr/bin/argon_fan_controller
After:
openhabian@openhab2:~ $ /usr/bin/argon_fan_controller
-bash: /usr/bin/argon_fan_controller: No such file or directory
openhabian@openhab2:~ $ ls -l /usr/bin/argon_fan_controller
-rwxrwxrwx 1 root root 424216 Jul 30 17:40 /usr/bin/argon_fan_controller
I mean /usr/bin/argon_fan_controlle. But ok, I see its ok. Are you using 64-bits OS? I providing binary files only for aarch64.
Please check:
ldd /usr/bin/argon_fan_controller
openhabian@openhab2:~ $ ldd /usr/bin/argon_fan_controller
not a dynamic executable
openhabian@openhab2:~ $ uname -a
Linux openhab2 6.1.21-v8+ #1642 SMP PREEMPT Mon Apr 3 17:24:16 BST 2023 aarch64 GNU/Linux
I thought I would install cargo/rust and try compiling my own binary but then
openhabian@openhab2:~ $ ls /home/openhabian/.cargo/bin
cargo cargo-clippy cargo-fmt cargo-miri clippy-driver rls rust-analyzer rustc rustdoc rustfmt rust-gdb rust-gdbgui rust-lldb rustup
openhabian@openhab2:~ $ ./home/openhabian/.cargo/bin/cargo
-bash: ./home/openhabian/.cargo/bin/cargo: No such file or directory
openhabian@openhab2:~ $ ldd ./home/openhabian/.cargo/bin/cargo
ldd: ./home/openhabian/.cargo/bin/cargo: No such file or directory
π€·ββοΈ I am not sure what I am doing wrong - this is making me feel like a linux noob π
Unfortunately, this is the problem with distributing binary applications for Linux family systems (I also provide sources for them BTW, you can always compile the program on the target device, then it should always work). OpenSource on Linux is often a must.
Cargo installation etc. will give you nothing. Cargo is only used during build, it's not pip for python cvzy npm for Node to fetch dependencies dynamically.
I have idea. You have 64-bit ARM (as RPI4 be, aarch64) but you are using 32-bit OS (all major RPI OS are 32-bit, bot somme have 64-bit versions). I'm not sure why RPI community have problem with migrate to 64-bit OS but its fact.
Solution: use 64 bit OS (i think it ca be better choice for future, deplorably your distro provide 64-bit version too) or just compile controller yourself for target platform.
ok will try - thanks for pointers π
Hey there - The original argon scripts were unreliable for me - spinning the fan when it shoudn't have been (according to my config). I tried yours but get some odd behaviour
sudo systemctl restart argon_fan_controller
journalctl -u argon_fan_controller
ls -l /usr/bin/argon_fan_controller
ie: The file is there but if I try and execute it - it can't be found? It's a Raspberry Pi 4 running Openhabian.
Any ideas? π€ I'm using the binary downloaded from releases
cat /etc/os-release
lscpu