Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

YTnuer not working on OpenWRT #37

Open
rkerschn opened this issue Nov 13, 2024 · 27 comments
Open

YTnuer not working on OpenWRT #37

rkerschn opened this issue Nov 13, 2024 · 27 comments

Comments

@rkerschn
Copy link

rkerschn commented Nov 13, 2024

Dear Greg,

I've just tried to get YTuner running on my R7800 running OpenWRT.

First I made the ytuner executable with chmod +x

Nevertheless, executing YTuner always leads to:
-bash: ./ytuner not found

i digged a bit deeper and I think its an issue with the loader.

According to the OpenWRT HDDB the R7800 has the following Architecture:
ARMv7 Processor rev 0 (v7l), arm_cortex-a15_neon-vfpv4

Regards, Reinhard

@coffeegreg
Copy link
Owner

Hi Reinhard,
I just found libraries for Linux_ARM_OpenWrt_2203. I've never used OpenWRT based devices and never tried to cross-compile from Win64/x64_86 or Linux64/x64_86 to OpenWRT/ARMv7. 🤔 I can try. Why not, but I will need your help to test the compiled binaries and in case of missing some OpenWRT libraries to attach them. Ready to help ❓ I can't guarantee 100% success but I think it's worth a try. What do you think ❓ 🤔

@rkerschn
Copy link
Author

rkerschn commented Nov 13, 2024

Hi Greg,

All in all, sounds awesome, I help where I can 😊

To be honest, I never manually ran an application on OpenWRT, but only used the packaging tool opkg. But it should work as with any other Linux Distro.

May I ask, where have you found the libraries for Linux_ARM_OpenWrt_2203? I would need 2305.

router:/etc/ytuner# chmod +x ytuner
router:/etc/ytuner# ./ytuner
-ash: ./ytuner: not found
router:/etc/ytuner# ldd ytuner
/lib/ld-linux-armhf.so.3 (0xb6f25000)
libpthread.so.0 => /lib/ld-linux-armhf.so.3 (0xb6f25000)
libdl.so.2 => /lib/ld-linux-armhf.so.3 (0xb6f25000)
librt.so.1 => /lib/ld-linux-armhf.so.3 (0xb6f25000)
libc.so.6 => /lib/ld-linux-armhf.so.3 (0xb6f25000)

So I had a look at /lib and only found the ld-musl-armhf.so.1 library and libc.so
no ld-linux-armhf.so found
also no libpthread.so, libdl.so or librt.so are found. It's a bit strange, since ldd does not mention that those libs are missing. I will check that. Could be that I need those libs.

@rkerschn
Copy link
Author

I have tried to manually install libpthread, libdl and librt but
it looks like the library libdl is missing in the repository

I will check on that and will let you know

@TheBossME
Copy link

TheBossME commented Nov 14, 2024

One question: which version of openwrt is running ?
Is 2305 the version you need ?

I do have Proxmox running on arm64 and amd64. So I can do the tests also and can check it out.

https://downloads.openwrt.org/releases/22.03.5/targets/armvirt/64/

regard's Beatrice

@rkerschn
Copy link
Author

Dear Beatrice,

yep, I am running 2305.
That would be great if you could check it as well, thank you :)

@TheBossME
Copy link

TheBossME commented Nov 14, 2024

Dear Beatrice,

yep, I am running 2305.

That would be great if you could check it as well, thank you :)

https://downloads.openwrt.org/releases/22.03.5/targets/armvirt/64/

or

https://downloads.openwrt.org/releases/22.03.7/targets/armvirt/64/

This is the one I can actually checkout.
If this this to much different, it wouldn't help.

@rkerschn
Copy link
Author

you could use this, armsr replaces armvirt, according to 23.05 releasenotes
https://downloads.openwrt.org/releases/23.05.5/targets/armsr/armv7/

