Open jketterl opened 4 years ago
Yes, that part is about generating blobs for FPGA.Let me investigate as I didn't remember why that option is there.
-i | -include
output in C include file style. A complete static array definition is written (named after the input file), unless xxd reads from stdin.
So, that option is there for a good reason. It seems that xxd in Alpine Linux is a very stripped down one when compared with the ones found in major distribution.
Is there an alternative generation method?
I will try to develop some other things. Which are the tools in that limited environment available ? Shell script ? Perl ?
I assume that at least a C program can be compiled, so the safer option would be to rewrite generate_fpga_code.sh as C program.
Yes, the busybox stuff is really stripped down to the bare minimum. It has been the cause of many headaches in the past. It's originally intended to run on embedded hardware, and is widely used on routers or NAS boxes.
I've seen how the -i
is used, and that's what led me to the conclusion to not include this for now. The first thing I'd recommend (independently on how we resolve this) is to include error handling and stop the build in case of errors.
I have been researching on what I could possibly do on my end:
xxd
packages that seems to be fully-equipped. I wouldn't mind using that, as it can be removed after the build, but unfotunately I'm still stuck with Alpine 3.10 since 3.11 has some weird failures with wsjt-x which I don't even know how to start adressing. This may be an option if I can get the rest to work.OK another update... I just found out that a proper version of xxd is bundled with the vim package. Not very intuitive, but I can solve the problem with that, at least for now. I'll leave it to you if you want to pursue this further :slightly_smiling_face:
I tried to integrate libperseus-sdr into the docker builds of OpenWebRX, and while the compilation does seem to pass, there is multiple errors coming from
xxd
about the lack of a-i
flag.They seem to be coming from the
generate_fpga_code.sh
. I'm not sure if this error is fatal, but my impression is that invalid FPGA code (that is probably uploaded to the SDR at some point) may cause some major issues, so I'm holding this back on my end for now.I know that busybox really isn't much help, but I have failed to come up with a way to get some other version of xxd in there.
Is there an alternative generation method?