-
-
Notifications
You must be signed in to change notification settings - Fork 230
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
TikZ not working on arm64 #1662
Comments
@ggrossetie any thoughts on the preferred approach? |
Hey! |
@ggrossetie I saw the announcement a couple of months ago; would you consider joining the beta? Looks like it's only available to business accounts for now. Is there anything I can do suport this issue? |
I thought it was GA :/ |
@ggrossetie I don't have one currently but can create one if it helps. The FROM --platform=$BUILDPLATFORM ubuntu:jammy AS kroki-builder-dvisvgm
RUN apt-get update && apt-get install --no-install-recommends --yes \
build-essential \
pkg-config \
libclipper-dev \
libfreetype-dev \
libkpathsea-dev \
ghostscript \
libssl-dev \
zlib1g-dev \
curl \
ca-certificates
ARG DVISVGM_VERSION=3.0.4
ARG BUILDARCH
ARG TARGETARCH
RUN curl -LO https://github.com/mgieseki/dvisvgm/releases/download/$DVISVGM_VERSION/dvisvgm-$DVISVGM_VERSION.tar.gz && \
tar xf dvisvgm-$DVISVGM_VERSION.tar.gz && \
cd dvisvgm-$DVISVGM_VERSION && \
case $BUILDARCH in \
"amd64") MAKE_BUILD_ARCH=x86_64 ;; \
"arm64") MAKE_BUILD_ARCH=aarch64 ;; \
*) MAKE_BUILD_ARCH=$BUILDARCH ;; \
esac && \
case $TARGETARCH in \
"amd64") MAKE_TARGET_ARCH=x86_64 ;; \
"arm64") MAKE_TARGET_ARCH=aarch64 ;; \
*) MAKE_TARGET_ARCH=$TARGETARCH ;; \
esac && \
./configure --enable-bundled-libs --build $MAKE_BUILD_ARCH-linux-gnu --host $MAKE_TARGET_ARCH-linux-gnu && \
make && \
make install In short, you should be able to copy this code directly to a new repo and set up a workflow that builds one We know this will work because the Kroki |
Update: It turns out that up-to-date https://packages.ubuntu.com/noble/dvisvgm I can open a PR for the change once an updated version of the |
Yes that would be awesome, thanks 👍🏻 |
Resolved in #1770. |
TikZ returns an
Exec format error (exit code 126)
when running onarm64
. I thought I had checked all the libraries before opening #1487, but this doesn't seem to have been the case... 😅After some digging I realised that the
kroki-builder-dvisvgm
stage doesn't install the correct cross-compiler tools to actually build thearm64
binary from anamd64
host. Fromv0.23.0, platform=arm64
, we can see that the binary type is alwaysx86-64
:This issue hasn't shown up in CI because the workflows only use native builds that don't require cross-compilation. There are 3 ways to resolve this:
kroki-builder-dvisvgm
stage, which produces the correct result but takes forever to build. This wouldn't affect the CI normally because they're all running natively, but it would make therelease
workflow take much longer than it currently does.dvisvgm
binaries in a separate Yuzutech repo. This could be done with the native Arm runner.I can work on a fix for either 1 or 2 if needed.
The text was updated successfully, but these errors were encountered: