jq
jq copied to clipboard
Provide ARM builds
Describe the bug Not a bug but a feature request. You already provide static builds for x86 and x64 on your website. Could you please also provide static builds for ARM32 (armhf / armv7l)? The Debian-based Raspbian OS, required to properly run a Raspberry Pi, is so old and outdated that there's still only jq 1.5 available as a package. I tried to download the 1.6 packages directly but they won't install because of an outdated libc version. There's no release date set on Debian 11 but it will probably still take a while until Raspbian gets jq 1.6. Unfortunately I need v1.6 for my program, 1.5 won't do.
I tried to build it myself from the provided source archive (but I'll also need to host the file myself to install it on other devices). That failed though. configure
succeeded with a warning: "no configuration information is in modules/oniguruma". make
failed with this output:
GEN src/builtin.inc
GEN src/version.h
make all-recursive
make[1]: Entering directory '/home/pi/jq/jq-1.6'
Making all in modules/oniguruma
make[2]: Entering directory '/home/pi/jq/jq-1.6/modules/oniguruma'
make[2]: *** No rule to make target 'all'. Stop.
make[2]: Leaving directory '/home/pi/jq/jq-1.6/modules/oniguruma'
make[1]: *** [Makefile:1085: all-recursive] Error 1
make[1]: Leaving directory '/home/pi/jq/jq-1.6'
make: *** [Makefile:762: all] Error 2
What is that "oniguruma"? It's not in my English dictionary. Is it Japanese?
Oniguruma is the library powering our regex functionality.
That error is because of an error I made when I put together the packaging of that release- it won't happen for future releases, and fixing it would require another release- I can't change the produced zip files now, it will break other things. In the meantime, you can fix it by running autoreconf -fi
before running configure
.
-bash: autoreconf: command not found
Where can I get it from?
The autoconf
package on raspbian should have it.
That doesn't seem to work. This is the full output of that command:
configure.ac:36: warning: macro 'AM_PROG_LIBTOOL' not found in library
configure.ac:36: error: possibly undefined macro: AM_PROG_LIBTOOL
If this token and others are legitimate, please use m4_pattern_allow.
See the Autoconf documentation.
autoreconf: /usr/bin/autoconf failed with exit status: 1
If changes to the released code v1.6.0 are necessary to fix the build, it could be done as v1.6.1, based just from the v1.6.0 release tag.
A google of that error suggests you should make sure you have the libtool
package installed as well.
If changes to the released code v1.6.0 are necessary to fix the build, it could be done as v1.6.1, based just from the v1.6.0 release tag.
It's something I've considered, but first I want to look and see how far away we are from a 1.7. If we're close enough, then I'd prefer to go that route.
Have you solved this problem? I have encountered the same problem recently
Yes, with the help from the above comments I could build the source code on a Raspberry Pi and have successfully copied that binary to other ARM32-based systems (other Raspberry Pis and an Orange Pi). I only still need to put the file on my website somewhere so it can be downloaded from other devices. I wish it would be available on the official website.
Any update on providing an official arm build? I'm trying to embed jq into a Kobo e-reader for a custom file sync and a prebuilt binary would be super handy.
Looks like the travis.yml needs updating to publish the aarch64
et al releases.
Seems the "code is there".
This has become relevant because of the new Apple Macbook M1 arm processors.
It seems there's another issue for this, as well: #2386