Release notes of 23.05 (https://openwrt.org/releases/23.05/notes-23.05.0):

Highlights of device support
Added Arm SystemReady (EFI) compliant target armsr replacing the armvirt target

@TheBossME
Copy link

Okay.. I do love Proxmox ..

https://downloads.openwrt.org/releases/23.05.5/targets/armsr/armv8/openwrt-23.05.5-armsr-armv8-generic-ext4-combined.img.gz

Is running.. I will go forward to configure..

image

@rkerschn
Copy link
Author

Great work, looks good!

Are you running arm v8 or v7?

The link in your last posting is arm v8,
The router I am running is arm v7

@TheBossME
Copy link

Great work, looks good!

Are you running arm v8 or v7?

The link in your last posting is arm v8,

The router I am running is arm v7

I can use both.

@rkerschn
Copy link
Author

I see, thanks

@TheBossME
Copy link

I see, thanks

I have issues while Opkg cannot update. Operation not permitted.

I wasn't firm with openwrt.

Other question:

Which package of ytuner have you used ?. There is dir arm v32 a separated package. I think you used wrong package

@rkerschn
Copy link
Author

this is the package that I used:
ytuner-1.2.3-arm-linux.zip

@TheBossME
Copy link

this is the package that I used:

ytuner-1.2.3-arm-linux.zip

What operating system is behind openwrt ?
If based on alpine Linux, the See my prior postings about installing missed compatibility libraries.

Greg: I informed in my last postings regarding alpine Linux.
Please put this information into documentation. Thanks.

@rkerschn
Copy link
Author

rkerschn commented Nov 14, 2024

It's not based on Alpine but like Alpine, it uses BusyBox and musl.

About missing libraries, yep, that's what I thought about yesterday.

I have tried to manually install libpthread, libdl and librt but it looks like the library libdl is missing in the repository

I will check on that and will let you know

@coffeegreg
Would it be possible to compile it for OpenWRT as well, maybe create an OpenWRT package?
It would make a lot of sense to have ytuner running on the home router, that needs to run anyway. So no other hardware needs to run in addition.

@rkerschn rkerschn changed the title YTnuer ARMv7 not working YTnuer ARMv7 not working on OpenWRT Nov 14, 2024
@TheBossME
Copy link

Question: why using openwrt ?. It's so easy running on all platforms

I didn't know if gcompat Library is available. This will fix your issue similar alpine.

@rkerschn
Copy link
Author

rkerschn commented Nov 14, 2024

Instead of explaining why, I think it is best to cite from Wikipedia:
OpenWrt (from open wireless router) is an open-source project for embedded operating systems based on Linux, primarily used on embedded devices to route network traffic. The main components are Linux, util-linux, musl,[4] and BusyBox. All components have been optimized to be small enough to fit into the limited storage and memory available in home routers.

OpenWrt is configured using a command-line interface (ash shell) or a web interface (LuCI). There are about 8000 optional software packages available for installation via the opkg package management system.

Installing OpenWRT is aseasy as upgrading the Vendors Firmware via the Routers Webinterface. That does not work with alpine. Not to speak of LUCI, that is not available on alpine.

@TheBossME
Copy link

Have you installed bash for starting ytuner ? And what about the missed c-libs ?. There is no compile for openwrt needed.

If you are using such exotic hardware, support will end here.

@rkerschn
Copy link
Author

rkerschn commented Nov 14, 2024

Thanks for your effort giving it a try.
Could you try OpenWRT x86 with ytuner i386 linux with Proxmox?
https://downloads.openwrt.org/releases/23.05.5/targets/x86/generic/

I would say ARM is ARM, no matter in wihch device it is soldered - so I think the issue is not necessarily the hardware rather than the software (OS).
Compiling for OpenWRT would take care of such dependencies.

@TheBossME
Copy link

Nope.

You can install free pascal on your openwrt system and compile yourself, or using supported distros.

Greg told you: He has not all hardware available to test.

Proxmox is designed for 64 bit systems only.

@rkerschn
Copy link
Author

@TheBossME
If you are not able to contribute anymore, thats fine with me.
Thank your effort and time so far!

I think it is perfectly legitimate to ask for support for a further distribution.
Especially because it makes a lot of sense to have ytuner running on the home router, that needs to run anyway. So no other hardware that acts as a server is needed to run in addition.

@TheBossME
Copy link

@TheBossME

If you are not able to contribute anymore, thats fine with me.

Thank your effort and time so far!

I think it is perfectly legitimate to ask for support for a further distribution.

Especially because it makes a lot of sense to have ytuner running on the home router, that needs to run anyway. So no other hardware that acts as a server is needed to run in addition.

Agreed 👍
Keep in mind. Greg has not the ability (not all hardware available) and time to compile on different platforms.

Again: Feel free to install Free Pascal on your hardware and start compile. I have no Pascal knowledge.

Installing I386 OS'SES is possible to install. But this will not help you as I understand right ?.

My other plan is, installing ytuner cluster instances for everybody with a default configuration. Will this be helpful for ya ?

@rkerschn
Copy link
Author

rkerschn commented Nov 14, 2024

Keep in mind. Greg has not the ability (not all hardware available) and time to compile on different platforms.

I think that's up to Greg. As I understood in his reply here, he suggested to give it a try, but he needs my help for testing. I am looking forward to help where I can :)

Again: Feel free to install Free Pascal on your hardware and start compile. I have no Pascal knowledge.

me neither, I also have no Pascal knowledge

Installing I386 OS'SES is possible to install. But this will not help you as I understand right ?.

It would help to see if it is a hardware or software related issue.
I've just tested it via kvm qemu i386 OpenWRT --> same issue as with arm7

Conclusion: one or some libraries are missing.
Would be great to consider library dependencies for OpenWRT :)

