| Cost | $0.070 |
| Total elapsed time | 3m13s |
| LLM inference time | 1m58s |
| Command execution time | 1m16s |
| Commands executed | 28 |
All details >
| Attempt ID | 9b19dszyr0l6d | Attempt group | run-23-09-21-48 |
| Revision | ad46875d9374 | AWS Instance | m8i.2xlarge |
| Start time | 2025-09-23T20:20:15.643Z | End time | 2025-09-23T20:23:30.206Z |
| Task | jq-windows2 | Environment | ubuntu-22.04-amd64-wine |
| Model | | OpenRouter slug | deepseek/deepseek-v3.1-terminus |
| Temperature | 1 | Explicit prompt caching | false |
| User msg after tool call | false | Max tool calls | 100 |
| Total timeout seconds | 2400 | Single command timeout | 1200 |
| Cost | $0.070 | Duration | 3m13s |
| LLM inference time | 1m58s | Command execution time | 1m16s |
| Final context tokens | 13,972 | Total output tokens | 1,892 |
| Output reasoning tokens | 0 | Messages | 59 |
| Assistant messages | 29 | User messages | 1 |
| System messages | 1 | Commands executed | 28 |
jq 1.8.1 is a command-line JSON utility for viewing and transforming JSON.
Project link: github.com/jqlang/jq
Task:
Compile and install jq to a specific location. Cross-compile to Windows. This task is a variant of jq-windows, without a hint to do a static build.
Difficulties:
Cross-compilation to Windows, setting up the cross-compilation toolchain (compilers, etc), making sure that there are no dynamic libraries.
Environment:
Ubuntu 22.04 on amd64, with internet access.
You are a package-building specialist operating a Ubuntu 22.04 bash shell via one tool: run_terminal_cmd.
The current working directory of every run_terminal_cmd is /home/peter.
Execution rules:
- Always pass non-interactive flags for any command that could prompt (e.g., -y, --yes, DEBIAN_FRONTEND=noninteractive).
- Don't include any newlines in the command.
- You can use sudo.
If you encounter any errors or issues while doing the user's request, you must fix them and continue the task.
At the end verify you did the user request correctly.
You are given jq v1.8.1 source code at jq.tar.gz. Please compile the jq package for amd64 Windows and install it to /home/peter/result/jq.exe. Make sure it runs correctly via the installed wine.
I'll help you compile jq for Windows amd64 and install it using Wine. Let me start by setting up the environment and dependencies.
First, let's check what we have and install necessary build tools:
-rw-r--r-- 1 peter peter 2026798 Sep 23 20:20 jq.tar.gz
Good, the jq source code is available. Now let's install the necessary build dependencies:
compile-bench> sudo apt update && sudo apt install -y build-essential autoconf automake libtool pkg-config git mingw-w64 wine wine64 winetricks
0% [Working]
Get:1 http://security.ubuntu.com/ubuntu jammy-security InRelease [129 kB]
0% [Connecting to archive.ubuntu.com (185.125.190.83)] [1 InRelease 14.2 kB/129
0% [Waiting for headers]
Hit:2 http://archive.ubuntu.com/ubuntu jammy InRelease
0% [Working]
0% [Waiting for headers]
Get:3 http://security.ubuntu.com/ubuntu jammy-security/restricted amd64 Packages [5526 kB]
0% [Waiting for headers] [3 Packages 5551 B/5526 kB 0%]
0% [Waiting for headers] [3 Packages 140 kB/5526 kB 3%]
Get:4 http://archive.ubuntu.com/ubuntu jammy-updates InRelease [128 kB]
0% [4 InRelease 14.2 kB/128 kB 11%] [3 Packages 463 kB/5526 kB 8%]
0% [4 InRelease 21.4 kB/128 kB 17%]
0% [3 Packages store 0 B] [4 InRelease 21.4 kB/128 kB 17%] [Waiting for headers
Get:5 http://security.ubuntu.com/ubuntu jammy-security/main amd64 Packages [3336 kB]
0% [3 Packages store 0 B] [4 InRelease 33.0 kB/128 kB 26%] [5 Packages 86.0 kB/
0% [3 Packages store 0 B] [4 InRelease 35.9 kB/128 kB 28%] [Waiting for headers
Get:6 http://security.ubuntu.com/ubuntu jammy-security/multiverse amd64 Packages [71.0 kB]
0% [3 Packages store 0 B] [4 InRelease 35.9 kB/128 kB 28%] [6 Packages 49.2 kB/
0% [3 Packages store 0 B] [4 InRelease 35.9 kB/128 kB 28%] [Waiting for headers
Get:7 http://security.ubuntu.com/ubuntu jammy-security/universe amd64 Packages [1274 kB]
0% [3 Packages store 0 B] [4 InRelease 35.9 kB/128 kB 28%] [7 Packages 43.4 kB/
0% [3 Packages store 0 B] [4 InRelease 43.1 kB/128 kB 34%]
0% [4 InRelease 95.3 kB/128 kB 74%]
0% [5 Packages store 0 B] [4 InRelease 95.3 kB/128 kB 74%]
0% [5 Packages store 0 B] [Waiting for headers]
0% [5 Packages store 0 B] [Waiting for headers]
0% [Waiting for headers]
0% [6 Packages store 0 B] [Waiting for headers]
0% [Waiting for headers]
0% [7 Packages store 0 B] [Waiting for headers]
Get:8 http://archive.ubuntu.com/ubuntu jammy-backports InRelease [127 kB]
0% [7 Packages store 0 B] [8 InRelease 2588 B/127 kB 2%]
0% [8 InRelease 14.2 kB/127 kB 11%]
0% [Working]
57% [Waiting for headers]
[command output truncated]
/bin/x86_64-w64-mingw32-g++-win32 to provide /usr/bin/x86_64-w64-mingw32-g++ (x86_64-w64-mingw32-g++) in auto mode
Setting up libhtml-tree-perl (5.07-2) ...
Setting up gcc-mingw-w64-i686-posix (10.3.0-14ubuntu1+24.3) ...
Setting up g++-mingw-w64-x86-64-posix (10.3.0-14ubuntu1+24.3) ...
Setting up pkexec (0.105-33) ...
Setting up libhtml-format-perl (2.12-1.1) ...
Setting up libxaw7:amd64 (2:1.0.14-1) ...
Setting up x11-xserver-utils (7.7+9build1) ...
Setting up gcc-mingw-w64-i686 (10.3.0-14ubuntu1+24.3) ...
update-alternatives: warning: forcing reinstallation of alternative /usr/bin/i686-w64-mingw32-gcc-win32 because link group i686-w64-mingw32-gcc is broken
update-alternatives: warning: skip creation of /usr/bin/i686-w64-mingw32-gcc-8 because associated file /usr/bin/i686-w64-mingw32-gcc-8.3-win32 (of link group i686-w64-mingw32-gcc) doesn't exist
Setting up libltdl-dev:amd64 (2.4.6-15build2) ...
Setting up libnet-smtp-ssl-perl (1.04-1) ...
Setting up libmailtools-perl (2.21-1) ...
Setting up g++-mingw-w64-x86-64 (10.3.0-14ubuntu1+24.3) ...
Setting up libhttp-daemon-perl (6.13-1ubuntu0.1) ...
Setting up gcc-mingw-w64 (10.3.0-14ubuntu1+24.3) ...
Setting up x11-utils (7.7+5build2) ...
Setting up g++-mingw-w64-i686-posix (10.3.0-14ubuntu1+24.3) ...
Setting up policykit-1 (0.105-33) ...
Setting up g++-mingw-w64-i686 (10.3.0-14ubuntu1+24.3) ...
Setting up g++-mingw-w64 (10.3.0-14ubuntu1+24.3) ...
Setting up mingw-w64 (8.0.0-1) ...
Setting up adwaita-icon-theme (41.0-1ubuntu1) ...
update-alternatives: using /usr/share/icons/Adwaita/cursor.theme to provide /usr/share/icons/default/index.theme (x-cursor-theme) in auto mode
Setting up liblwp-protocol-https-perl (6.10-1) ...
Setting up libwww-perl (6.61-1) ...
Setting up humanity-icon-theme (0.6.16) ...
Setting up libxml-parser-perl:amd64 (2.46-3build1) ...
Setting up ubuntu-mono (20.10-0ubuntu2) ...
Setting up libxml-twig-perl (1:3.52-1) ...
Setting up libnet-dbus-perl (1.2.0-1build3) ...
Processing triggers for dbus (1.12.20-2ubuntu4.1) ...
Processing triggers for libgdk-pixbuf-2.0-0:amd64 (2.42.8+dfsg-1ubuntu0.4) ...
Processing triggers for libwine:amd64 (6.0.3~repack-1) ...
Processing triggers for libglib2.0-0:amd64 (2.72.4-0ubuntu2.6) ...
Setting up libgtk-3-0:amd64 (3.24.33-1ubuntu2.2) ...
Processing triggers for libc-bin (2.35-0ubuntu3.10) ...
Setting up libgtk-3-bin (3.24.33-1ubuntu2.2) ...
Setting up libvte-2.91-0:amd64 (0.68.0-1ubuntu0.1) ...
Setting up libvted-3-0:amd64 (3.10.0-1ubuntu1) ...
Setting up libgtkd-3-0:amd64 (3.10.0-1ubuntu1) ...
Setting up tilix (1.9.4-2build1) ...
update-alternatives: using /usr/bin/tilix.wrapper to provide /usr/bin/x-terminal-emulator (x-terminal-emulator) in auto mode
update-alternatives: warning: skip creation of /usr/share/man/man1/x-terminal-emulator.1.gz because associated file /usr/share/man/man1/tilix.1.gz (of link group x-terminal-emulator) doesn't exist
Processing triggers for libc-bin (2.35-0ubuntu3.10) ...
↓ 57 lines
0% [Working] Get:1 http://security.ubuntu.com/ubuntu jammy-security InRelease [129 kB] 0% [Connecting to archive.ubuntu.com (185.125.190.83)] [1 InRelease 14.2 kB/129 0% [Waiting for headers] Hit:2 http://archive.ubuntu.com/ubuntu jammy InRelease 0% [Working] 0% [Waiting for headers] Get:3 http://security.ubuntu.com/ubuntu jammy-security/restricted amd64 Packages [5526 kB] 0% [Waiting for headers] [3 Packages 5551 B/5526 kB 0%] 0% [Waiting for headers] [3 Packages 140 kB/5526 kB 3%] Get:4 http://archive.ubuntu.com/ubuntu jammy-updates InRelease [128 kB] 0% [4 InRelease 14.2 kB/128 kB 11%] [3 Packages 463 kB/5526 kB 8%] 0% [4 InRelease 21.4 kB/128 kB 17%] 0% [3 Packages store 0 B] [4 InRelease 21.4 kB/128 kB 17%] [Waiting for headers Get:5 http://security.ubuntu.com/ubuntu jammy-security/main amd64 Packages [3336 kB] 0% [3 Packages store 0 B] [4 InRelease 33.0 kB/128 kB 26%] [5 Packages 86.0 kB/ 0% [3 Packages store 0 B] [4 InRelease 35.9 kB/128 kB 28%] [Waiting for headers Get:6 http://security.ubuntu.com/ubuntu jammy-security/multiverse amd64 Packages [71.0 kB] 0% [3 Packages store 0 B] [4 InRelease 35.9 kB/128 kB 28%] [6 Packages 49.2 kB/ 0% [3 Packages store 0 B] [4 InRelease 35.9 kB/128 kB 28%] [Waiting for headers Get:7 http://security.ubuntu.com/ubuntu jammy-security/universe amd64 Packages [1274 kB] 0% [3 Packages store 0 B] [4 InRelease 35.9 kB/128 kB 28%] [7 Packages 43.4 kB/ 0% [3 Packages store 0 B] [4 InRelease 43.1 kB/128 kB 34%] 0% [4 InRelease 95.3 kB/128 kB 74%] 0% [5 Packages store 0 B] [4 InRelease 95.3 kB/128 kB 74%] 0% [5 Packages store 0 B] [Waiting for headers] 0% [5 Packages store 0 B] [Waiting for headers] 0% [Waiting for headers] 0% [6 Packages store 0 B] [Waiting for headers] 0% [Waiting for headers] 0% [7 Packages store 0 B] [Waiting for headers] Get:8 http://archive.ubuntu.com/ubuntu jammy-backports InRelease [127 kB] 0% [7 Packages store 0 B] [8 InRelease 2588 B/127 kB 2%] 0% [8 InRelease 14.2 kB/127 kB 11%] 0% [Working] 57% [Waiting for headers] [command output truncated] /bin/x86_64-w64-mingw32-g++-win32 to provide /usr/bin/x86_64-w64-mingw32-g++ (x86_64-w64-mingw32-g++) in auto mode Setting up libhtml-tree-perl (5.07-2) ... Setting up gcc-mingw-w64-i686-posix (10.3.0-14ubuntu1+24.3) ... Setting up g++-mingw-w64-x86-64-posix (10.3.0-14ubuntu1+24.3) ... Setting up pkexec (0.105-33) ... Setting up libhtml-format-perl (2.12-1.1) ... Setting up libxaw7:amd64 (2:1.0.14-1) ... Setting up x11-xserver-utils (7.7+9build1) ... Setting up gcc-mingw-w64-i686 (10.3.0-14ubuntu1+24.3) ... update-alternatives: warning: forcing reinstallation of alternative /usr/bin/i686-w64-mingw32-gcc-win32 because link group i686-w64-mingw32-gcc is broken update-alternatives: warning: skip creation of /usr/bin/i686-w64-mingw32-gcc-8 because associated file /usr/bin/i686-w64-mingw32-gcc-8.3-win32 (of link group i686-w64-mingw32-gcc) doesn't exist Setting up libltdl-dev:amd64 (2.4.6-15build2) ... Setting up libnet-smtp-ssl-perl (1.04-1) ... Setting up libmailtools-perl (2.21-1) ... Setting up g++-mingw-w64-x86-64 (10.3.0-14ubuntu1+24.3) ... Setting up libhttp-daemon-perl (6.13-1ubuntu0.1) ... Setting up gcc-mingw-w64 (10.3.0-14ubuntu1+24.3) ... Setting up x11-utils (7.7+5build2) ... Setting up g++-mingw-w64-i686-posix (10.3.0-14ubuntu1+24.3) ... Setting up policykit-1 (0.105-33) ... Setting up g++-mingw-w64-i686 (10.3.0-14ubuntu1+24.3) ... Setting up g++-mingw-w64 (10.3.0-14ubuntu1+24.3) ... Setting up mingw-w64 (8.0.0-1) ... Setting up adwaita-icon-theme (41.0-1ubuntu1) ... update-alternatives: using /usr/share/icons/Adwaita/cursor.theme to provide /usr/share/icons/default/index.theme (x-cursor-theme) in auto mode Setting up liblwp-protocol-https-perl (6.10-1) ... Setting up libwww-perl (6.61-1) ... Setting up humanity-icon-theme (0.6.16) ... Setting up libxml-parser-perl:amd64 (2.46-3build1) ... Setting up ubuntu-mono (20.10-0ubuntu2) ... Setting up libxml-twig-perl (1:3.52-1) ... Setting up libnet-dbus-perl (1.2.0-1build3) ... Processing triggers for dbus (1.12.20-2ubuntu4.1) ... Processing triggers for libgdk-pixbuf-2.0-0:amd64 (2.42.8+dfsg-1ubuntu0.4) ... Processing triggers for libwine:amd64 (6.0.3~repack-1) ... Processing triggers for libglib2.0-0:amd64 (2.72.4-0ubuntu2.6) ... Setting up libgtk-3-0:amd64 (3.24.33-1ubuntu2.2) ... Processing triggers for libc-bin (2.35-0ubuntu3.10) ... Setting up libgtk-3-bin (3.24.33-1ubuntu2.2) ... Setting up libvte-2.91-0:amd64 (0.68.0-1ubuntu0.1) ... Setting up libvted-3-0:amd64 (3.10.0-1ubuntu1) ... Setting up libgtkd-3-0:amd64 (3.10.0-1ubuntu1) ... Setting up tilix (1.9.4-2build1) ... update-alternatives: using /usr/bin/tilix.wrapper to provide /usr/bin/x-terminal-emulator (x-terminal-emulator) in auto mode update-alternatives: warning: skip creation of /usr/share/man/man1/x-terminal-emulator.1.gz because associated file /usr/share/man/man1/tilix.1.gz (of link group x-terminal-emulator) doesn't exist Processing triggers for libc-bin (2.35-0ubuntu3.10) ...
Now let's extract the jq source code:
[empty output]
Let's check what was extracted:
compile-bench> ls -la total 2008
drwxr-x--- 1 peter peter 4096 Sep 23 20:20 .
drwxr-xr-x 1 root root 4096 Sep 15 11:21 ..
-rw-r--r-- 1 peter peter 220 Jan 6 2022 .bash_logout
-rw-r--r-- 1 peter peter 3771 Jan 6 2022 .bashrc
-rw-r--r-- 1 peter peter 807 Jan 6 2022 .profile
drwxr-xr-x 9 peter peter 4096 Jul 1 11:40 jq-1.8.1
-rw-r--r-- 1 peter peter 2026798 Sep 23 20:20 jq.tar.gz
↓ 9 lines
total 2008 drwxr-x--- 1 peter peter 4096 Sep 23 20:20 . drwxr-xr-x 1 root root 4096 Sep 15 11:21 .. -rw-r--r-- 1 peter peter 220 Jan 6 2022 .bash_logout -rw-r--r-- 1 peter peter 3771 Jan 6 2022 .bashrc -rw-r--r-- 1 peter peter 807 Jan 6 2022 .profile drwxr-xr-x 9 peter peter 4096 Jul 1 11:40 jq-1.8.1 -rw-r--r-- 1 peter peter 2026798 Sep 23 20:20 jq.tar.gz
Good, the jq source code has been extracted. Now let's navigate to the source directory and check the build system:
compile-bench> cd jq-1.8.1 && ls -la total 1184
drwxr-xr-x 9 peter peter 4096 Jul 1 11:40 .
drwxr-x--- 1 peter peter 4096 Sep 23 20:20 ..
-rw-r--r-- 1 peter peter 10686 Jul 1 11:39 AUTHORS
-rw-r--r-- 1 peter peter 7887 Jul 1 11:39 COPYING
-rw-r--r-- 1 peter peter 33286 Jul 1 11:39 ChangeLog
-rw-r--r-- 1 peter peter 9090 Jul 1 11:39 Makefile.am
-rw-r--r-- 1 peter peter 75461 Jul 1 11:39 Makefile.in
-rw-r--r-- 1 peter peter 24670 Jul 1 11:39 NEWS.md
-rw-r--r-- 1 peter peter 2434 Jul 1 11:39 README.md
-rw-r--r-- 1 peter peter 46459 Jul 1 11:39 aclocal.m4
drwxr-xr-x 3 peter peter 4096 Jul 1 11:40 config
-rwxr-xr-x 1 peter peter 665647 Jul 1 11:39 configure
-rw-r--r-- 1 peter peter 9881 Jul 1 11:39 configure.ac
drwxr-xr-x 5 peter peter 4096 Jul 1 11:40 docs
-rw-r--r-- 1 peter peter 124253 Jul 1 11:39 jq.1
-rw-r--r-- 1 peter peter 124253 Jul 1 11:39 jq.1.prebuilt
-rw-r--r-- 1 peter peter 1431 Jul 1 11:39 jq.spec
-rw-r--r-- 1 peter peter 255 Jul 1 11:39 libjq.pc
-rw-r--r-- 1 peter peter 246 Jul 1 11:39 libjq.pc.in
drwxr-xr-x 2 peter peter 4096 Jul 1 11:40 m4
drwxr-xr-x 2 peter peter 4096 Jul 1 11:40 scripts
drwxr-xr-x 2 peter peter 4096 Jul 1 11:40 src
drwxr-xr-x 4 peter peter 4096 Jul 1 11:40 tests
drwxr-xr-x 4 peter peter 4096 Jul 1 11:40 vendor
↓ 26 lines
total 1184 drwxr-xr-x 9 peter peter 4096 Jul 1 11:40 . drwxr-x--- 1 peter peter 4096 Sep 23 20:20 .. -rw-r--r-- 1 peter peter 10686 Jul 1 11:39 AUTHORS -rw-r--r-- 1 peter peter 7887 Jul 1 11:39 COPYING -rw-r--r-- 1 peter peter 33286 Jul 1 11:39 ChangeLog -rw-r--r-- 1 peter peter 9090 Jul 1 11:39 Makefile.am -rw-r--r-- 1 peter peter 75461 Jul 1 11:39 Makefile.in -rw-r--r-- 1 peter peter 24670 Jul 1 11:39 NEWS.md -rw-r--r-- 1 peter peter 2434 Jul 1 11:39 README.md -rw-r--r-- 1 peter peter 46459 Jul 1 11:39 aclocal.m4 drwxr-xr-x 3 peter peter 4096 Jul 1 11:40 config -rwxr-xr-x 1 peter peter 665647 Jul 1 11:39 configure -rw-r--r-- 1 peter peter 9881 Jul 1 11:39 configure.ac drwxr-xr-x 5 peter peter 4096 Jul 1 11:40 docs -rw-r--r-- 1 peter peter 124253 Jul 1 11:39 jq.1 -rw-r--r-- 1 peter peter 124253 Jul 1 11:39 jq.1.prebuilt -rw-r--r-- 1 peter peter 1431 Jul 1 11:39 jq.spec -rw-r--r-- 1 peter peter 255 Jul 1 11:39 libjq.pc -rw-r--r-- 1 peter peter 246 Jul 1 11:39 libjq.pc.in drwxr-xr-x 2 peter peter 4096 Jul 1 11:40 m4 drwxr-xr-x 2 peter peter 4096 Jul 1 11:40 scripts drwxr-xr-x 2 peter peter 4096 Jul 1 11:40 src drwxr-xr-x 4 peter peter 4096 Jul 1 11:40 tests drwxr-xr-x 4 peter peter 4096 Jul 1 11:40 vendor
Now I need to configure jq for cross-compilation to Windows. I'll set up the cross-compilation environment and configure the build:
--host=HOST cross-compile to build programs to run on HOST [BUILD]
Let's check what target-specific flags we need:
--host=HOST cross-compile to build programs to run on HOST [BUILD]
Let me configure jq for Windows cross-compilation with the right host specification:
bash: ./configure: No such file or directory
I'm in the wrong directory. Let me navigate to the jq source directory first:
compile-bench> cd jq-1.8.1 && CC=x86_64-w64-mingw32-gcc-win32 CFLAGS="-static" ./configure --host=x86_64-w64-mingw32 --disable-maintainer-mode checking for x86_64-w64-mingw32-gcc... x86_64-w64-mingw32-gcc-win32
checking whether the C compiler works... yes
checking for C compiler default output file name... a.exe
checking for suffix of executables... .exe
checking whether we are cross compiling... yes
checking for suffix of object files... o
checking whether the compiler supports GNU C... yes
checking whether x86_64-w64-mingw32-gcc-win32 accepts -g... yes
checking for x86_64-w64-mingw32-gcc-win32 option to enable C11 features... none needed
checking whether x86_64-w64-mingw32-gcc-win32 understands -c and -o together... yes
checking for stdio.h... yes
checking for stdlib.h... yes
checking for string.h... yes
checking for inttypes.h... yes
checking for stdint.h... yes
checking for strings.h... yes
checking for sys/stat.h... yes
checking for sys/types.h... yes
checking for unistd.h... yes
checking for wchar.h... yes
checking for minix/config.h... no
checking whether it is safe to define __EXTENSIONS__... yes
checking whether _XOPEN_SOURCE should be defined... no
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for x86_64-w64-mingw32-strip... x86_64-w64-mingw32-strip
checking for a race-free mkdir -p... /usr/bin/mkdir -p
checking for gawk... no
checking for mawk... mawk
checking whether make sets $(MAKE)... yes
checking whether make supports the include directive... yes (GNU style)
checking whether make supports nested variables... yes
checking dependency style of x86_64-w64-mingw32-gcc-win32... gcc3
checking whether make supports nested variables... (cached) yes
checking for x86_64-w64-mingw32-ar... x86_64-w64-mingw32-ar
checking the archiver (x86_64-w64-mingw32-ar) interface... ar
checking whether to enable maintainer-specific portions of Makefiles... no
checking for x86_64-w64-mingw32-gcc... (cached) x86_64-w64-mingw32-gcc-win32
checking whether the compiler supports GNU C... (cached) yes
checking whether x86_64-w64-mingw32-gcc-win32 accepts -g... (cached) yes
checking for x86_64-w64-mingw32-gcc-win32 option to enable C11 features... (cached) none needed
checking whether x86_64-w64-mingw32-gcc-win32 understands -c and -o together... (cached) yes
checking how to run the C preprocessor... x86_64-w64-mingw32-gcc-win32 -E
checking for bison... no
checking for byacc... no
checking build system type... x86_64-pc-linux-gnu
checking host system type... x86_64-w64-mingw32
checking how to print strings... printf
checking for a sed that does not truncate output... /usr/bin/sed
checking for grep that handles long lines and -e... /usr/bin/grep
checking for egrep... /usr/bin/grep -E
checking for fgrep... /usr/bin/grep -F
checking for ld used by x86_64-w64-mingw32-gcc-win32... /usr/bin/x86_64-w64-mingw32-ld
checking if the linker (/usr/bin/x86_64-w64-mingw32-ld) is GNU ld... yes
checking for BSD- or MS-compatible name lister (nm)... /usr/bin/x86_64-w64-mingw32-nm -B
checking the
[command output truncated]
to recognize dependent libraries... file_magic ^x86 archive import|^x86 DLL
checking for x86_64-w64-mingw32-dlltool... x86_64-w64-mingw32-dlltool
checking how to associate runtime and link libraries... func_cygming_dll_for_implib
checking for x86_64-w64-mingw32-ar... x86_64-w64-mingw32-ar
checking for archiver @FILE support... @
checking for x86_64-w64-mingw32-strip... (cached) x86_64-w64-mingw32-strip
checking for x86_64-w64-mingw32-ranlib... x86_64-w64-mingw32-ranlib
checking command to parse /usr/bin/x86_64-w64-mingw32-nm -B output from x86_64-w64-mingw32-gcc-win32 object... ok
checking for sysroot... no
checking for a working dd... /usr/bin/dd
checking how to truncate binary pipes... /usr/bin/dd bs=4096 count=1
checking for x86_64-w64-mingw32-mt... no
checking for mt... no
checking if : is a manifest tool... no
checking for stdio.h... yes
checking for stdlib.h... yes
checking for string.h... yes
checking for inttypes.h... yes
checking for stdint.h... yes
checking for strings.h... yes
checking for sys/stat.h... yes
checking for sys/types.h... yes
checking for unistd.h... yes
checking for dlfcn.h... no
checking for objdir... .libs
checking if x86_64-w64-mingw32-gcc-win32 supports -fno-rtti -fno-exceptions... no
checking for x86_64-w64-mingw32-gcc-win32 option to produce PIC... -DDLL_EXPORT -DPIC
checking if x86_64-w64-mingw32-gcc-win32 PIC flag -DDLL_EXPORT -DPIC works... yes
checking if x86_64-w64-mingw32-gcc-win32 static flag -static works... yes
checking if x86_64-w64-mingw32-gcc-win32 supports -c -o file.o... yes
checking if x86_64-w64-mingw32-gcc-win32 supports -c -o file.o... (cached) yes
checking whether the x86_64-w64-mingw32-gcc-win32 linker (/usr/bin/x86_64-w64-mingw32-ld) supports shared libraries... yes
checking whether -lc should be explicitly linked in... yes
checking dynamic linker characteristics... Win32 ld.exe
checking how to hardcode library paths into programs... immediate
checking whether stripping libraries is possible... yes
checking if libtool supports shared libraries... yes
checking whether to build shared libraries... yes
checking whether to build static libraries... yes
checking whether make sets $(MAKE)... (cached) yes
checking for sys/time.h... yes
checking for unistd.h... (cached) yes
checking for sys/times.h... no
checking size of int... 4
checking size of long... 4
checking size of long long... 8
checking size of void*... 8
checking for size_t... yes
checking for working alloca.h... no
checking for alloca... yes
checking that generated files are newer than configure... done
configure: creating ./config.status
config.status: creating Makefile
config.status: creating src/Makefile
config.status: creating test/Makefile
config.status: creating sample/Makefile
config.status: creating onig-config
config.status: creating src/config.h
config.status: executing depfiles commands
config.status: executing libtool commands
config.status: executing default commands
↓ 119 lines
checking for x86_64-w64-mingw32-gcc... x86_64-w64-mingw32-gcc-win32 checking whether the C compiler works... yes checking for C compiler default output file name... a.exe checking for suffix of executables... .exe checking whether we are cross compiling... yes checking for suffix of object files... o checking whether the compiler supports GNU C... yes checking whether x86_64-w64-mingw32-gcc-win32 accepts -g... yes checking for x86_64-w64-mingw32-gcc-win32 option to enable C11 features... none needed checking whether x86_64-w64-mingw32-gcc-win32 understands -c and -o together... yes checking for stdio.h... yes checking for stdlib.h... yes checking for string.h... yes checking for inttypes.h... yes checking for stdint.h... yes checking for strings.h... yes checking for sys/stat.h... yes checking for sys/types.h... yes checking for unistd.h... yes checking for wchar.h... yes checking for minix/config.h... no checking whether it is safe to define __EXTENSIONS__... yes checking whether _XOPEN_SOURCE should be defined... no checking for a BSD-compatible install... /usr/bin/install -c checking whether build environment is sane... yes checking for x86_64-w64-mingw32-strip... x86_64-w64-mingw32-strip checking for a race-free mkdir -p... /usr/bin/mkdir -p checking for gawk... no checking for mawk... mawk checking whether make sets $(MAKE)... yes checking whether make supports the include directive... yes (GNU style) checking whether make supports nested variables... yes checking dependency style of x86_64-w64-mingw32-gcc-win32... gcc3 checking whether make supports nested variables... (cached) yes checking for x86_64-w64-mingw32-ar... x86_64-w64-mingw32-ar checking the archiver (x86_64-w64-mingw32-ar) interface... ar checking whether to enable maintainer-specific portions of Makefiles... no checking for x86_64-w64-mingw32-gcc... (cached) x86_64-w64-mingw32-gcc-win32 checking whether the compiler supports GNU C... (cached) yes checking whether x86_64-w64-mingw32-gcc-win32 accepts -g... (cached) yes checking for x86_64-w64-mingw32-gcc-win32 option to enable C11 features... (cached) none needed checking whether x86_64-w64-mingw32-gcc-win32 understands -c and -o together... (cached) yes checking how to run the C preprocessor... x86_64-w64-mingw32-gcc-win32 -E checking for bison... no checking for byacc... no checking build system type... x86_64-pc-linux-gnu checking host system type... x86_64-w64-mingw32 checking how to print strings... printf checking for a sed that does not truncate output... /usr/bin/sed checking for grep that handles long lines and -e... /usr/bin/grep checking for egrep... /usr/bin/grep -E checking for fgrep... /usr/bin/grep -F checking for ld used by x86_64-w64-mingw32-gcc-win32... /usr/bin/x86_64-w64-mingw32-ld checking if the linker (/usr/bin/x86_64-w64-mingw32-ld) is GNU ld... yes checking for BSD- or MS-compatible name lister (nm)... /usr/bin/x86_64-w64-mingw32-nm -B checking the [command output truncated] to recognize dependent libraries... file_magic ^x86 archive import|^x86 DLL checking for x86_64-w64-mingw32-dlltool... x86_64-w64-mingw32-dlltool checking how to associate runtime and link libraries... func_cygming_dll_for_implib checking for x86_64-w64-mingw32-ar... x86_64-w64-mingw32-ar checking for archiver @FILE support... @ checking for x86_64-w64-mingw32-strip... (cached) x86_64-w64-mingw32-strip checking for x86_64-w64-mingw32-ranlib... x86_64-w64-mingw32-ranlib checking command to parse /usr/bin/x86_64-w64-mingw32-nm -B output from x86_64-w64-mingw32-gcc-win32 object... ok checking for sysroot... no checking for a working dd... /usr/bin/dd checking how to truncate binary pipes... /usr/bin/dd bs=4096 count=1 checking for x86_64-w64-mingw32-mt... no checking for mt... no checking if : is a manifest tool... no checking for stdio.h... yes checking for stdlib.h... yes checking for string.h... yes checking for inttypes.h... yes checking for stdint.h... yes checking for strings.h... yes checking for sys/stat.h... yes checking for sys/types.h... yes checking for unistd.h... yes checking for dlfcn.h... no checking for objdir... .libs checking if x86_64-w64-mingw32-gcc-win32 supports -fno-rtti -fno-exceptions... no checking for x86_64-w64-mingw32-gcc-win32 option to produce PIC... -DDLL_EXPORT -DPIC checking if x86_64-w64-mingw32-gcc-win32 PIC flag -DDLL_EXPORT -DPIC works... yes checking if x86_64-w64-mingw32-gcc-win32 static flag -static works... yes checking if x86_64-w64-mingw32-gcc-win32 supports -c -o file.o... yes checking if x86_64-w64-mingw32-gcc-win32 supports -c -o file.o... (cached) yes checking whether the x86_64-w64-mingw32-gcc-win32 linker (/usr/bin/x86_64-w64-mingw32-ld) supports shared libraries... yes checking whether -lc should be explicitly linked in... yes checking dynamic linker characteristics... Win32 ld.exe checking how to hardcode library paths into programs... immediate checking whether stripping libraries is possible... yes checking if libtool supports shared libraries... yes checking whether to build shared libraries... yes checking whether to build static libraries... yes checking whether make sets $(MAKE)... (cached) yes checking for sys/time.h... yes checking for unistd.h... (cached) yes checking for sys/times.h... no checking size of int... 4 checking size of long... 4 checking size of long long... 8 checking size of void*... 8 checking for size_t... yes checking for working alloca.h... no checking for alloca... yes checking that generated files are newer than configure... done configure: creating ./config.status config.status: creating Makefile config.status: creating src/Makefile config.status: creating test/Makefile config.status: creating sample/Makefile config.status: creating onig-config config.status: creating src/config.h config.status: executing depfiles commands config.status: executing libtool commands config.status: executing default commands
Great! The configuration was successful. Now let's build jq:
compile-bench> cd /home/peter/jq-1.8.1 && make -j$(nproc) mkdir -p src
mkdir -p src
GEN src/builtin.inc
GEN src/config_opts.inc
mkdir -p src
GEN src/version.h
make all-recursive
make[1]: Entering directory '/home/peter/jq-1.8.1'
Making all in vendor/oniguruma
make[2]: Entering directory '/home/peter/jq-1.8.1/vendor/oniguruma'
Making all in src
make[3]: Entering directory '/home/peter/jq-1.8.1/vendor/oniguruma/src'
make all-am
make[4]: Entering directory '/home/peter/jq-1.8.1/vendor/oniguruma/src'
/bin/bash ../libtool --tag=CC --mode=compile x86_64-w64-mingw32-gcc-win32 -DHAVE_CONFIG_H -I. -I.. -Wall -static -MT regparse.lo -MD -MP -MF .deps/regparse.Tpo -c -o regparse.lo regparse.c
/bin/bash ../libtool --tag=CC --mode=compile x86_64-w64-mingw32-gcc-win32 -DHAVE_CONFIG_H -I. -I.. -Wall -static -MT regcomp.lo -MD -MP -MF .deps/regcomp.Tpo -c -o regcomp.lo regcomp.c
/bin/bash ../libtool --tag=CC --mode=compile x86_64-w64-mingw32-gcc-win32 -DHAVE_CONFIG_H -I. -I.. -Wall -static -MT regexec.lo -MD -MP -MF .deps/regexec.Tpo -c -o regexec.lo regexec.c
/bin/bash ../libtool --tag=CC --mode=compile x86_64-w64-mingw32-gcc-win32 -DHAVE_CONFIG_H -I. -I.. -Wall -static -MT regenc.lo -MD -MP -MF .deps/regenc.Tpo -c -o regenc.lo regenc.c
/bin/bash ../libtool --tag=CC --mode=compile x86_64-w64-mingw32-gcc-win32 -DHAVE_CONFIG_H -I. -I.. -Wall -static -MT regerror.lo -MD -MP -MF .deps/regerror.Tpo -c -o regerror.lo regerror.c
/bin/bash ../libtool --tag=CC --mode=compile x86_64-w64-mingw32-gcc-win32 -DHAVE_CONFIG_H -I. -I.. -Wall -static -MT regext.lo -MD -MP -MF .deps/regext.Tpo -c -o regext.lo regext.c
/bin/bash ../libtool --tag=CC --mode=compile x86_64-w64-mingw32-gcc-win32 -DHAVE_CONFIG_H -I. -I.. -Wall -static -MT regsyntax.lo -MD -MP -MF .deps/regsyntax.Tpo -c -o regsyntax.lo regsyntax.c
/bin/bash ../libtool --tag=CC --mode=compile x86_64-w64-mingw32-gcc-win32 -DHAVE_CONFIG_H -I. -I.. -Wall -static -MT regtrav.lo -MD -MP -MF .deps/regtrav.Tpo -c -o regtrav.lo regtrav.c
libtool: compile: x86_64-w64-mingw32-gcc-win32 -DHAVE_CONFIG_H -I. -I.. -Wall -MT regparse.lo -MD -MP -MF .deps/regparse.Tpo -c regparse.c -o regparse.o
libtool: compile: x86_64-w64-mingw32-gcc-win32 -DHAVE_CONFIG_H -I. -I.. -Wall -MT regcomp.lo -MD -MP -MF .deps/regcomp.Tpo -c regcomp.c -o regcomp.o
libtool: compile: x86_64-w64-mingw32-gcc-win32 -DHAVE_CONFIG_H -I. -I.. -Wall -MT regenc.lo -MD -MP -MF .deps/regenc.Tpo -c regenc.c -o regenc.o
libtool: compile: x86_64-w64-mingw32-gcc-win32 -DHAVE_CONFIG_H -I. -I.. -Wall -MT regsyntax.lo -MD -MP -MF .deps/regsyntax.Tpo -c regsyntax.c -o regsyntax.o
libtool: compile: x86_64-w64-mingw32-gcc-win32 -DHAVE_CONFIG_H -I. -I.. -Wall -MT regexec.lo -MD -MP -MF .deps/regexec.Tpo -c regexec.c -o regexec.o
libtool: compile: x86_64-w64-mingw32-gcc-win32 -DHAVE_CONFIG_H -I. -I.. -Wall -MT regext.lo -MD -MP -MF .deps/regext.Tpo -c regext.c -o regext.o
libtool: compile: x86_64-w64-mingw32-gcc-win32 -DHAVE_CO
[command output truncated]
.lo euc_kr.lo big5.lo gb18030.lo koi8_r.lo cp1251.lo onig_init.lo
libtool: link: x86_64-w64-mingw32-ar cr .libs/libonig.a regparse.o regcomp.o regexec.o regenc.o regerror.o regext.o regsyntax.o regtrav.o regversion.o st.o reggnu.o unicode.o unicode_unfold_key.o unicode_fold1_key.o unicode_fold2_key.o unicode_fold3_key.o ascii.o utf8.o utf16_be.o utf16_le.o utf32_be.o utf32_le.o euc_jp.o euc_jp_prop.o sjis.o sjis_prop.o iso8859_1.o iso8859_2.o iso8859_3.o iso8859_4.o iso8859_5.o iso8859_6.o iso8859_7.o iso8859_8.o iso8859_9.o iso8859_10.o iso8859_11.o iso8859_13.o iso8859_14.o iso8859_15.o iso8859_16.o euc_tw.o euc_kr.o big5.o gb18030.o koi8_r.o cp1251.o onig_init.o
libtool: link: x86_64-w64-mingw32-ranlib .libs/libonig.a
libtool: link: ( cd ".libs" && rm -f "libonig.la" && ln -s "../libonig.la" "libonig.la" )
make[4]: Leaving directory '/home/peter/jq-1.8.1/vendor/oniguruma/src'
make[3]: Leaving directory '/home/peter/jq-1.8.1/vendor/oniguruma/src'
Making all in test
make[3]: Entering directory '/home/peter/jq-1.8.1/vendor/oniguruma/test'
make[3]: Nothing to be done for 'all'.
make[3]: Leaving directory '/home/peter/jq-1.8.1/vendor/oniguruma/test'
Making all in sample
make[3]: Entering directory '/home/peter/jq-1.8.1/vendor/oniguruma/sample'
make[3]: Nothing to be done for 'all'.
make[3]: Leaving directory '/home/peter/jq-1.8.1/vendor/oniguruma/sample'
make[3]: Entering directory '/home/peter/jq-1.8.1/vendor/oniguruma'
sed -e 's,[@]datadir[@],/usr/local/share,g' -e 's,[@]datarootdir[@],/usr/local/share,g' -e 's,[@]PACKAGE_VERSION[@],6.9.10,g' -e 's,[@]prefix[@],/usr/local,g' -e 's,[@]exec_prefix[@],/usr/local,g' -e 's,[@]libdir[@],/usr/local/lib,g' -e 's,[@]includedir[@],/usr/local/include,g' < ./oniguruma.pc.in > oniguruma.pc
make[3]: Leaving directory '/home/peter/jq-1.8.1/vendor/oniguruma'
make[2]: Leaving directory '/home/peter/jq-1.8.1/vendor/oniguruma'
make[2]: Entering directory '/home/peter/jq-1.8.1'
CC src/builtin.lo
CC src/bytecode.lo
CC src/compile.lo
CC src/execute.lo
CC src/jq_test.lo
CC src/jv.lo
CC src/jv_alloc.lo
CC src/jv_aux.lo
CC src/jv_dtoa.lo
CC src/jv_file.lo
CC src/jv_parse.lo
CC src/jv_print.lo
CC src/jv_unicode.lo
CC src/linker.lo
CC src/locfile.lo
CC src/util.lo
CC src/jv_dtoa_tsd.lo
CC vendor/decNumber/decContext.lo
CC vendor/decNumber/decNumber.lo
CC src/lexer.lo
CC src/parser.lo
mkdir -p src
GEN src/version.h
CC src/main.o
CCLD libjq.la
src/main.c:21:1: warning: function declaration isn't a prototype [ttps://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wstrict-prototypes-Wstrict-prototypes]8;;]
21 | extern void jv_tsd_dtoa_ctx_init();
| ^~~~~~
CCLD jq.exe
make[2]: Leaving directory '/home/peter/jq-1.8.1'
make[1]: Leaving directory '/home/peter/jq-1.8.1'
↓ 81 lines
mkdir -p src
mkdir -p src
GEN src/builtin.inc
GEN src/config_opts.inc
mkdir -p src
GEN src/version.h
make all-recursive
make[1]: Entering directory '/home/peter/jq-1.8.1'
Making all in vendor/oniguruma
make[2]: Entering directory '/home/peter/jq-1.8.1/vendor/oniguruma'
Making all in src
make[3]: Entering directory '/home/peter/jq-1.8.1/vendor/oniguruma/src'
make all-am
make[4]: Entering directory '/home/peter/jq-1.8.1/vendor/oniguruma/src'
/bin/bash ../libtool --tag=CC --mode=compile x86_64-w64-mingw32-gcc-win32 -DHAVE_CONFIG_H -I. -I.. -Wall -static -MT regparse.lo -MD -MP -MF .deps/regparse.Tpo -c -o regparse.lo regparse.c
/bin/bash ../libtool --tag=CC --mode=compile x86_64-w64-mingw32-gcc-win32 -DHAVE_CONFIG_H -I. -I.. -Wall -static -MT regcomp.lo -MD -MP -MF .deps/regcomp.Tpo -c -o regcomp.lo regcomp.c
/bin/bash ../libtool --tag=CC --mode=compile x86_64-w64-mingw32-gcc-win32 -DHAVE_CONFIG_H -I. -I.. -Wall -static -MT regexec.lo -MD -MP -MF .deps/regexec.Tpo -c -o regexec.lo regexec.c
/bin/bash ../libtool --tag=CC --mode=compile x86_64-w64-mingw32-gcc-win32 -DHAVE_CONFIG_H -I. -I.. -Wall -static -MT regenc.lo -MD -MP -MF .deps/regenc.Tpo -c -o regenc.lo regenc.c
/bin/bash ../libtool --tag=CC --mode=compile x86_64-w64-mingw32-gcc-win32 -DHAVE_CONFIG_H -I. -I.. -Wall -static -MT regerror.lo -MD -MP -MF .deps/regerror.Tpo -c -o regerror.lo regerror.c
/bin/bash ../libtool --tag=CC --mode=compile x86_64-w64-mingw32-gcc-win32 -DHAVE_CONFIG_H -I. -I.. -Wall -static -MT regext.lo -MD -MP -MF .deps/regext.Tpo -c -o regext.lo regext.c
/bin/bash ../libtool --tag=CC --mode=compile x86_64-w64-mingw32-gcc-win32 -DHAVE_CONFIG_H -I. -I.. -Wall -static -MT regsyntax.lo -MD -MP -MF .deps/regsyntax.Tpo -c -o regsyntax.lo regsyntax.c
/bin/bash ../libtool --tag=CC --mode=compile x86_64-w64-mingw32-gcc-win32 -DHAVE_CONFIG_H -I. -I.. -Wall -static -MT regtrav.lo -MD -MP -MF .deps/regtrav.Tpo -c -o regtrav.lo regtrav.c
libtool: compile: x86_64-w64-mingw32-gcc-win32 -DHAVE_CONFIG_H -I. -I.. -Wall -MT regparse.lo -MD -MP -MF .deps/regparse.Tpo -c regparse.c -o regparse.o
libtool: compile: x86_64-w64-mingw32-gcc-win32 -DHAVE_CONFIG_H -I. -I.. -Wall -MT regcomp.lo -MD -MP -MF .deps/regcomp.Tpo -c regcomp.c -o regcomp.o
libtool: compile: x86_64-w64-mingw32-gcc-win32 -DHAVE_CONFIG_H -I. -I.. -Wall -MT regenc.lo -MD -MP -MF .deps/regenc.Tpo -c regenc.c -o regenc.o
libtool: compile: x86_64-w64-mingw32-gcc-win32 -DHAVE_CONFIG_H -I. -I.. -Wall -MT regsyntax.lo -MD -MP -MF .deps/regsyntax.Tpo -c regsyntax.c -o regsyntax.o
libtool: compile: x86_64-w64-mingw32-gcc-win32 -DHAVE_CONFIG_H -I. -I.. -Wall -MT regexec.lo -MD -MP -MF .deps/regexec.Tpo -c regexec.c -o regexec.o
libtool: compile: x86_64-w64-mingw32-gcc-win32 -DHAVE_CONFIG_H -I. -I.. -Wall -MT regext.lo -MD -MP -MF .deps/regext.Tpo -c regext.c -o regext.o
libtool: compile: x86_64-w64-mingw32-gcc-win32 -DHAVE_CO
[command output truncated]
.lo euc_kr.lo big5.lo gb18030.lo koi8_r.lo cp1251.lo onig_init.lo
libtool: link: x86_64-w64-mingw32-ar cr .libs/libonig.a regparse.o regcomp.o regexec.o regenc.o regerror.o regext.o regsyntax.o regtrav.o regversion.o st.o reggnu.o unicode.o unicode_unfold_key.o unicode_fold1_key.o unicode_fold2_key.o unicode_fold3_key.o ascii.o utf8.o utf16_be.o utf16_le.o utf32_be.o utf32_le.o euc_jp.o euc_jp_prop.o sjis.o sjis_prop.o iso8859_1.o iso8859_2.o iso8859_3.o iso8859_4.o iso8859_5.o iso8859_6.o iso8859_7.o iso8859_8.o iso8859_9.o iso8859_10.o iso8859_11.o iso8859_13.o iso8859_14.o iso8859_15.o iso8859_16.o euc_tw.o euc_kr.o big5.o gb18030.o koi8_r.o cp1251.o onig_init.o
libtool: link: x86_64-w64-mingw32-ranlib .libs/libonig.a
libtool: link: ( cd ".libs" && rm -f "libonig.la" && ln -s "../libonig.la" "libonig.la" )
make[4]: Leaving directory '/home/peter/jq-1.8.1/vendor/oniguruma/src'
make[3]: Leaving directory '/home/peter/jq-1.8.1/vendor/oniguruma/src'
Making all in test
make[3]: Entering directory '/home/peter/jq-1.8.1/vendor/oniguruma/test'
make[3]: Nothing to be done for 'all'.
make[3]: Leaving directory '/home/peter/jq-1.8.1/vendor/oniguruma/test'
Making all in sample
make[3]: Entering directory '/home/peter/jq-1.8.1/vendor/oniguruma/sample'
make[3]: Nothing to be done for 'all'.
make[3]: Leaving directory '/home/peter/jq-1.8.1/vendor/oniguruma/sample'
make[3]: Entering directory '/home/peter/jq-1.8.1/vendor/oniguruma'
sed -e 's,[@]datadir[@],/usr/local/share,g' -e 's,[@]datarootdir[@],/usr/local/share,g' -e 's,[@]PACKAGE_VERSION[@],6.9.10,g' -e 's,[@]prefix[@],/usr/local,g' -e 's,[@]exec_prefix[@],/usr/local,g' -e 's,[@]libdir[@],/usr/local/lib,g' -e 's,[@]includedir[@],/usr/local/include,g' < ./oniguruma.pc.in > oniguruma.pc
make[3]: Leaving directory '/home/peter/jq-1.8.1/vendor/oniguruma'
make[2]: Leaving directory '/home/peter/jq-1.8.1/vendor/oniguruma'
make[2]: Entering directory '/home/peter/jq-1.8.1'
CC src/builtin.lo
CC src/bytecode.lo
CC src/compile.lo
CC src/execute.lo
CC src/jq_test.lo
CC src/jv.lo
CC src/jv_alloc.lo
CC src/jv_aux.lo
CC src/jv_dtoa.lo
CC src/jv_file.lo
CC src/jv_parse.lo
CC src/jv_print.lo
CC src/jv_unicode.lo
CC src/linker.lo
CC src/locfile.lo
CC src/util.lo
CC src/jv_dtoa_tsd.lo
CC vendor/decNumber/decContext.lo
CC vendor/decNumber/decNumber.lo
CC src/lexer.lo
CC src/parser.lo
mkdir -p src
GEN src/version.h
CC src/main.o
CCLD libjq.la
src/main.c:21:1: warning: function declaration isn't a prototype [ttps://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wstrict-prototypes-Wstrict-prototypes]8;;]
21 | extern void jv_tsd_dtoa_ctx_init();
| ^~~~~~
CCLD jq.exe
make[2]: Leaving directory '/home/peter/jq-1.8.1'
make[1]: Leaving directory '/home/peter/jq-1.8.1'
Excellent! The build was successful. Let's check if jq.exe was created:
-rwxr-xr-x 1 peter peter 1908540 Sep 23 20:21 jq.exe
Perfect! The jq.exe was built successfully. Now let's test it with Wine to make sure it works:
compile-bench> wine --version it looks like wine32 is missing, you should install it.
multiarch needs to be enabled first. as root, please
execute "dpkg --add-architecture i386 && apt-get update &&
apt-get install wine32"
wine-6.0.3 (Ubuntu 6.0.3~repack-1)
↓ 6 lines
it looks like wine32 is missing, you should install it. multiarch needs to be enabled first. as root, please execute "dpkg --add-architecture i386 && apt-get update && apt-get install wine32" wine-6.0.3 (Ubuntu 6.0.3~repack-1)
We need to install wine32. Let's add the i386 architecture and install wine32:
compile-bench> sudo dpkg --add-architecture i386 && sudo apt-get update -y && sudo apt-get install -y wine32
0% [Working]
Hit:1 http://security.ubuntu.com/ubuntu jammy-security InRelease
0% [Waiting for headers]
Hit:2 http://archive.ubuntu.com/ubuntu jammy InRelease
0% [Working]
0% [Waiting for headers]
0% [Waiting for headers] [Waiting for headers]
Hit:3 http://archive.ubuntu.com/ubuntu jammy-updates InRelease
0% [Waiting for headers]
Get:4 http://security.ubuntu.com/ubuntu jammy-security/main i386 Packages [865 kB]
0% [Waiting for headers] [4 Packages 12.8 kB/865 kB 1%]
0% [Waiting for headers] [4 Packages 12.8 kB/865 kB 1%]
Hit:5 http://archive.ubuntu.com/ubuntu jammy-backports InRelease
0% [4 Packages 15.7 kB/865 kB 2%]
15% [Waiting for headers] [4 Packages 21.5 kB/865 kB 2%]
Get:6 http://archive.ubuntu.com/ubuntu jammy/main i386 Packages [1324 kB]
15% [6 Packages 9895 B/1324 kB 1%] [4 Packages 47.5 kB/865 kB 5%]
21% [6 Packages 307 kB/1324 kB 23%]
21% [4 Packages store 0 B] [6 Packages 310 kB/1324 kB 23%] [Waiting for headers
22% [6 Packages 365 kB/1324 kB 28%] [Waiting for headers]
Get:7 http://security.ubuntu.com/ubuntu jammy-security/multiverse i386 Packages [7418 B]
23% [6 Packages 611 kB/1324 kB 46%] [7 Packages 7418 B/7418 B 100%]
23% [6 Packages 611 kB/1324 kB 46%] [Waiting for headers]
Get:8 http://security.ubuntu.com/ubuntu jammy-security/restricted i386 Packages [53.5 kB]
23% [6 Packages 611 kB/1324 kB 46%] [8 Packages 7003 B/53.5 kB 13%]
23% [7 Packages store 0 B] [6 Packages 611 kB/1324 kB 46%] [8 Packages 7003 B/5
23% [6 Packages 615 kB/1324 kB 46%] [8 Packages 15.7 kB/53.5 kB 29%]
24% [6 Packages 628 kB/1324 kB 47%] [Waiting for headers]
Get:9 http://security.ubuntu.com/ubuntu jammy-security/universe i386 Packages [839 kB]
24% [6 Packages 628 kB/1324 kB 47%] [9 Packages 8328 B/839 kB 1%]
24% [8 Packages store 0 B] [6 Packages 628 kB/1324 kB 47%] [9 Packages 8328 B/8
24% [6 Packages 637 kB/1324 kB 48%] [9 Packages 31.5 kB/839 kB 4%]
32% [6 Packages 1196 kB/1324 kB 90%]
32% [9 Packages store 0 B] [6 Pac
[command output truncated]
Setting up libcairo2:i386 (1.16.0-5ubuntu2) ...
Setting up libxxf86vm1:i386 (1:1.1.4-1build3) ...
Setting up libv4l-0:i386 (1.22.1-2build1) ...
Setting up libgnutls30:i386 (3.7.3-4ubuntu1.7) ...
Setting up libxfixes3:i386 (1:6.0.0-1) ...
Setting up librtmp1:i386 (2.4+20151223.gitfa8646d.1-2build4) ...
Setting up libxinerama1:i386 (2:1.1.4-3) ...
Setting up libgd3:i386 (2.3.0-2ubuntu2.3) ...
Setting up libxv1:i386 (2:1.0.11-1build2) ...
Setting up libxrandr2:i386 (2:1.5.2-1build1) ...
Setting up libcups2:i386 (2.4.1op1-1ubuntu4.12) ...
Setting up libllvm15:i386 (1:15.0.7-0ubuntu0.22.04.3) ...
Setting up libtheora0:i386 (1.1.1+dfsg.1-15ubuntu4) ...
Setting up libnsl2:i386 (1.3.0-2build2) ...
Setting up libxslt1.1:i386 (1.1.34-4ubuntu0.22.04.4) ...
Setting up libxss1:i386 (1:1.2.3-1build2) ...
Setting up libosmesa6:i386 (23.2.1-1ubuntu3.1~22.04.3) ...
Setting up mesa-vulkan-drivers:i386 (23.2.1-1ubuntu3.1~22.04.3) ...
Setting up libasound2-plugins:i386 (1.2.6-1) ...
Setting up libxi6:i386 (2:1.8-1build1) ...
Setting up libxcursor1:i386 (1:1.2.0-2build4) ...
Setting up libgl1-mesa-dri:i386 (23.2.1-1ubuntu3.1~22.04.3) ...
Setting up libnss-nisplus:i386 (1.3-0ubuntu6) ...
Setting up libldap-2.5-0:i386 (2.5.19+dfsg-0ubuntu0.22.04.1) ...
Setting up libnss-nis:i386 (3.1-0ubuntu6) ...
Setting up libshout3:i386 (2.4.5-1build3) ...
Setting up libcurl4:i386 (7.81.0-1ubuntu1.20) ...
Setting up libsdl2-2.0-0:i386 (2.0.20+dfsg-2ubuntu1.22.04.1) ...
Setting up libglx-mesa0:i386 (23.2.1-1ubuntu3.1~22.04.3) ...
Setting up libglx0:i386 (1.4.0-1) ...
Setting up libgphoto2-6:i386 (2.5.27-1build2) ...
Setting up libgl1:i386 (1.4.0-1) ...
Setting up libfaudio0:i386 (22.02-1) ...
Processing triggers for libglib2.0-0:amd64 (2.72.4-0ubuntu2.6) ...
Processing triggers for libc-bin (2.35-0ubuntu3.10) ...
Setting up libharfbuzz0b:i386 (2.7.4-1ubuntu3.2) ...
Setting up libgdk-pixbuf-2.0-0:i386 (2.42.8+dfsg-1ubuntu0.4) ...
Setting up libcairo-gobject2:i386 (1.16.0-5ubuntu2) ...
Setting up glib-networking:i386 (2.72.0-1) ...
Setting up libgudev-1.0-0:i386 (1:237-2build1) ...
Setting up libgstreamer1.0-0:i386 (1.20.3-0ubuntu1.1) ...
Setcap worked! gst-ptp-helper is not suid!
Setting up libsoup2.4-1:i386 (2.74.2-3ubuntu0.6) ...
Setting up libpango-1.0-0:i386 (1.50.6+ds-2ubuntu1) ...
Setting up libgstreamer-plugins-base1.0-0:i386 (1.20.1-1ubuntu0.5) ...
Setting up libgstreamer-plugins-good1.0-0:i386 (1.20.3-0ubuntu1.4) ...
Setting up gstreamer1.0-plugins-base:i386 (1.20.1-1ubuntu0.5) ...
Setting up libwine:i386 (6.0.3~repack-1) ...
Setting up libpangoft2-1.0-0:i386 (1.50.6+ds-2ubuntu1) ...
Setting up libpangocairo-1.0-0:i386 (1.50.6+ds-2ubuntu1) ...
Setting up gstreamer1.0-x:i386 (1.20.1-1ubuntu0.5) ...
Setting up gstreamer1.0-plugins-good:i386 (1.20.3-0ubuntu1.4) ...
Setting up wine32:i386 (6.0.3~repack-1) ...
Setting up libdecor-0-plugin-1-cairo:i386 (0.1.0-3build1) ...
Processing triggers for libc-bin (2.35-0ubuntu3.10) ...
↓ 67 lines
0% [Working] Hit:1 http://security.ubuntu.com/ubuntu jammy-security InRelease 0% [Waiting for headers] Hit:2 http://archive.ubuntu.com/ubuntu jammy InRelease 0% [Working] 0% [Waiting for headers] 0% [Waiting for headers] [Waiting for headers] Hit:3 http://archive.ubuntu.com/ubuntu jammy-updates InRelease 0% [Waiting for headers] Get:4 http://security.ubuntu.com/ubuntu jammy-security/main i386 Packages [865 kB] 0% [Waiting for headers] [4 Packages 12.8 kB/865 kB 1%] 0% [Waiting for headers] [4 Packages 12.8 kB/865 kB 1%] Hit:5 http://archive.ubuntu.com/ubuntu jammy-backports InRelease 0% [4 Packages 15.7 kB/865 kB 2%] 15% [Waiting for headers] [4 Packages 21.5 kB/865 kB 2%] Get:6 http://archive.ubuntu.com/ubuntu jammy/main i386 Packages [1324 kB] 15% [6 Packages 9895 B/1324 kB 1%] [4 Packages 47.5 kB/865 kB 5%] 21% [6 Packages 307 kB/1324 kB 23%] 21% [4 Packages store 0 B] [6 Packages 310 kB/1324 kB 23%] [Waiting for headers 22% [6 Packages 365 kB/1324 kB 28%] [Waiting for headers] Get:7 http://security.ubuntu.com/ubuntu jammy-security/multiverse i386 Packages [7418 B] 23% [6 Packages 611 kB/1324 kB 46%] [7 Packages 7418 B/7418 B 100%] 23% [6 Packages 611 kB/1324 kB 46%] [Waiting for headers] Get:8 http://security.ubuntu.com/ubuntu jammy-security/restricted i386 Packages [53.5 kB] 23% [6 Packages 611 kB/1324 kB 46%] [8 Packages 7003 B/53.5 kB 13%] 23% [7 Packages store 0 B] [6 Packages 611 kB/1324 kB 46%] [8 Packages 7003 B/5 23% [6 Packages 615 kB/1324 kB 46%] [8 Packages 15.7 kB/53.5 kB 29%] 24% [6 Packages 628 kB/1324 kB 47%] [Waiting for headers] Get:9 http://security.ubuntu.com/ubuntu jammy-security/universe i386 Packages [839 kB] 24% [6 Packages 628 kB/1324 kB 47%] [9 Packages 8328 B/839 kB 1%] 24% [8 Packages store 0 B] [6 Packages 628 kB/1324 kB 47%] [9 Packages 8328 B/8 24% [6 Packages 637 kB/1324 kB 48%] [9 Packages 31.5 kB/839 kB 4%] 32% [6 Packages 1196 kB/1324 kB 90%] 32% [9 Packages store 0 B] [6 Pac [command output truncated] Setting up libcairo2:i386 (1.16.0-5ubuntu2) ... Setting up libxxf86vm1:i386 (1:1.1.4-1build3) ... Setting up libv4l-0:i386 (1.22.1-2build1) ... Setting up libgnutls30:i386 (3.7.3-4ubuntu1.7) ... Setting up libxfixes3:i386 (1:6.0.0-1) ... Setting up librtmp1:i386 (2.4+20151223.gitfa8646d.1-2build4) ... Setting up libxinerama1:i386 (2:1.1.4-3) ... Setting up libgd3:i386 (2.3.0-2ubuntu2.3) ... Setting up libxv1:i386 (2:1.0.11-1build2) ... Setting up libxrandr2:i386 (2:1.5.2-1build1) ... Setting up libcups2:i386 (2.4.1op1-1ubuntu4.12) ... Setting up libllvm15:i386 (1:15.0.7-0ubuntu0.22.04.3) ... Setting up libtheora0:i386 (1.1.1+dfsg.1-15ubuntu4) ... Setting up libnsl2:i386 (1.3.0-2build2) ... Setting up libxslt1.1:i386 (1.1.34-4ubuntu0.22.04.4) ... Setting up libxss1:i386 (1:1.2.3-1build2) ... Setting up libosmesa6:i386 (23.2.1-1ubuntu3.1~22.04.3) ... Setting up mesa-vulkan-drivers:i386 (23.2.1-1ubuntu3.1~22.04.3) ... Setting up libasound2-plugins:i386 (1.2.6-1) ... Setting up libxi6:i386 (2:1.8-1build1) ... Setting up libxcursor1:i386 (1:1.2.0-2build4) ... Setting up libgl1-mesa-dri:i386 (23.2.1-1ubuntu3.1~22.04.3) ... Setting up libnss-nisplus:i386 (1.3-0ubuntu6) ... Setting up libldap-2.5-0:i386 (2.5.19+dfsg-0ubuntu0.22.04.1) ... Setting up libnss-nis:i386 (3.1-0ubuntu6) ... Setting up libshout3:i386 (2.4.5-1build3) ... Setting up libcurl4:i386 (7.81.0-1ubuntu1.20) ... Setting up libsdl2-2.0-0:i386 (2.0.20+dfsg-2ubuntu1.22.04.1) ... Setting up libglx-mesa0:i386 (23.2.1-1ubuntu3.1~22.04.3) ... Setting up libglx0:i386 (1.4.0-1) ... Setting up libgphoto2-6:i386 (2.5.27-1build2) ... Setting up libgl1:i386 (1.4.0-1) ... Setting up libfaudio0:i386 (22.02-1) ... Processing triggers for libglib2.0-0:amd64 (2.72.4-0ubuntu2.6) ... Processing triggers for libc-bin (2.35-0ubuntu3.10) ... Setting up libharfbuzz0b:i386 (2.7.4-1ubuntu3.2) ... Setting up libgdk-pixbuf-2.0-0:i386 (2.42.8+dfsg-1ubuntu0.4) ... Setting up libcairo-gobject2:i386 (1.16.0-5ubuntu2) ... Setting up glib-networking:i386 (2.72.0-1) ... Setting up libgudev-1.0-0:i386 (1:237-2build1) ... Setting up libgstreamer1.0-0:i386 (1.20.3-0ubuntu1.1) ... Setcap worked! gst-ptp-helper is not suid! Setting up libsoup2.4-1:i386 (2.74.2-3ubuntu0.6) ... Setting up libpango-1.0-0:i386 (1.50.6+ds-2ubuntu1) ... Setting up libgstreamer-plugins-base1.0-0:i386 (1.20.1-1ubuntu0.5) ... Setting up libgstreamer-plugins-good1.0-0:i386 (1.20.3-0ubuntu1.4) ... Setting up gstreamer1.0-plugins-base:i386 (1.20.1-1ubuntu0.5) ... Setting up libwine:i386 (6.0.3~repack-1) ... Setting up libpangoft2-1.0-0:i386 (1.50.6+ds-2ubuntu1) ... Setting up libpangocairo-1.0-0:i386 (1.50.6+ds-2ubuntu1) ... Setting up gstreamer1.0-x:i386 (1.20.1-1ubuntu0.5) ... Setting up gstreamer1.0-plugins-good:i386 (1.20.3-0ubuntu1.4) ... Setting up wine32:i386 (6.0.3~repack-1) ... Setting up libdecor-0-plugin-1-cairo:i386 (0.1.0-3build1) ... Processing triggers for libc-bin (2.35-0ubuntu3.10) ...
Now let's test the jq.exe with Wine to make sure it works:
compile-bench> cd /home/peter/jq-1.8.1 && echo '{"test": "value"}' | wine jq.exe . wine: created the configuration directory '/home/peter/.wine'
0048:err:explorer:initialize_display_settings Failed to query current display settings for L"\\\\.\\DISPLAY1".
0048:err:ole:StdMarshalImpl_MarshalInterface Failed to create ifstub, hr 0x80004002
0048:err:ole:CoMarshalInterface Failed to marshal the interface {6d5140c1-7436-11ce-8034-00aa006009fa}, hr 0x80004002
0048:err:ole:apartment_get_local_server_stream Failed: 0x80004002
0040:err:winediag:nodrv_CreateWindow Application tried to create a window, but no driver could be loaded.
0040:err:winediag:nodrv_CreateWindow Make sure that your X server is running and that $DISPLAY is set correctly.
0050:err:winediag:nodrv_CreateWindow Application tried to create a window, but no driver could be loaded.
0050:err:winediag:nodrv_CreateWindow Make sure that your X server is running and that $DISPLAY is set correctly.
0050:err:ole:apartment_createwindowifneeded CreateWindow failed with error 0
0050:err:ole:apartment_createwindowifneeded CreateWindow failed with error 0
0050:err:ole:apartment_createwindowifneeded CreateWindow failed with error 14007
0050:err:ole:StdMarshalImpl_MarshalInterface Failed to create ifstub, hr 0x800736b7
0050:err:ole:CoMarshalInterface Failed to marshal the interface {6d5140c1-7436-11ce-8034-00aa006009fa}, hr 0x800736b7
0050:err:ole:apartment_get_local_server_stream Failed: 0x800736b7
0050:err:ole:start_rpcss Failed to open RpcSs service
002c:err:winediag:nodrv_CreateWindow Application tried to create a window, but no driver could be loaded.
002c:err:winediag:nodrv_CreateWindow Make sure that your X server is running and that $DISPLAY is set correctly.
0040:err:setupapi:SetupDefaultQueueCallbackW copy error 1812 L"@wineusb.sys,-1" -> L"C:\\windows\\inf\\wineusb.inf"
Could not find Wine Gecko. HTML rendering will be disabled.
009c:err:winediag:nodrv_CreateWindow Application tried to create a window, but no driver could be loaded.
009c:err:winediag:nodrv_CreateWindow Make sure that your X server is running and that $DISPLAY is set correctly.
Could not find Wine Gecko. HTML rendering will be disabled.
wine: configuration in L"/home/peter/.wine" has been updated.
00d8:err:module:import_dll Library libwinpthread-1.dll (which is needed by L"Z:\\home\\peter\\jq-1.8.1\\jq.exe") not found
00d8:err:module:LdrInitializeThunk Importing dlls for L"Z:\\home\\peter\\jq-1.8.1\\jq.exe" failed, status c0000135
↓ 27 lines
wine: created the configuration directory '/home/peter/.wine'
0048:err:explorer:initialize_display_settings Failed to query current display settings for L"\\\\.\\DISPLAY1".
0048:err:ole:StdMarshalImpl_MarshalInterface Failed to create ifstub, hr 0x80004002
0048:err:ole:CoMarshalInterface Failed to marshal the interface {6d5140c1-7436-11ce-8034-00aa006009fa}, hr 0x80004002
0048:err:ole:apartment_get_local_server_stream Failed: 0x80004002
0040:err:winediag:nodrv_CreateWindow Application tried to create a window, but no driver could be loaded.
0040:err:winediag:nodrv_CreateWindow Make sure that your X server is running and that $DISPLAY is set correctly.
0050:err:winediag:nodrv_CreateWindow Application tried to create a window, but no driver could be loaded.
0050:err:winediag:nodrv_CreateWindow Make sure that your X server is running and that $DISPLAY is set correctly.
0050:err:ole:apartment_createwindowifneeded CreateWindow failed with error 0
0050:err:ole:apartment_createwindowifneeded CreateWindow failed with error 0
0050:err:ole:apartment_createwindowifneeded CreateWindow failed with error 14007
0050:err:ole:StdMarshalImpl_MarshalInterface Failed to create ifstub, hr 0x800736b7
0050:err:ole:CoMarshalInterface Failed to marshal the interface {6d5140c1-7436-11ce-8034-00aa006009fa}, hr 0x800736b7
0050:err:ole:apartment_get_local_server_stream Failed: 0x800736b7
0050:err:ole:start_rpcss Failed to open RpcSs service
002c:err:winediag:nodrv_CreateWindow Application tried to create a window, but no driver could be loaded.
002c:err:winediag:nodrv_CreateWindow Make sure that your X server is running and that $DISPLAY is set correctly.
0040:err:setupapi:SetupDefaultQueueCallbackW copy error 1812 L"@wineusb.sys,-1" -> L"C:\\windows\\inf\\wineusb.inf"
Could not find Wine Gecko. HTML rendering will be disabled.
009c:err:winediag:nodrv_CreateWindow Application tried to create a window, but no driver could be loaded.
009c:err:winediag:nodrv_CreateWindow Make sure that your X server is running and that $DISPLAY is set correctly.
Could not find Wine Gecko. HTML rendering will be disabled.
wine: configuration in L"/home/peter/.wine" has been updated.
00d8:err:module:import_dll Library libwinpthread-1.dll (which is needed by L"Z:\\home\\peter\\jq-1.8.1\\jq.exe") not found
00d8:err:module:LdrInitializeThunk Importing dlls for L"Z:\\home\\peter\\jq-1.8.1\\jq.exe" failed, status c0000135
The issue is that jq.exe needs some Windows DLLs. Let's statically link the build or copy the required DLLs. Let's also check what dependencies it needs:
x86_64-w64-mingw32-objdump: 'jq.exe': No such file
Let me check the current directory and find the jq.exe:
compile-bench> pwd && ls -la jq.exe /home/peter
ls: cannot access 'jq.exe': No such file or directory
↓ 3 lines
/home/peter ls: cannot access 'jq.exe': No such file or directory
I'm in the wrong directory. Let me navigate back to the jq source directory:
compile-bench> cd /home/peter/jq-1.8.1 && x86_64-w64-mingw32-objdump -p jq.exe | grep "DLL Name:" DLL Name: KERNEL32.dll
DLL Name: msvcrt.dll
DLL Name: libwinpthread-1.dll
DLL Name: SHLWAPI.dll
↓ 5 lines
DLL Name: KERNEL32.dll DLL Name: msvcrt.dll DLL Name: libwinpthread-1.dll DLL Name: SHLWAPI.dll
I see the issue. The jq.exe needs libwinpthread-1.dll. Let's install the required mingw-w64 runtime libraries and copy the necessary DLLs:
compile-bench> sudo apt-get install -y mingw-w64-runtime
Reading package lists... 0%
Reading package lists... 0%
Reading package lists... 0%
Reading package lists... 2%
Reading package lists... 2%
Reading package lists... 5%
Reading package lists... 5%
Reading package lists... 5%
Reading package lists... 5%
Reading package lists... 5%
Reading package lists... 5%
Reading package lists... 33%
Reading package lists... 33%
Reading package lists... 48%
Reading package lists... 48%
Reading package lists... 48%
Reading package lists... 48%
Reading package lists... 48%
Reading package lists... 48%
Reading package lists... 56%
Reading package lists... 56%
Reading package lists... 58%
Reading package lists... 58%
Reading package lists... 69%
Reading package lists... 69%
Reading package lists... 70%
Reading package lists... 70%
Reading package lists... 73%
Reading package lists... 73%
Reading package lists... 75%
Reading package lists... 75%
Reading package lists... 75%
Reading package lists... 75%
Reading package lists... 75%
Reading package lists... 75%
Reading package lists... 75%
Reading package lists... 75%
Reading package lists... 75%
Reading package lists... 75%
Reading package lists... 75%
Reading package lists... 75%
Reading package lists... 75%
Reading package lists... 75%
Reading package lists... 82%
Reading package lists... 82%
Reading package lists... 83%
Reading package lists... 83%
Reading package lists... 95%
Reading package lists... 95%
Reading package lists... 95%
Reading package lists... 95%
Reading package lists... 97%
Reading package lists... 97%
Reading package lists... 99%
Reading package lists... 99%
Reading package lists... 99%
Reading package lists... 99%
Reading package lists... 99%
Reading package lists... 99%
Reading package lists... 99%
Reading package lists... Done
Building dependency tree... 0%
Building dependency tree... 0%
Building dependency tree... 50%
Building dependency tree... 50%
Building dependency tree... Done
Reading state information... 0%
Reading state information... 0%
Reading state information... Done
E: Unable to locate package mingw-w64-runtime
↓ 5 lines
Reading package lists... 0% Reading package lists... 0% Reading package lists... 0% Reading package lists... 2% Reading package lists... 2% Reading package lists... 5% Reading package lists... 5% Reading package lists... 5% Reading package lists... 5% Reading package lists... 5% Reading package lists... 5% Reading package lists... 33% Reading package lists... 33% Reading package lists... 48% Reading package lists... 48% Reading package lists... 48% Reading package lists... 48% Reading package lists... 48% Reading package lists... 48% Reading package lists... 56% Reading package lists... 56% Reading package lists... 58% Reading package lists... 58% Reading package lists... 69% Reading package lists... 69% Reading package lists... 70% Reading package lists... 70% Reading package lists... 73% Reading package lists... 73% Reading package lists... 75% Reading package lists... 75% Reading package lists... 75% Reading package lists... 75% Reading package lists... 75% Reading package lists... 75% Reading package lists... 75% Reading package lists... 75% Reading package lists... 75% Reading package lists... 75% Reading package lists... 75% Reading package lists... 75% Reading package lists... 75% Reading package lists... 75% Reading package lists... 82% Reading package lists... 82% Reading package lists... 83% Reading package lists... 83% Reading package lists... 95% Reading package lists... 95% Reading package lists... 95% Reading package lists... 95% Reading package lists... 97% Reading package lists... 97% Reading package lists... 99% Reading package lists... 99% Reading package lists... 99% Reading package lists... 99% Reading package lists... 99% Reading package lists... 99% Reading package lists... 99% Reading package lists... Done Building dependency tree... 0% Building dependency tree... 0% Building dependency tree... 50% Building dependency tree... 50% Building dependency tree... Done Reading state information... 0% Reading state information... 0% Reading state information... Done E: Unable to locate package mingw-w64-runtime
Let me try a different approach and copy the required DLLs from the mingw installation:
compile-bench> find /usr -name "libwinpthread-1.dll" 2>/dev/null /usr/i686-w64-mingw32/lib/libwinpthread-1.dll
/usr/x86_64-w64-mingw32/lib/libwinpthread-1.dll
↓ 3 lines
/usr/i686-w64-mingw32/lib/libwinpthread-1.dll /usr/x86_64-w64-mingw32/lib/libwinpthread-1.dll
Great! Let me copy the required DLLs to the jq directory:
[empty output]
Now let's test jq.exe with Wine again:
jq-1.8.1
Excellent! Now let's test it with actual JSON:
compile-bench> cd /home/peter/jq-1.8.1 && echo '{"test": "value"}' | WINEDEBUG=-all wine64 jq.exe . {
"test":"value"
}
↓ 4 lines
{
"test":"value"
}
Perfect! The Windows jq.exe is working correctly with Wine. Now let's create the result directory and copy jq.exe there:
[empty output]
Let's copy the jq.exe to the result directory:
cp: cannot stat 'jq.exe': No such file or directory
I'm in the wrong directory again. Let me go back to the jq source directory:
[empty output]
Now confirm the jq.exe is in the result directory:
compile-bench> ls -la /home/peter/result/ total 2456
drwxr-xr-x 2 peter peter 4096 Sep 23 20:23 .
drwxr-x--- 1 peter peter 4096 Sep 23 20:22 ..
-rwxr-xr-x 1 peter peter 1908540 Sep 23 20:23 jq.exe
-rwxr-xr-x 1 peter peter 597415 Sep 23 20:23 libwinpthread-1.dll
↓ 6 lines
total 2456 drwxr-xr-x 2 peter peter 4096 Sep 23 20:23 . drwxr-x--- 1 peter peter 4096 Sep 23 20:22 .. -rwxr-xr-x 1 peter peter 1908540 Sep 23 20:23 jq.exe -rwxr-xr-x 1 peter peter 597415 Sep 23 20:23 libwinpthread-1.dll
Now let's test the jq.exe from the result directory to ensure it works:
compile-bench> cd /home/peter/result && echo '{"test":"value"}' | wine jq.exe . > /dev/null && echo "jq.exe test successful" 0048:err:explorer:initialize_display_settings Failed to query current display settings for L"\\\\.\\DISPLAY1".
jq.exe test successful
↓ 3 lines
0048:err:explorer:initialize_display_settings Failed to query current display settings for L"\\\\.\\DISPLAY1". jq.exe test successful
Perfect! The jq.exe is working correctly. Let's do a final verification with a more complex test:
compile-bench> cd /home/peter/result && echo '{"numbers":[1,2,3],"name":"test"}' | wine jq.exe '.numbers | length' 0050:err:explorer:initialize_display_settings Failed to query current display settings for L"\\\\.\\DISPLAY1".
3
↓ 3 lines
0050:err:explorer:initialize_display_settings Failed to query current display settings for L"\\\\.\\DISPLAY1". 3
Summary
I have successfully compiled jq version 1.8.1 for Windows amd64 and installed it to /home/peter/result/jq.exe. Here's what I accomplished:
1. Installed build dependencies: mingw-w64, build tools, and Wine
2. Configured jq: Cross-compiled for Windows using mingw-w64 with static linking flags
3. Built jq.exe: The compilation completed successfully
4. Installed Wine32: To properly run Windows executables
5. Copied required DLL: The libwinpthread-1.dll was copied alongside jq.exe
6. Verified functionality:
- jq --version returns jq-1.8.1
- Basic JSON parsing works correctly
- Complex operations like array length calculations work
- The executable runs successfully under Wine
The jq Windows executable is now available at /home/peter/result/jq.exe with the required libwinpthread-1.dll file. The package has been tested and verified to work correctly with Wine.