Optware / Optware-ng

279 stars 52 forks source link

Compiling sox on Synology Diskstation DS216play #229

Closed gbaderg closed 6 years ago

gbaderg commented 6 years ago

Qtip from EBI stated that, according to the optware-ng developer, it's development environment is not complete and not fit to compile hardfloat sox binary for this NAS.

http://www.synology-forum.de/showthread.html?68335-EBI-Easy-Bootstrap-Installer&p=739279&viewfull=1#post739279

Would you shed some light please what's the issue with it? Thank you in advance.

alllexx88 commented 6 years ago

Hi,

Qtip from EBI stated that, according to the optware-ng developer, it's development environment is not complete and not fit to compile hardfloat sox binary for this NAS.

http://www.synology-forum.de/showthread.html?68335-EBI-Easy-Bootstrap-Installer&p=739279&viewfull=1#post739279

I can't see a post about optware-ng development environment not being complete on the URL you posted. The post739279 actually has nothing to do with Optware-ng: it's about Entware-ng, which has no hard-float ARMv7 feed. With buildroot-armeabihf Optware-ng feed gcc should build hard-float binaries fine.

gbaderg commented 6 years ago

sorry, the link was wrong. Reference post is actually #291 http://www.synology-forum.de/showthread.html?68335-EBI-Easy-Bootstrap-Installer&p=739426&viewfull=1#post739426

Interesting, thank you! So I picked the wrong option in EBI it seems, not knowing of this difference.

alllexx88 commented 6 years ago

http://www.synology-forum.de/showthread.html?68335-EBI-Easy-Bootstrap-Installer&p=739426&viewfull=1#post739426

Ah, now it makes sense. Yes, some while ago, compiling with Optware-ng gcc required some specific flags, but after patching gcc, and setting binutils and libc prefix, dev tools are pretty much fine. E.g., try this "hello world" example:

$ cat hello_world.c
#include <stdio.h>

int main() {
        printf("Hello world\n");

        return 0;
}
$ gcc hello_world.c -o hello_world
$ ./hello_world
Hello world
$ ldd hello_world
        linux-gate.so.1 (0xf7794000)
        libc.so.6 => /opt/lib/libc.so.6 (0xf75da000)
        /opt/lib/ld-linux.so.2 (0xf7795000)
alllexx88 commented 6 years ago

I think this issue can be closed now

gbaderg commented 5 years ago

thank you @alllexx88 and sorry my laptop crashed soon after this post and only now realised your answer. Will definitely try and exchange Entware-NG for Optware-ng. Big misunderstanding when I installed at first. Absolutely need hard float in this binary.