My other plan is, installing ytuner cluster instances for everybody with a default configuration. Will this be helpful for ya ?

I don't know but I would expect some difficulties regarding copyright due to the vtuner API. I would prefer a solution running privately on my own hardware. Nevertheless, I appreciate your offer, thank you!

@rkerschn rkerschn changed the title YTnuer ARMv7 not working on OpenWRT YTnuer not working on OpenWRT Nov 14, 2024
@TheBossME
Copy link

Finally: It is library issue.

If free pascal has no compile option for the needed library, it will not run.

Schönen Nachmittag
Gruß Beatrice

@rkerschn
Copy link
Author

rkerschn commented Nov 14, 2024

it's weird, because ldd does not give any hint about a missing library ;)

ldd returns for i386:
router:/etc/ytuner# ldd ytuner-i386
linux-gate.so.1 (0xf7edc000)
libc.so.6 => /lib/libc.so.6 (0xf7cbb000)
/lib/ld-linux.so.2 (0xf7ede000)

ldd returns for arm:
router:/etc/ytuner# ldd ytuner-arm
/lib/ld-linux-armhf.so.3 (0xb6f25000)
libpthread.so.0 => /lib/ld-linux-armhf.so.3 (0xb6f25000)
libdl.so.2 => /lib/ld-linux-armhf.so.3 (0xb6f25000)
librt.so.1 => /lib/ld-linux-armhf.so.3 (0xb6f25000)
libc.so.6 => /lib/ld-linux-armhf.so.3 (0xb6f25000)

@TheBossME
Copy link

TheBossME commented Nov 14, 2024

It is not, the libraries needed to run the application (e.g. gcompat) are definitely missing. Please try to add the alpine repository, maybe you can install it from there.

scanelf -i ~/vtuner

@rkerschn
Copy link
Author

Dear Beatrice,

I have tried as you suggested, for testing purpose, but I get an UNTRUSTED signature error.
Nevertheless, adding a non OpenWRT repository is not an option on a productive system, especially edge systems like routers. That would break the whole upgrade process. The only clean solution would be to build ytuner considering OpenWRT requirements.

As I said, I think it is perfectly legitimate to ask for support for a further distribution.
It is fine for me that you use alpine linux, but please respect that alpine is not the ultimate solution for everyone. Other purposes, other requirements, other demands, etc...

I appreciate your effort, but I am counting on @coffeegreg Greg and that I am going to support him in any way possible for me.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants