texpresso icon indicating copy to clipboard operation
texpresso copied to clipboard

Detectonic: experimental branch removing tectonic customizations

Open let-def opened this issue 5 months ago • 40 comments

This branch no longer needs a custom tectonic build. It lets us remove all rust code from this repository and depends only on a C compiler.

TeXpresso still needs a working tectonic installation (the tectonic binary must be available in PATH). In principle, it could also work with TeXlive instead of tectonic, but some differences in file versions and path resolution lead to subtle bugs so I disabled this feature for now.

The first launch will be much slower as TeXpresso needs to build a format and cache TeX packages. To speed-up the process, run make fill-tectonic-cache before launching texpresso.

let-def avatar Jul 24 '25 04:07 let-def

Seems like the source missing PATH_MAX variable.

Got error: use of undeclared identifier 'PATH_MAX'

Running make all on detectonic at 0afb47, last commit

merv1n34k avatar Jul 24 '25 16:07 merv1n34k

I think I found it, PATH_MAX defined in <linux/limits.h>, but not in <sys/syslimits.h> for __APPLE__. However, it should.

merv1n34k avatar Jul 24 '25 16:07 merv1n34k

Thanks, this should be fixed.

let-def avatar Jul 24 '25 19:07 let-def

I figured! The utils.c was missing limits at all, added

#ifdef __APPLE__
# include <sys/syslimits.h>
#else
# include <linux/limits.h>
#endif

in the top of src/common/utils.c.

Now it works! TeXpresso shows up and renders.

Output for make fill-tectonic-cache:

tectonic --outfmt fmt test/format.tex
Running TeX ...
warning: accessing absolute path `/dev/null`; build may not be reproducible in other environments
warning: did not produce "format.xdv"; this may mean that your document is empty
Writing `test/format.fmt` (23.32 MiB)
Skipped writing 1 intermediate files (use --keep-intermediates to keep them)
tectonic --outfmt xdv test/simple.tex
Running TeX ...
Rerunning TeX because "simple.aux" changed ...
Writing `test/simple.xdv` (3.24 KiB)
Skipped writing 1 intermediate files (use --keep-intermediates to keep them)

merv1n34k avatar Jul 24 '25 22:07 merv1n34k

Done thank you.

Output looks good, the purpose is only to populate the cache to avoid a slow-path in initialization. When a package is used for the first time, TeXpresso needs to wait for tectonic to fetch it, but later uses are cached and should be at least as fast as before.

let-def avatar Jul 24 '25 22:07 let-def

I tried to update my TeXpresso from the brand detectonic but encountered an error:

leanh@DESKTOP-EAEGDAK:~$ cd texpresso
git fetch --all
git switch detectonic
(git pull && make)
fatal: invalid reference: detectonic

Could you explain how to do so?

leanhdung1994 avatar Jul 25 '25 17:07 leanhdung1994

I have installed the brand detectonic. After the simple.tex is initialized, it immediately disappears:

https://github.com/user-attachments/assets/988bcea9-7750-492d-816e-e682fbc830df

Could you elaborate on this issue?

leanhdung1994 avatar Jul 25 '25 18:07 leanhdung1994

@leanhdung1994 have you ran make fill-tectonic-cache? If so, please attach your output

merv1n34k avatar Jul 25 '25 21:07 merv1n34k

@merv1n34k I run it. The output is

leanh@DESKTOP-EAEGDAK:~$ cd texpresso
leanh@DESKTOP-EAEGDAK:~/texpresso$ make fill-tectonic-cache
tectonic --outfmt fmt test/format.tex
Running TeX ...
warning: accessing absolute path `/dev/null`; build may not be reproducible in other environments
warning: did not produce "format.xdv"; this may mean that your document is empty
Writing `test/format.fmt` (23.32 MiB)
Skipped writing 1 intermediate files (use --keep-intermediates to keep them)
tectonic --outfmt xdv test/simple.tex
Running TeX ...
Rerunning TeX because "simple.aux" changed ...
Writing `test/simple.xdv` (3.24 KiB)
Skipped writing 1 intermediate files (use --keep-intermediates to keep them)
leanh@DESKTOP-EAEGDAK:~/texpresso$

leanhdung1994 avatar Jul 25 '25 21:07 leanhdung1994

It seems that texpresso-xetex fails to launch. Can you share the output of make texpresso-xetex?

let-def avatar Jul 25 '25 22:07 let-def

@let-def the output is

leanh@DESKTOP-EAEGDAK:~$ cd texpresso
leanh@DESKTOP-EAEGDAK:~/texpresso$ make texpresso-xetex
make -C src/engine
make[1]: Entering directory '/home/leanh/texpresso/src/engine'
mkdir -p ../../build/engine
mkdir -p ../../build/layout
mkdir -p ../../build/dpx
mkdir -p ../../build/main
gcc -Iinclude -Ilayout -Idpx -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -O2    -I../include -c -o ../../build/engine/xetex-engine-interface.o engine/xetex-engine-interface.c
gcc -Iinclude -Ilayout -Idpx -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -O2    -I../include -c -o ../../build/engine/xetex-errors.o engine/xetex-errors.c
gcc -Iinclude -Ilayout -Idpx -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -O2    -I../include -c -o ../../build/engine/xetex-ext.o engine/xetex-ext.c
gcc -Iinclude -Ilayout -Idpx -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -O2    -I../include -c -o ../../build/engine/xetex-ini.o engine/xetex-ini.c
gcc -Iinclude -Ilayout -Idpx -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -O2    -I../include -c -o ../../build/engine/xetex-io.o engine/xetex-io.c
gcc -Iinclude -Ilayout -Idpx -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -O2    -I../include -c -o ../../build/engine/xetex-linebreak.o engine/xetex-linebreak.c
gcc -Iinclude -Ilayout -Idpx -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -O2    -I../include -c -o ../../build/engine/xetex-macos.o engine/xetex-macos.c
gcc -Iinclude -Ilayout -Idpx -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -O2    -I../include -c -o ../../build/engine/xetex-math.o engine/xetex-math.c
gcc -Iinclude -Ilayout -Idpx -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -O2    -I../include -c -o ../../build/engine/xetex-output.o engine/xetex-output.c
gcc -Iinclude -Ilayout -Idpx -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -O2    -I../include -c -o ../../build/engine/xetex-pagebuilder.o engine/xetex-pagebuilder.c
gcc -Iinclude -Ilayout -Idpx -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -O2    -I../include -c -o ../../build/engine/xetex-pic.o engine/xetex-pic.c
gcc -Iinclude -Ilayout -Idpx -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -O2    -I../include -c -o ../../build/engine/xetex-scaledmath.o engine/xetex-scaledmath.c
gcc -Iinclude -Ilayout -Idpx -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -O2    -I../include -c -o ../../build/engine/xetex-shipout.o engine/xetex-shipout.c
gcc -Iinclude -Ilayout -Idpx -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -O2    -I../include -c -o ../../build/engine/xetex-stringpool.o engine/xetex-stringpool.c
gcc -Iinclude -Ilayout -Idpx -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -O2    -I../include -c -o ../../build/engine/xetex-synctex.o engine/xetex-synctex.c
gcc -Iinclude -Ilayout -Idpx -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -O2    -I../include -c -o ../../build/engine/xetex-texmfmp.o engine/xetex-texmfmp.c
gcc -Iinclude -Ilayout -Idpx -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -O2    -I../include -c -o ../../build/engine/xetex-xetex0.o engine/xetex-xetex0.c
g++ -std=c++17 -Iinclude -Ilayout -Idpx -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -O2     -I../include -c -o ../../build/engine/teckit-Engine.o engine/teckit-Engine.cpp
g++ -std=c++17 -Iinclude -Ilayout -Idpx -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -O2     -I../include -c -o ../../build/engine/xetex-XeTeXOTMath.o engine/xetex-XeTeXOTMath.cpp
g++ -std=c++17 -Iinclude -Ilayout -Idpx -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -O2     -I../include -c -o ../../build/layout/xetex-XeTeXFontInst.o layout/xetex-XeTeXFontInst.cpp
g++ -std=c++17 -Iinclude -Ilayout -Idpx -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -O2     -I../include -c -o ../../build/layout/xetex-XeTeXFontInst_Mac.o layout/xetex-XeTeXFontInst_Mac.cpp
g++ -std=c++17 -Iinclude -Ilayout -Idpx -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -O2     -I../include -c -o ../../build/layout/xetex-XeTeXFontMgr.o layout/xetex-XeTeXFontMgr.cpp
g++ -std=c++17 -Iinclude -Ilayout -Idpx -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -O2     -I../include -c -o ../../build/layout/xetex-XeTeXFontMgr_FC.o layout/xetex-XeTeXFontMgr_FC.cpp
g++ -std=c++17 -Iinclude -Ilayout -Idpx -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -O2     -I../include -c -o ../../build/layout/xetex-XeTeXLayoutInterface.o layout/xetex-XeTeXLayoutInterface.cpp
gcc -Iinclude -Ilayout -Idpx -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -O2    -I../include -c -o ../../build/dpx/dpx-agl.o dpx/dpx-agl.c
gcc -Iinclude -Ilayout -Idpx -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -O2    -I../include -c -o ../../build/dpx/dpx-bmpimage.o dpx/dpx-bmpimage.c
gcc -Iinclude -Ilayout -Idpx -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -O2    -I../include -c -o ../../build/dpx/dpx-cff.o dpx/dpx-cff.c
gcc -Iinclude -Ilayout -Idpx -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -O2    -I../include -c -o ../../build/dpx/dpx-cff_dict.o dpx/dpx-cff_dict.c
gcc -Iinclude -Ilayout -Idpx -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -O2    -I../include -c -o ../../build/dpx/dpx-cid.o dpx/dpx-cid.c
gcc -Iinclude -Ilayout -Idpx -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -O2    -I../include -c -o ../../build/dpx/dpx-cidtype0.o dpx/dpx-cidtype0.c
gcc -Iinclude -Ilayout -Idpx -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -O2    -I../include -c -o ../../build/dpx/dpx-cidtype2.o dpx/dpx-cidtype2.c
gcc -Iinclude -Ilayout -Idpx -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -O2    -I../include -c -o ../../build/dpx/dpx-cmap.o dpx/dpx-cmap.c
gcc -Iinclude -Ilayout -Idpx -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -O2    -I../include -c -o ../../build/dpx/dpx-cmap_read.o dpx/dpx-cmap_read.c
gcc -Iinclude -Ilayout -Idpx -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -O2    -I../include -c -o ../../build/dpx/dpx-cmap_write.o dpx/dpx-cmap_write.c
gcc -Iinclude -Ilayout -Idpx -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -O2    -I../include -c -o ../../build/dpx/dpx-cs_type2.o dpx/dpx-cs_type2.c
gcc -Iinclude -Ilayout -Idpx -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -O2    -I../include -c -o ../../build/dpx/dpx-dpxconf.o dpx/dpx-dpxconf.c
gcc -Iinclude -Ilayout -Idpx -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -O2    -I../include -c -o ../../build/dpx/dpx-dpxcrypt.o dpx/dpx-dpxcrypt.c
gcc -Iinclude -Ilayout -Idpx -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -O2    -I../include -c -o ../../build/dpx/dpx-dpxfile.o dpx/dpx-dpxfile.c
gcc -Iinclude -Ilayout -Idpx -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -O2    -I../include -c -o ../../build/dpx/dpx-dpxutil.o dpx/dpx-dpxutil.c
gcc -Iinclude -Ilayout -Idpx -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -O2    -I../include -c -o ../../build/dpx/dpx-dvi.o dpx/dpx-dvi.c
gcc -Iinclude -Ilayout -Idpx -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -O2    -I../include -c -o ../../build/dpx/dpx-dvipdfmx.o dpx/dpx-dvipdfmx.c
gcc -Iinclude -Ilayout -Idpx -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -O2    -I../include -c -o ../../build/dpx/dpx-epdf.o dpx/dpx-epdf.c
gcc -Iinclude -Ilayout -Idpx -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -O2    -I../include -c -o ../../build/dpx/dpx-error.o dpx/dpx-error.c
gcc -Iinclude -Ilayout -Idpx -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -O2    -I../include -c -o ../../build/dpx/dpx-fontmap.o dpx/dpx-fontmap.c
gcc -Iinclude -Ilayout -Idpx -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -O2    -I../include -c -o ../../build/dpx/dpx-jp2image.o dpx/dpx-jp2image.c
gcc -Iinclude -Ilayout -Idpx -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -O2    -I../include -c -o ../../build/dpx/dpx-jpegimage.o dpx/dpx-jpegimage.c
gcc -Iinclude -Ilayout -Idpx -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -O2    -I../include -c -o ../../build/dpx/dpx-mem.o dpx/dpx-mem.c
gcc -Iinclude -Ilayout -Idpx -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -O2    -I../include -c -o ../../build/dpx/dpx-mfileio.o dpx/dpx-mfileio.c
gcc -Iinclude -Ilayout -Idpx -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -O2    -I../include -c -o ../../build/dpx/dpx-mpost.o dpx/dpx-mpost.c
dpx/dpx-mpost.c: In function ‘mps_do_page’:
dpx/dpx-mpost.c:1510:3: warning: ignoring return value of ‘fread’ declared with attribute ‘warn_unused_result’ [-Wunused-result]
 1510 |   fread(buffer, sizeof(char), size, image_file);
      |   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
gcc -Iinclude -Ilayout -Idpx -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -O2    -I../include -c -o ../../build/dpx/dpx-mt19937ar.o dpx/dpx-mt19937ar.c
gcc -Iinclude -Ilayout -Idpx -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -O2    -I../include -c -o ../../build/dpx/dpx-numbers.o dpx/dpx-numbers.c
gcc -Iinclude -Ilayout -Idpx -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -O2    -I../include -c -o ../../build/dpx/dpx-otl_opt.o dpx/dpx-otl_opt.c
gcc -Iinclude -Ilayout -Idpx -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -O2    -I../include -c -o ../../build/dpx/dpx-pdfcolor.o dpx/dpx-pdfcolor.c
gcc -Iinclude -Ilayout -Idpx -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -O2    -I../include -c -o ../../build/dpx/dpx-pdfdev.o dpx/dpx-pdfdev.c
gcc -Iinclude -Ilayout -Idpx -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -O2    -I../include -c -o ../../build/dpx/dpx-pdfdoc.o dpx/dpx-pdfdoc.c
gcc -Iinclude -Ilayout -Idpx -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -O2    -I../include -c -o ../../build/dpx/dpx-pdfdraw.o dpx/dpx-pdfdraw.c
gcc -Iinclude -Ilayout -Idpx -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -O2    -I../include -c -o ../../build/dpx/dpx-pdfencoding.o dpx/dpx-pdfencoding.c
gcc -Iinclude -Ilayout -Idpx -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -O2    -I../include -c -o ../../build/dpx/dpx-pdfencrypt.o dpx/dpx-pdfencrypt.c
gcc -Iinclude -Ilayout -Idpx -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -O2    -I../include -c -o ../../build/dpx/dpx-pdffont.o dpx/dpx-pdffont.c
gcc -Iinclude -Ilayout -Idpx -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -O2    -I../include -c -o ../../build/dpx/dpx-pdfnames.o dpx/dpx-pdfnames.c
gcc -Iinclude -Ilayout -Idpx -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -O2    -I../include -c -o ../../build/dpx/dpx-pdfobj.o dpx/dpx-pdfobj.c
gcc -Iinclude -Ilayout -Idpx -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -O2    -I../include -c -o ../../build/dpx/dpx-pdfparse.o dpx/dpx-pdfparse.c
gcc -Iinclude -Ilayout -Idpx -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -O2    -I../include -c -o ../../build/dpx/dpx-pdfresource.o dpx/dpx-pdfresource.c
gcc -Iinclude -Ilayout -Idpx -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -O2    -I../include -c -o ../../build/dpx/dpx-pdfximage.o dpx/dpx-pdfximage.c
gcc -Iinclude -Ilayout -Idpx -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -O2    -I../include -c -o ../../build/dpx/dpx-pkfont.o dpx/dpx-pkfont.c
gcc -Iinclude -Ilayout -Idpx -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -O2    -I../include -c -o ../../build/dpx/dpx-pngimage.o dpx/dpx-pngimage.c
gcc -Iinclude -Ilayout -Idpx -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -O2    -I../include -c -o ../../build/dpx/dpx-pst.o dpx/dpx-pst.c
gcc -Iinclude -Ilayout -Idpx -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -O2    -I../include -c -o ../../build/dpx/dpx-pst_obj.o dpx/dpx-pst_obj.c
gcc -Iinclude -Ilayout -Idpx -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -O2    -I../include -c -o ../../build/dpx/dpx-sfnt.o dpx/dpx-sfnt.c
gcc -Iinclude -Ilayout -Idpx -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -O2    -I../include -c -o ../../build/dpx/dpx-spc_color.o dpx/dpx-spc_color.c
gcc -Iinclude -Ilayout -Idpx -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -O2    -I../include -c -o ../../build/dpx/dpx-spc_dvipdfmx.o dpx/dpx-spc_dvipdfmx.c
gcc -Iinclude -Ilayout -Idpx -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -O2    -I../include -c -o ../../build/dpx/dpx-spc_dvips.o dpx/dpx-spc_dvips.c
gcc -Iinclude -Ilayout -Idpx -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -O2    -I../include -c -o ../../build/dpx/dpx-spc_html.o dpx/dpx-spc_html.c
gcc -Iinclude -Ilayout -Idpx -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -O2    -I../include -c -o ../../build/dpx/dpx-spc_misc.o dpx/dpx-spc_misc.c
gcc -Iinclude -Ilayout -Idpx -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -O2    -I../include -c -o ../../build/dpx/dpx-spc_pdfm.o dpx/dpx-spc_pdfm.c
gcc -Iinclude -Ilayout -Idpx -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -O2    -I../include -c -o ../../build/dpx/dpx-spc_tpic.o dpx/dpx-spc_tpic.c
gcc -Iinclude -Ilayout -Idpx -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -O2    -I../include -c -o ../../build/dpx/dpx-spc_util.o dpx/dpx-spc_util.c
gcc -Iinclude -Ilayout -Idpx -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -O2    -I../include -c -o ../../build/dpx/dpx-spc_xtx.o dpx/dpx-spc_xtx.c
gcc -Iinclude -Ilayout -Idpx -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -O2    -I../include -c -o ../../build/dpx/dpx-specials.o dpx/dpx-specials.c
gcc -Iinclude -Ilayout -Idpx -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -O2    -I../include -c -o ../../build/dpx/dpx-subfont.o dpx/dpx-subfont.c
gcc -Iinclude -Ilayout -Idpx -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -O2    -I../include -c -o ../../build/dpx/dpx-t1_char.o dpx/dpx-t1_char.c
gcc -Iinclude -Ilayout -Idpx -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -O2    -I../include -c -o ../../build/dpx/dpx-t1_load.o dpx/dpx-t1_load.c
gcc -Iinclude -Ilayout -Idpx -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -O2    -I../include -c -o ../../build/dpx/dpx-tfm.o dpx/dpx-tfm.c
gcc -Iinclude -Ilayout -Idpx -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -O2    -I../include -c -o ../../build/dpx/dpx-truetype.o dpx/dpx-truetype.c
gcc -Iinclude -Ilayout -Idpx -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -O2    -I../include -c -o ../../build/dpx/dpx-tt_aux.o dpx/dpx-tt_aux.c
gcc -Iinclude -Ilayout -Idpx -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -O2    -I../include -c -o ../../build/dpx/dpx-tt_cmap.o dpx/dpx-tt_cmap.c
gcc -Iinclude -Ilayout -Idpx -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -O2    -I../include -c -o ../../build/dpx/dpx-tt_glyf.o dpx/dpx-tt_glyf.c
gcc -Iinclude -Ilayout -Idpx -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -O2    -I../include -c -o ../../build/dpx/dpx-tt_gsub.o dpx/dpx-tt_gsub.c
gcc -Iinclude -Ilayout -Idpx -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -O2    -I../include -c -o ../../build/dpx/dpx-tt_post.o dpx/dpx-tt_post.c
gcc -Iinclude -Ilayout -Idpx -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -O2    -I../include -c -o ../../build/dpx/dpx-tt_table.o dpx/dpx-tt_table.c
gcc -Iinclude -Ilayout -Idpx -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -O2    -I../include -c -o ../../build/dpx/dpx-type0.o dpx/dpx-type0.c
gcc -Iinclude -Ilayout -Idpx -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -O2    -I../include -c -o ../../build/dpx/dpx-type1.o dpx/dpx-type1.c
gcc -Iinclude -Ilayout -Idpx -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -O2    -I../include -c -o ../../build/dpx/dpx-type1c.o dpx/dpx-type1c.c
gcc -Iinclude -Ilayout -Idpx -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -O2    -I../include -c -o ../../build/dpx/dpx-unicode.o dpx/dpx-unicode.c
gcc -Iinclude -Ilayout -Idpx -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -O2    -I../include -c -o ../../build/dpx/dpx-vf.o dpx/dpx-vf.c
gcc -Iinclude -Ilayout -Idpx -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -O2    -I../include -c -o ../../build/main/fork.o main/fork.c
gcc -Iinclude -Ilayout -Idpx -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -O2    -I../include -c -o ../../build/main/formats.o main/formats.c
gcc -Iinclude -Ilayout -Idpx -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -O2    -I../include -c -o ../../build/main/main.o main/main.c
gcc -Iinclude -Ilayout -Idpx -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -O2    -I../include -c -o ../../build/main/texpresso_protocol.o main/texpresso_protocol.c
gcc -Iinclude -Ilayout -Idpx -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -O2    -I../include -c -o ../../build/main/zlib_md5.o main/zlib_md5.c
g++ -lm -lz -lharfbuzz -lgraphite2 -lfontconfig -lfreetype -lpng16 -licuuc -licudata     -o ../../build/texpresso-xetex ../../build/engine/xetex-engine-interface.o ../../build/engine/xetex-errors.o ../../build/engine/xetex-ext.o ../../build/engine/xetex-ini.o ../../build/engine/xetex-io.o ../../build/engine/xetex-linebreak.o ../../build/engine/xetex-macos.o ../../build/engine/xetex-math.o ../../build/engine/xetex-output.o ../../build/engine/xetex-pagebuilder.o ../../build/engine/xetex-pic.o ../../build/engine/xetex-scaledmath.o ../../build/engine/xetex-shipout.o ../../build/engine/xetex-stringpool.o ../../build/engine/xetex-synctex.o ../../build/engine/xetex-texmfmp.o ../../build/engine/xetex-xetex0.o ../../build/engine/teckit-Engine.o ../../build/engine/xetex-XeTeXOTMath.o ../../build/layout/xetex-XeTeXFontInst.o ../../build/layout/xetex-XeTeXFontInst_Mac.o ../../build/layout/xetex-XeTeXFontMgr.o ../../build/layout/xetex-XeTeXFontMgr_FC.o ../../build/layout/xetex-XeTeXLayoutInterface.o ../../build/dpx/dpx-agl.o ../../build/dpx/dpx-bmpimage.o ../../build/dpx/dpx-cff.o ../../build/dpx/dpx-cff_dict.o ../../build/dpx/dpx-cid.o ../../build/dpx/dpx-cidtype0.o ../../build/dpx/dpx-cidtype2.o ../../build/dpx/dpx-cmap.o ../../build/dpx/dpx-cmap_read.o ../../build/dpx/dpx-cmap_write.o ../../build/dpx/dpx-cs_type2.o ../../build/dpx/dpx-dpxconf.o ../../build/dpx/dpx-dpxcrypt.o ../../build/dpx/dpx-dpxfile.o ../../build/dpx/dpx-dpxutil.o ../../build/dpx/dpx-dvi.o ../../build/dpx/dpx-dvipdfmx.o ../../build/dpx/dpx-epdf.o ../../build/dpx/dpx-error.o ../../build/dpx/dpx-fontmap.o ../../build/dpx/dpx-jp2image.o ../../build/dpx/dpx-jpegimage.o ../../build/dpx/dpx-mem.o ../../build/dpx/dpx-mfileio.o ../../build/dpx/dpx-mpost.o ../../build/dpx/dpx-mt19937ar.o ../../build/dpx/dpx-numbers.o ../../build/dpx/dpx-otl_opt.o ../../build/dpx/dpx-pdfcolor.o ../../build/dpx/dpx-pdfdev.o ../../build/dpx/dpx-pdfdoc.o ../../build/dpx/dpx-pdfdraw.o ../../build/dpx/dpx-pdfencoding.o ../../build/dpx/dpx-pdfencrypt.o ../../build/dpx/dpx-pdffont.o ../../build/dpx/dpx-pdfnames.o ../../build/dpx/dpx-pdfobj.o ../../build/dpx/dpx-pdfparse.o ../../build/dpx/dpx-pdfresource.o ../../build/dpx/dpx-pdfximage.o ../../build/dpx/dpx-pkfont.o ../../build/dpx/dpx-pngimage.o ../../build/dpx/dpx-pst.o ../../build/dpx/dpx-pst_obj.o ../../build/dpx/dpx-sfnt.o ../../build/dpx/dpx-spc_color.o ../../build/dpx/dpx-spc_dvipdfmx.o ../../build/dpx/dpx-spc_dvips.o ../../build/dpx/dpx-spc_html.o ../../build/dpx/dpx-spc_misc.o ../../build/dpx/dpx-spc_pdfm.o ../../build/dpx/dpx-spc_tpic.o ../../build/dpx/dpx-spc_util.o ../../build/dpx/dpx-spc_xtx.o ../../build/dpx/dpx-specials.o ../../build/dpx/dpx-subfont.o ../../build/dpx/dpx-t1_char.o ../../build/dpx/dpx-t1_load.o ../../build/dpx/dpx-tfm.o ../../build/dpx/dpx-truetype.o ../../build/dpx/dpx-tt_aux.o ../../build/dpx/dpx-tt_cmap.o ../../build/dpx/dpx-tt_glyf.o ../../build/dpx/dpx-tt_gsub.o ../../build/dpx/dpx-tt_post.o ../../build/dpx/dpx-tt_table.o ../../build/dpx/dpx-type0.o ../../build/dpx/dpx-type1.o ../../build/dpx/dpx-type1c.o ../../build/dpx/dpx-unicode.o ../../build/dpx/dpx-vf.o ../../build/main/fork.o ../../build/main/formats.o ../../build/main/main.o ../../build/main/texpresso_protocol.o ../../build/main/zlib_md5.o ../../build/common/libcommon.a
/usr/bin/ld: cannot find ../../build/common/libcommon.a: No such file or directory
collect2: error: ld returned 1 exit status
make[1]: *** [Makefile:68: ../../build/texpresso-xetex] Error 1
make[1]: Leaving directory '/home/leanh/texpresso/src/engine'
make: *** [Makefile:62: texpresso-xetex] Error 2
leanh@DESKTOP-EAEGDAK:~/texpresso$

Btw, my commands to install TeXpresso are

sudo apt update
sudo apt -y install build-essential libsdl2-dev libmupdf-dev libmujs-dev libfreetype-dev libgumbo-dev libjbig2dec0-dev libjpeg-dev libopenjp2-7-dev libssl-dev libfontconfig-dev libleptonica-dev libharfbuzz-dev mupdf git cargo
# sudo apt install -y texlive-full
sudo apt install -y rustup
rustup update stable
git clone --recurse-submodules --single-branch --branch detectonic https://github.com/let-def/texpresso.git
cd texpresso
make texpresso
git submodule update --init --recursive
make texpresso-tonic
build/texpresso test/simple.tex

leanhdung1994 avatar Jul 25 '25 22:07 leanhdung1994

Try with:

sudo apt update
sudo apt -y install build-essential libsdl2-dev libmupdf-dev libmujs-dev libfreetype-dev libgumbo-dev libjbig2dec0-dev libjpeg-dev libopenjp2-7-dev libssl-dev libfontconfig-dev libleptonica-dev libharfbuzz-dev mupdf git
git clone --single-branch --branch detectonic https://github.com/let-def/texpresso.git
cd texpresso
make
build/texpresso test/simple.tex

let-def avatar Jul 25 '25 22:07 let-def

You also need to have tectonic (which you seem to have given the log), but I don't know what is the recommended way to install it on WSL.

let-def avatar Jul 25 '25 22:07 let-def

@let-def I have used your suggested commands to clean install TeXpresso. Unfortunately, the same problem persists...

leanhdung1994 avatar Jul 26 '25 03:07 leanhdung1994

As @let-def suggested, you need tectonic installed, which is a TeX render engine, please refer to this installation to install it. If succeeded, you should get the texpresso up and running.

Edit: might not be the problem with tectonic, see my comment below

merv1n34k avatar Jul 26 '25 06:07 merv1n34k

@leanhdung1994 from your previous log seems like libcommon.a was not compiled, can you try running this commands?

# install tectonic seperately (if not installed)
# do a fresh git clone, remove previous
# assuming all dependencies have been installed, i.e. sudo apt install...
git clone --single-branch --branch detectonic https://github.com/let-def/texpresso.git && cd texpresso
make all
make fill-tectonic-cache
build/texpresso test/simple.tex

Look in the output for errors, like you've got in you previous log:

/usr/bin/ld: cannot find ../../build/common/libcommon.a: No such file or directory
collect2: error: ld returned 1 exit status
make[1]: *** [Makefile:68: ../../build/texpresso-xetex] Error 1
make[1]: Leaving directory '/home/leanh/texpresso/src/engine'
make: *** [Makefile:62: texpresso-xetex] Error 2

If everything succeeds, hopefully the problem should be fixed

merv1n34k avatar Jul 26 '25 06:07 merv1n34k

@merv1n34k I have run your commands:

sudo rm -r -f /home/leanh/texpresso
sudo apt update
sudo apt -y install build-essential libsdl2-dev libmupdf-dev libmujs-dev libfreetype-dev libgumbo-dev libjbig2dec0-dev libjpeg-dev libopenjp2-7-dev libssl-dev libfontconfig-dev libleptonica-dev libharfbuzz-dev mupdf git cargo
sudo apt install -y rustup
rustup update stable
git clone --single-branch --branch detectonic https://github.com/let-def/texpresso.git && cd texpresso
make all
make fill-tectonic-cache
build/texpresso test/simple.tex

Unfortunately, the same problem persists. Especially, I got a lo of messages undefined reference to. The following extract may be relevant:

/usr/bin/ld: dpx-pngimage.c:(.text+0x2ab3): undefined reference to `png_get_image_height'
/usr/bin/ld: dpx-pngimage.c:(.text+0x2ac6): undefined reference to `png_get_x_pixels_per_meter'
/usr/bin/ld: dpx-pngimage.c:(.text+0x2ad7): undefined reference to `png_get_y_pixels_per_meter'
/usr/bin/ld: dpx-pngimage.c:(.text+0x2b26): undefined reference to `png_destroy_info_struct'
/usr/bin/ld: dpx-pngimage.c:(.text+0x2b3c): undefined reference to `png_destroy_read_struct'
/usr/bin/ld: dpx-pngimage.c:(.text+0x2ba0): undefined reference to `png_destroy_read_struct'
collect2: error: ld returned 1 exit status
make[2]: *** [Makefile:68: ../../build/texpresso-xetex] Error 1
make[2]: Leaving directory '/home/leanh/texpresso/src/engine'
make[1]: *** [Makefile:62: texpresso-xetex] Error 2
make[1]: Leaving directory '/home/leanh/texpresso'
make: *** [Makefile:2: all] Error 2

The full output is

leanh@DESKTOP-EAEGDAK:~$ sudo rm -r -f /home/leanh/texpresso
sudo apt update
sudo apt -y install build-essential libsdl2-dev libmupdf-dev libmujs-dev libfreetype-dev libgumbo-dev libjbig2dec0-dev libjpeg-dev libopenjp2-7-dev libssl-dev libfontconfig-dev libleptonica-dev libharfbuzz-dev mupdf git cargo
sudo apt install -y rustup
rustup update stable
git clone --single-branch --branch detectonic https://github.com/let-def/texpresso.git && cd texpresso
make all
make fill-tectonic-cache
build/texpresso test/simple.tex
[sudo] password for leanh:
Get:1 http://security.ubuntu.com/ubuntu noble-security InRelease [126 kB]
Hit:2 http://archive.ubuntu.com/ubuntu noble InRelease
Get:3 http://security.ubuntu.com/ubuntu noble-security/main amd64 Components [21.5 kB]
Get:4 http://security.ubuntu.com/ubuntu noble-security/universe amd64 Components [52.3 kB]
Get:5 http://security.ubuntu.com/ubuntu noble-security/restricted amd64 Components [212 B]
Get:6 http://security.ubuntu.com/ubuntu noble-security/multiverse amd64 Components [212 B]
Get:7 http://archive.ubuntu.com/ubuntu noble-updates InRelease [126 kB]
Get:8 http://archive.ubuntu.com/ubuntu noble-backports InRelease [126 kB]
Get:9 http://archive.ubuntu.com/ubuntu noble-updates/main amd64 Packages [1282 kB]
Get:10 http://archive.ubuntu.com/ubuntu noble-updates/main amd64 Components [164 kB]
Get:11 http://archive.ubuntu.com/ubuntu noble-updates/universe amd64 Packages [1113 kB]
Get:12 http://archive.ubuntu.com/ubuntu noble-updates/universe amd64 Components [377 kB]
Get:13 http://archive.ubuntu.com/ubuntu noble-updates/restricted amd64 Components [212 B]
Get:14 http://archive.ubuntu.com/ubuntu noble-updates/multiverse amd64 Components [940 B]
Get:15 http://archive.ubuntu.com/ubuntu noble-backports/main amd64 Components [7076 B]
Get:16 http://archive.ubuntu.com/ubuntu noble-backports/universe amd64 Components [28.4 kB]
Get:17 http://archive.ubuntu.com/ubuntu noble-backports/restricted amd64 Components [216 B]
Get:18 http://archive.ubuntu.com/ubuntu noble-backports/multiverse amd64 Components [212 B]
Fetched 3425 kB in 1s (2443 kB/s)
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
52 packages can be upgraded. Run 'apt list --upgradable' to see them.
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
build-essential is already the newest version (12.10ubuntu1).
libsdl2-dev is already the newest version (2.30.0+dfsg-1ubuntu3.1).
libmupdf-dev is already the newest version (1.23.10+ds1-1build3).
libmujs-dev is already the newest version (1.3.3-3build2).
libfreetype-dev is already the newest version (2.13.2+dfsg-1build3).
libgumbo-dev is already the newest version (0.12.0+dfsg-2build1).
libjbig2dec0-dev is already the newest version (0.20-1build3).
libjpeg-dev is already the newest version (8c-2ubuntu11).
libopenjp2-7-dev is already the newest version (2.5.0-2ubuntu0.3).
libssl-dev is already the newest version (3.0.13-0ubuntu3.5).
libfontconfig-dev is already the newest version (2.15.0-1.1ubuntu2).
libleptonica-dev is already the newest version (1.82.0-3build4).
libharfbuzz-dev is already the newest version (8.3.0-2build2).
mupdf is already the newest version (1.23.10+ds1-1build3).
git is already the newest version (1:2.43.0-1ubuntu7.3).
The following additional packages will be installed:
  rustc
Suggested packages:
  cargo-doc llvm-17 lld-17 clang-17
The following packages will be REMOVED:
  rustup
The following NEW packages will be installed:
  cargo rustc
0 upgraded, 2 newly installed, 1 to remove and 52 not upgraded.
Need to get 9237 kB of archives.
After this operation, 25.4 MB of additional disk space will be used.
Get:1 http://archive.ubuntu.com/ubuntu noble-updates/main amd64 rustc amd64 1.75.0+dfsg0ubuntu1-0ubuntu7.1 [3183 kB]
Get:2 http://archive.ubuntu.com/ubuntu noble-updates/main amd64 cargo amd64 1.75.0+dfsg0ubuntu1-0ubuntu7.1 [6053 kB]
Fetched 9237 kB in 1s (7316 kB/s)
(Reading database ... 303576 files and directories currently installed.)
Removing rustup (1.26.0-5build1) ...
Selecting previously unselected package rustc.
(Reading database ... 303551 files and directories currently installed.)
Preparing to unpack .../rustc_1.75.0+dfsg0ubuntu1-0ubuntu7.1_amd64.deb ...
Unpacking rustc (1.75.0+dfsg0ubuntu1-0ubuntu7.1) ...
Selecting previously unselected package cargo.
Preparing to unpack .../cargo_1.75.0+dfsg0ubuntu1-0ubuntu7.1_amd64.deb ...
Unpacking cargo (1.75.0+dfsg0ubuntu1-0ubuntu7.1) ...
Setting up rustc (1.75.0+dfsg0ubuntu1-0ubuntu7.1) ...
Setting up cargo (1.75.0+dfsg0ubuntu1-0ubuntu7.1) ...
Processing triggers for man-db (2.12.0-4build2) ...
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
The following packages were automatically installed and are no longer required:
  libgit2-1.7 libhttp-parser2.9 libllvm17t64 libssh2-1t64 libstd-rust-1.75 libstd-rust-dev
Use 'sudo apt autoremove' to remove them.
The following packages will be REMOVED:
  cargo rustc
The following NEW packages will be installed:
  rustup
0 upgraded, 1 newly installed, 2 to remove and 52 not upgraded.
Need to get 2331 kB of archives.
After this operation, 25.4 MB disk space will be freed.
Get:1 http://archive.ubuntu.com/ubuntu noble/universe amd64 rustup amd64 1.26.0-5build1 [2331 kB]
Fetched 2331 kB in 0s (13.5 MB/s)
(Reading database ... 303628 files and directories currently installed.)
Removing cargo (1.75.0+dfsg0ubuntu1-0ubuntu7.1) ...
Removing rustc (1.75.0+dfsg0ubuntu1-0ubuntu7.1) ...
Selecting previously unselected package rustup.
(Reading database ... 303551 files and directories currently installed.)
Preparing to unpack .../rustup_1.26.0-5build1_amd64.deb ...
Unpacking rustup (1.26.0-5build1) ...
Setting up rustup (1.26.0-5build1) ...
Processing triggers for man-db (2.12.0-4build2) ...
info: syncing channel updates for 'stable-x86_64-unknown-linux-gnu'

  stable-x86_64-unknown-linux-gnu unchanged - rustc 1.88.0 (6b00bc388 2025-06-23)

Cloning into 'texpresso'...
remote: Enumerating objects: 2081, done.
remote: Counting objects: 100% (615/615), done.
remote: Compressing objects: 100% (132/132), done.
remote: Total 2081 (delta 519), reused 483 (delta 483), pack-reused 1466 (from 2)
Receiving objects: 100% (2081/2081), 1.68 MiB | 14.67 MiB/s, done.
Resolving deltas: 100% (1363/1363), done.
make common texpresso texpresso-xetex
make[1]: Entering directory '/home/leanh/texpresso'
make -C src/common
make[2]: Entering directory '/home/leanh/texpresso/src/common'
make -C ../.. config
make[3]: Entering directory '/home/leanh/texpresso'
mkdir -p build/objects
echo >Makefile.config "CFLAGS=-O2 -ggdb -I. -fPIC"
echo >>Makefile.config 'CC=gcc $(CFLAGS)'
echo >>Makefile.config 'LDCC=g++ $(CFLAGS)'
echo >>Makefile.config "LIBS=-lmupdf -lm `CC=gcc ./mupdf-config.sh` -lz -ljpeg -lharfbuzz -lfreetype -lSDL2"
Linking -lmupdf-third -lleptonica -lmujs -lgumbo -ljbig2dec -lopenjp2
Skipping -ltesseract
make[3]: Leaving directory '/home/leanh/texpresso'
mkdir -p ../../build/common
gcc -O2 -ggdb -I. -fPIC -I../include -c -o ../../build/common/utils.o utils.c
gcc -O2 -ggdb -I. -fPIC -I../include -c -o ../../build/common/tectonic_provider.o tectonic_provider.c
gcc -O2 -ggdb -I. -fPIC -I../include -c -o ../../build/common/texlive_provider.o texlive_provider.c
ar cr ../../build/common/libcommon.a ../../build/common/utils.o ../../build/common/tectonic_provider.o ../../build/common/texlive_provider.o
make[2]: Leaving directory '/home/leanh/texpresso/src/common'
make -C src/frontend texpresso
make[2]: Entering directory '/home/leanh/texpresso/src/frontend'
mkdir -p ../../build/frontend
gcc -O2 -ggdb -I. -fPIC -c -o ../../build/frontend/driver.o -I../dvi/ -I../include driver.c
gcc -O2 -ggdb -I. -fPIC -c -o ../../build/frontend/main.o -I../dvi/ -I../include main.c
gcc -O2 -ggdb -I. -fPIC -c -o ../../build/frontend/logo.o -I../dvi/ -I../include logo.c
gcc -O2 -ggdb -I. -fPIC -c -o ../../build/frontend/sprotocol.o -I../dvi/ -I../include sprotocol.c
gcc -O2 -ggdb -I. -fPIC -c -o ../../build/frontend/state.o -I../dvi/ -I../include state.c
gcc -O2 -ggdb -I. -fPIC -c -o ../../build/frontend/fs.o -I../dvi/ -I../include fs.c
gcc -O2 -ggdb -I. -fPIC -c -o ../../build/frontend/incdvi.o -I../dvi/ -I../include incdvi.c
gcc -O2 -ggdb -I. -fPIC -c -o ../../build/frontend/myabort.o -I../dvi/ -I../include myabort.c
gcc -O2 -ggdb -I. -fPIC -c -o ../../build/frontend/renderer.o -I../dvi/ -I../include renderer.c
gcc -O2 -ggdb -I. -fPIC -c -o ../../build/frontend/engine_tex.o -I../dvi/ -I../include engine_tex.c
gcc -O2 -ggdb -I. -fPIC -c -o ../../build/frontend/engine_pdf.o -I../dvi/ -I../include engine_pdf.c
gcc -O2 -ggdb -I. -fPIC -c -o ../../build/frontend/engine_dvi.o -I../dvi/ -I../include engine_dvi.c
gcc -O2 -ggdb -I. -fPIC -c -o ../../build/frontend/synctex.o -I../dvi/ -I../include synctex.c
gcc -O2 -ggdb -I. -fPIC -c -o ../../build/frontend/prot_parser.o -I../dvi/ -I../include prot_parser.c
gcc -O2 -ggdb -I. -fPIC -c -o ../../build/frontend/sexp_parser.o -I../dvi/ -I../include sexp_parser.c
gcc -O2 -ggdb -I. -fPIC -c -o ../../build/frontend/json_parser.o -I../dvi/ -I../include json_parser.c
gcc -O2 -ggdb -I. -fPIC -c -o ../../build/frontend/editor.o -I../dvi/ -I../include editor.c
make -C ../dvi ../../build/frontend/libmydvi.a
make[3]: Entering directory '/home/leanh/texpresso/src/dvi'
gcc -O2 -ggdb -I. -fPIC -I../include -c -o ../../build/frontend/dvi_context.o dvi_context.c
gcc -O2 -ggdb -I. -fPIC -I../include -c -o ../../build/frontend/dvi_interp.o dvi_interp.c
gcc -O2 -ggdb -I. -fPIC -I../include -c -o ../../build/frontend/dvi_prim.o dvi_prim.c
gcc -O2 -ggdb -I. -fPIC -I../include -c -o ../../build/frontend/dvi_special.o dvi_special.c
gcc -O2 -ggdb -I. -fPIC -I../include -c -o ../../build/frontend/dvi_scratch.o dvi_scratch.c
gcc -O2 -ggdb -I. -fPIC -I../include -c -o ../../build/frontend/dvi_fonttable.o dvi_fonttable.c
gcc -O2 -ggdb -I. -fPIC -I../include -I/usr/include/freetype2 -I/usr/include/libpng16  -c -o ../../build/frontend/dvi_resmanager.o dvi_resmanager.c
gcc -O2 -ggdb -I. -fPIC -I../include -c -o ../../build/frontend/tex_tfm.o tex_tfm.c
gcc -O2 -ggdb -I. -fPIC -I../include -c -o ../../build/frontend/tex_fontmap.o tex_fontmap.c
gcc -O2 -ggdb -I. -fPIC -I../include -c -o ../../build/frontend/tex_vf.o tex_vf.c
gcc -O2 -ggdb -I. -fPIC -I../include -c -o ../../build/frontend/tex_enc.o tex_enc.c
gcc -O2 -ggdb -I. -fPIC -I../include -c -o ../../build/frontend/vstack.o vstack.c
gcc -O2 -ggdb -I. -fPIC -I../include -c -o ../../build/frontend/pdf_lexer.o pdf_lexer.c
ar cr ../../build/frontend/libmydvi.a ../../build/frontend/dvi_context.o ../../build/frontend/dvi_interp.o ../../build/frontend/dvi_prim.o ../../build/frontend/dvi_special.o ../../build/frontend/dvi_scratch.o ../../build/frontend/dvi_fonttable.o ../../build/frontend/dvi_resmanager.o ../../build/frontend/tex_tfm.o ../../build/frontend/tex_fontmap.o ../../build/frontend/tex_vf.o ../../build/frontend/tex_enc.o ../../build/frontend/vstack.o ../../build/frontend/pdf_lexer.o
make[3]: Leaving directory '/home/leanh/texpresso/src/dvi'
g++ -O2 -ggdb -I. -fPIC -o ../../build/texpresso ../../build/frontend/driver.o ../../build/frontend/main.o ../../build/frontend/logo.o ../../build/frontend/sprotocol.o ../../build/frontend/state.o ../../build/frontend/fs.o ../../build/frontend/incdvi.o ../../build/frontend/myabort.o ../../build/frontend/renderer.o ../../build/frontend/engine_tex.o ../../build/frontend/engine_pdf.o ../../build/frontend/engine_dvi.o ../../build/frontend/synctex.o ../../build/frontend/prot_parser.o ../../build/frontend/sexp_parser.o ../../build/frontend/json_parser.o ../../build/frontend/editor.o ../../build/frontend/libmydvi.a -lmupdf -lm  -lmupdf-third -lleptonica -lmujs -lgumbo -ljbig2dec -lopenjp2 -lz -ljpeg -lharfbuzz -lfreetype -lSDL2
make[2]: Leaving directory '/home/leanh/texpresso/src/frontend'
make -C src/engine
make[2]: Entering directory '/home/leanh/texpresso/src/engine'
mkdir -p ../../build/engine
mkdir -p ../../build/layout
mkdir -p ../../build/dpx
mkdir -p ../../build/main
gcc -Iinclude -Ilayout -Idpx -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -O2    -I../include -c -o ../../build/engine/xetex-engine-interface.o engine/xetex-engine-interface.c
gcc -Iinclude -Ilayout -Idpx -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -O2    -I../include -c -o ../../build/engine/xetex-errors.o engine/xetex-errors.c
gcc -Iinclude -Ilayout -Idpx -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -O2    -I../include -c -o ../../build/engine/xetex-ext.o engine/xetex-ext.c
gcc -Iinclude -Ilayout -Idpx -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -O2    -I../include -c -o ../../build/engine/xetex-ini.o engine/xetex-ini.c
gcc -Iinclude -Ilayout -Idpx -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -O2    -I../include -c -o ../../build/engine/xetex-io.o engine/xetex-io.c
gcc -Iinclude -Ilayout -Idpx -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -O2    -I../include -c -o ../../build/engine/xetex-linebreak.o engine/xetex-linebreak.c
gcc -Iinclude -Ilayout -Idpx -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -O2    -I../include -c -o ../../build/engine/xetex-macos.o engine/xetex-macos.c
gcc -Iinclude -Ilayout -Idpx -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -O2    -I../include -c -o ../../build/engine/xetex-math.o engine/xetex-math.c
gcc -Iinclude -Ilayout -Idpx -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -O2    -I../include -c -o ../../build/engine/xetex-output.o engine/xetex-output.c
gcc -Iinclude -Ilayout -Idpx -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -O2    -I../include -c -o ../../build/engine/xetex-pagebuilder.o engine/xetex-pagebuilder.c
gcc -Iinclude -Ilayout -Idpx -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -O2    -I../include -c -o ../../build/engine/xetex-pic.o engine/xetex-pic.c
gcc -Iinclude -Ilayout -Idpx -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -O2    -I../include -c -o ../../build/engine/xetex-scaledmath.o engine/xetex-scaledmath.c
gcc -Iinclude -Ilayout -Idpx -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -O2    -I../include -c -o ../../build/engine/xetex-shipout.o engine/xetex-shipout.c
gcc -Iinclude -Ilayout -Idpx -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -O2    -I../include -c -o ../../build/engine/xetex-stringpool.o engine/xetex-stringpool.c
gcc -Iinclude -Ilayout -Idpx -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -O2    -I../include -c -o ../../build/engine/xetex-synctex.o engine/xetex-synctex.c
gcc -Iinclude -Ilayout -Idpx -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -O2    -I../include -c -o ../../build/engine/xetex-texmfmp.o engine/xetex-texmfmp.c
gcc -Iinclude -Ilayout -Idpx -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -O2    -I../include -c -o ../../build/engine/xetex-xetex0.o engine/xetex-xetex0.c
g++ -std=c++17 -Iinclude -Ilayout -Idpx -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -O2     -I../include -c -o ../../build/engine/teckit-Engine.o engine/teckit-Engine.cpp
g++ -std=c++17 -Iinclude -Ilayout -Idpx -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -O2     -I../include -c -o ../../build/engine/xetex-XeTeXOTMath.o engine/xetex-XeTeXOTMath.cpp
g++ -std=c++17 -Iinclude -Ilayout -Idpx -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -O2     -I../include -c -o ../../build/layout/xetex-XeTeXFontInst.o layout/xetex-XeTeXFontInst.cpp
g++ -std=c++17 -Iinclude -Ilayout -Idpx -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -O2     -I../include -c -o ../../build/layout/xetex-XeTeXFontInst_Mac.o layout/xetex-XeTeXFontInst_Mac.cpp
g++ -std=c++17 -Iinclude -Ilayout -Idpx -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -O2     -I../include -c -o ../../build/layout/xetex-XeTeXFontMgr.o layout/xetex-XeTeXFontMgr.cpp
g++ -std=c++17 -Iinclude -Ilayout -Idpx -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -O2     -I../include -c -o ../../build/layout/xetex-XeTeXFontMgr_FC.o layout/xetex-XeTeXFontMgr_FC.cpp
g++ -std=c++17 -Iinclude -Ilayout -Idpx -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -O2     -I../include -c -o ../../build/layout/xetex-XeTeXLayoutInterface.o layout/xetex-XeTeXLayoutInterface.cpp
gcc -Iinclude -Ilayout -Idpx -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -O2    -I../include -c -o ../../build/dpx/dpx-agl.o dpx/dpx-agl.c
gcc -Iinclude -Ilayout -Idpx -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -O2    -I../include -c -o ../../build/dpx/dpx-bmpimage.o dpx/dpx-bmpimage.c
gcc -Iinclude -Ilayout -Idpx -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -O2    -I../include -c -o ../../build/dpx/dpx-cff.o dpx/dpx-cff.c
gcc -Iinclude -Ilayout -Idpx -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -O2    -I../include -c -o ../../build/dpx/dpx-cff_dict.o dpx/dpx-cff_dict.c
gcc -Iinclude -Ilayout -Idpx -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -O2    -I../include -c -o ../../build/dpx/dpx-cid.o dpx/dpx-cid.c
gcc -Iinclude -Ilayout -Idpx -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -O2    -I../include -c -o ../../build/dpx/dpx-cidtype0.o dpx/dpx-cidtype0.c
gcc -Iinclude -Ilayout -Idpx -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -O2    -I../include -c -o ../../build/dpx/dpx-cidtype2.o dpx/dpx-cidtype2.c
gcc -Iinclude -Ilayout -Idpx -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -O2    -I../include -c -o ../../build/dpx/dpx-cmap.o dpx/dpx-cmap.c
gcc -Iinclude -Ilayout -Idpx -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -O2    -I../include -c -o ../../build/dpx/dpx-cmap_read.o dpx/dpx-cmap_read.c
gcc -Iinclude -Ilayout -Idpx -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -O2    -I../include -c -o ../../build/dpx/dpx-cmap_write.o dpx/dpx-cmap_write.c
gcc -Iinclude -Ilayout -Idpx -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -O2    -I../include -c -o ../../build/dpx/dpx-cs_type2.o dpx/dpx-cs_type2.c
gcc -Iinclude -Ilayout -Idpx -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -O2    -I../include -c -o ../../build/dpx/dpx-dpxconf.o dpx/dpx-dpxconf.c
gcc -Iinclude -Ilayout -Idpx -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -O2    -I../include -c -o ../../build/dpx/dpx-dpxcrypt.o dpx/dpx-dpxcrypt.c
gcc -Iinclude -Ilayout -Idpx -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -O2    -I../include -c -o ../../build/dpx/dpx-dpxfile.o dpx/dpx-dpxfile.c
gcc -Iinclude -Ilayout -Idpx -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -O2    -I../include -c -o ../../build/dpx/dpx-dpxutil.o dpx/dpx-dpxutil.c
gcc -Iinclude -Ilayout -Idpx -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -O2    -I../include -c -o ../../build/dpx/dpx-dvi.o dpx/dpx-dvi.c
gcc -Iinclude -Ilayout -Idpx -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -O2    -I../include -c -o ../../build/dpx/dpx-dvipdfmx.o dpx/dpx-dvipdfmx.c
gcc -Iinclude -Ilayout -Idpx -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -O2    -I../include -c -o ../../build/dpx/dpx-epdf.o dpx/dpx-epdf.c
gcc -Iinclude -Ilayout -Idpx -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -O2    -I../include -c -o ../../build/dpx/dpx-error.o dpx/dpx-error.c
gcc -Iinclude -Ilayout -Idpx -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -O2    -I../include -c -o ../../build/dpx/dpx-fontmap.o dpx/dpx-fontmap.c
gcc -Iinclude -Ilayout -Idpx -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -O2    -I../include -c -o ../../build/dpx/dpx-jp2image.o dpx/dpx-jp2image.c
gcc -Iinclude -Ilayout -Idpx -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -O2    -I../include -c -o ../../build/dpx/dpx-jpegimage.o dpx/dpx-jpegimage.c
gcc -Iinclude -Ilayout -Idpx -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -O2    -I../include -c -o ../../build/dpx/dpx-mem.o dpx/dpx-mem.c
gcc -Iinclude -Ilayout -Idpx -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -O2    -I../include -c -o ../../build/dpx/dpx-mfileio.o dpx/dpx-mfileio.c
gcc -Iinclude -Ilayout -Idpx -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -O2    -I../include -c -o ../../build/dpx/dpx-mpost.o dpx/dpx-mpost.c
dpx/dpx-mpost.c: In function ‘mps_do_page’:
dpx/dpx-mpost.c:1510:3: warning: ignoring return value of ‘fread’ declared with attribute ‘warn_unused_result’ [-Wunused-result]
 1510 |   fread(buffer, sizeof(char), size, image_file);
      |   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
gcc -Iinclude -Ilayout -Idpx -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -O2    -I../include -c -o ../../build/dpx/dpx-mt19937ar.o dpx/dpx-mt19937ar.c
gcc -Iinclude -Ilayout -Idpx -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -O2    -I../include -c -o ../../build/dpx/dpx-numbers.o dpx/dpx-numbers.c
gcc -Iinclude -Ilayout -Idpx -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -O2    -I../include -c -o ../../build/dpx/dpx-otl_opt.o dpx/dpx-otl_opt.c
gcc -Iinclude -Ilayout -Idpx -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -O2    -I../include -c -o ../../build/dpx/dpx-pdfcolor.o dpx/dpx-pdfcolor.c
gcc -Iinclude -Ilayout -Idpx -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -O2    -I../include -c -o ../../build/dpx/dpx-pdfdev.o dpx/dpx-pdfdev.c
gcc -Iinclude -Ilayout -Idpx -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -O2    -I../include -c -o ../../build/dpx/dpx-pdfdoc.o dpx/dpx-pdfdoc.c
gcc -Iinclude -Ilayout -Idpx -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -O2    -I../include -c -o ../../build/dpx/dpx-pdfdraw.o dpx/dpx-pdfdraw.c
gcc -Iinclude -Ilayout -Idpx -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -O2    -I../include -c -o ../../build/dpx/dpx-pdfencoding.o dpx/dpx-pdfencoding.c
gcc -Iinclude -Ilayout -Idpx -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -O2    -I../include -c -o ../../build/dpx/dpx-pdfencrypt.o dpx/dpx-pdfencrypt.c
gcc -Iinclude -Ilayout -Idpx -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -O2    -I../include -c -o ../../build/dpx/dpx-pdffont.o dpx/dpx-pdffont.c
gcc -Iinclude -Ilayout -Idpx -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -O2    -I../include -c -o ../../build/dpx/dpx-pdfnames.o dpx/dpx-pdfnames.c
gcc -Iinclude -Ilayout -Idpx -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -O2    -I../include -c -o ../../build/dpx/dpx-pdfobj.o dpx/dpx-pdfobj.c
gcc -Iinclude -Ilayout -Idpx -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -O2    -I../include -c -o ../../build/dpx/dpx-pdfparse.o dpx/dpx-pdfparse.c
gcc -Iinclude -Ilayout -Idpx -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -O2    -I../include -c -o ../../build/dpx/dpx-pdfresource.o dpx/dpx-pdfresource.c
gcc -Iinclude -Ilayout -Idpx -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -O2    -I../include -c -o ../../build/dpx/dpx-pdfximage.o dpx/dpx-pdfximage.c
gcc -Iinclude -Ilayout -Idpx -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -O2    -I../include -c -o ../../build/dpx/dpx-pkfont.o dpx/dpx-pkfont.c
gcc -Iinclude -Ilayout -Idpx -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -O2    -I../include -c -o ../../build/dpx/dpx-pngimage.o dpx/dpx-pngimage.c
gcc -Iinclude -Ilayout -Idpx -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -O2    -I../include -c -o ../../build/dpx/dpx-pst.o dpx/dpx-pst.c
gcc -Iinclude -Ilayout -Idpx -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -O2    -I../include -c -o ../../build/dpx/dpx-pst_obj.o dpx/dpx-pst_obj.c
gcc -Iinclude -Ilayout -Idpx -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -O2    -I../include -c -o ../../build/dpx/dpx-sfnt.o dpx/dpx-sfnt.c
gcc -Iinclude -Ilayout -Idpx -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -O2    -I../include -c -o ../../build/dpx/dpx-spc_color.o dpx/dpx-spc_color.c
gcc -Iinclude -Ilayout -Idpx -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -O2    -I../include -c -o ../../build/dpx/dpx-spc_dvipdfmx.o dpx/dpx-spc_dvipdfmx.c
gcc -Iinclude -Ilayout -Idpx -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -O2    -I../include -c -o ../../build/dpx/dpx-spc_dvips.o dpx/dpx-spc_dvips.c
gcc -Iinclude -Ilayout -Idpx -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -O2    -I../include -c -o ../../build/dpx/dpx-spc_html.o dpx/dpx-spc_html.c
gcc -Iinclude -Ilayout -Idpx -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -O2    -I../include -c -o ../../build/dpx/dpx-spc_misc.o dpx/dpx-spc_misc.c
gcc -Iinclude -Ilayout -Idpx -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -O2    -I../include -c -o ../../build/dpx/dpx-spc_pdfm.o dpx/dpx-spc_pdfm.c
gcc -Iinclude -Ilayout -Idpx -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -O2    -I../include -c -o ../../build/dpx/dpx-spc_tpic.o dpx/dpx-spc_tpic.c
gcc -Iinclude -Ilayout -Idpx -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -O2    -I../include -c -o ../../build/dpx/dpx-spc_util.o dpx/dpx-spc_util.c
gcc -Iinclude -Ilayout -Idpx -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -O2    -I../include -c -o ../../build/dpx/dpx-spc_xtx.o dpx/dpx-spc_xtx.c
gcc -Iinclude -Ilayout -Idpx -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -O2    -I../include -c -o ../../build/dpx/dpx-specials.o dpx/dpx-specials.c
gcc -Iinclude -Ilayout -Idpx -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -O2    -I../include -c -o ../../build/dpx/dpx-subfont.o dpx/dpx-subfont.c
gcc -Iinclude -Ilayout -Idpx -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -O2    -I../include -c -o ../../build/dpx/dpx-t1_char.o dpx/dpx-t1_char.c
gcc -Iinclude -Ilayout -Idpx -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -O2    -I../include -c -o ../../build/dpx/dpx-t1_load.o dpx/dpx-t1_load.c
gcc -Iinclude -Ilayout -Idpx -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -O2    -I../include -c -o ../../build/dpx/dpx-tfm.o dpx/dpx-tfm.c
gcc -Iinclude -Ilayout -Idpx -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -O2    -I../include -c -o ../../build/dpx/dpx-truetype.o dpx/dpx-truetype.c
gcc -Iinclude -Ilayout -Idpx -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -O2    -I../include -c -o ../../build/dpx/dpx-tt_aux.o dpx/dpx-tt_aux.c
gcc -Iinclude -Ilayout -Idpx -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -O2    -I../include -c -o ../../build/dpx/dpx-tt_cmap.o dpx/dpx-tt_cmap.c
gcc -Iinclude -Ilayout -Idpx -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -O2    -I../include -c -o ../../build/dpx/dpx-tt_glyf.o dpx/dpx-tt_glyf.c
gcc -Iinclude -Ilayout -Idpx -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -O2    -I../include -c -o ../../build/dpx/dpx-tt_gsub.o dpx/dpx-tt_gsub.c
gcc -Iinclude -Ilayout -Idpx -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -O2    -I../include -c -o ../../build/dpx/dpx-tt_post.o dpx/dpx-tt_post.c
gcc -Iinclude -Ilayout -Idpx -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -O2    -I../include -c -o ../../build/dpx/dpx-tt_table.o dpx/dpx-tt_table.c
gcc -Iinclude -Ilayout -Idpx -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -O2    -I../include -c -o ../../build/dpx/dpx-type0.o dpx/dpx-type0.c
gcc -Iinclude -Ilayout -Idpx -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -O2    -I../include -c -o ../../build/dpx/dpx-type1.o dpx/dpx-type1.c
gcc -Iinclude -Ilayout -Idpx -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -O2    -I../include -c -o ../../build/dpx/dpx-type1c.o dpx/dpx-type1c.c
gcc -Iinclude -Ilayout -Idpx -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -O2    -I../include -c -o ../../build/dpx/dpx-unicode.o dpx/dpx-unicode.c
gcc -Iinclude -Ilayout -Idpx -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -O2    -I../include -c -o ../../build/dpx/dpx-vf.o dpx/dpx-vf.c
gcc -Iinclude -Ilayout -Idpx -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -O2    -I../include -c -o ../../build/main/fork.o main/fork.c
gcc -Iinclude -Ilayout -Idpx -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -O2    -I../include -c -o ../../build/main/formats.o main/formats.c
gcc -Iinclude -Ilayout -Idpx -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -O2    -I../include -c -o ../../build/main/main.o main/main.c
gcc -Iinclude -Ilayout -Idpx -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -O2    -I../include -c -o ../../build/main/texpresso_protocol.o main/texpresso_protocol.c
gcc -Iinclude -Ilayout -Idpx -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -O2    -I../include -c -o ../../build/main/zlib_md5.o main/zlib_md5.c
g++ -lm -lz -lharfbuzz -lgraphite2 -lfontconfig -lfreetype -lpng16 -licuuc -licudata     -o ../../build/texpresso-xetex ../../build/engine/xetex-engine-interface.o ../../build/engine/xetex-errors.o ../../build/engine/xetex-ext.o ../../build/engine/xetex-ini.o ../../build/engine/xetex-io.o ../../build/engine/xetex-linebreak.o ../../build/engine/xetex-macos.o ../../build/engine/xetex-math.o ../../build/engine/xetex-output.o ../../build/engine/xetex-pagebuilder.o ../../build/engine/xetex-pic.o ../../build/engine/xetex-scaledmath.o ../../build/engine/xetex-shipout.o ../../build/engine/xetex-stringpool.o ../../build/engine/xetex-synctex.o ../../build/engine/xetex-texmfmp.o ../../build/engine/xetex-xetex0.o ../../build/engine/teckit-Engine.o ../../build/engine/xetex-XeTeXOTMath.o ../../build/layout/xetex-XeTeXFontInst.o ../../build/layout/xetex-XeTeXFontInst_Mac.o ../../build/layout/xetex-XeTeXFontMgr.o ../../build/layout/xetex-XeTeXFontMgr_FC.o ../../build/layout/xetex-XeTeXLayoutInterface.o ../../build/dpx/dpx-agl.o ../../build/dpx/dpx-bmpimage.o ../../build/dpx/dpx-cff.o ../../build/dpx/dpx-cff_dict.o ../../build/dpx/dpx-cid.o ../../build/dpx/dpx-cidtype0.o ../../build/dpx/dpx-cidtype2.o ../../build/dpx/dpx-cmap.o ../../build/dpx/dpx-cmap_read.o ../../build/dpx/dpx-cmap_write.o ../../build/dpx/dpx-cs_type2.o ../../build/dpx/dpx-dpxconf.o ../../build/dpx/dpx-dpxcrypt.o ../../build/dpx/dpx-dpxfile.o ../../build/dpx/dpx-dpxutil.o ../../build/dpx/dpx-dvi.o ../../build/dpx/dpx-dvipdfmx.o ../../build/dpx/dpx-epdf.o ../../build/dpx/dpx-error.o ../../build/dpx/dpx-fontmap.o ../../build/dpx/dpx-jp2image.o ../../build/dpx/dpx-jpegimage.o ../../build/dpx/dpx-mem.o ../../build/dpx/dpx-mfileio.o ../../build/dpx/dpx-mpost.o ../../build/dpx/dpx-mt19937ar.o ../../build/dpx/dpx-numbers.o ../../build/dpx/dpx-otl_opt.o ../../build/dpx/dpx-pdfcolor.o ../../build/dpx/dpx-pdfdev.o ../../build/dpx/dpx-pdfdoc.o ../../build/dpx/dpx-pdfdraw.o ../../build/dpx/dpx-pdfencoding.o ../../build/dpx/dpx-pdfencrypt.o ../../build/dpx/dpx-pdffont.o ../../build/dpx/dpx-pdfnames.o ../../build/dpx/dpx-pdfobj.o ../../build/dpx/dpx-pdfparse.o ../../build/dpx/dpx-pdfresource.o ../../build/dpx/dpx-pdfximage.o ../../build/dpx/dpx-pkfont.o ../../build/dpx/dpx-pngimage.o ../../build/dpx/dpx-pst.o ../../build/dpx/dpx-pst_obj.o ../../build/dpx/dpx-sfnt.o ../../build/dpx/dpx-spc_color.o ../../build/dpx/dpx-spc_dvipdfmx.o ../../build/dpx/dpx-spc_dvips.o ../../build/dpx/dpx-spc_html.o ../../build/dpx/dpx-spc_misc.o ../../build/dpx/dpx-spc_pdfm.o ../../build/dpx/dpx-spc_tpic.o ../../build/dpx/dpx-spc_util.o ../../build/dpx/dpx-spc_xtx.o ../../build/dpx/dpx-specials.o ../../build/dpx/dpx-subfont.o ../../build/dpx/dpx-t1_char.o ../../build/dpx/dpx-t1_load.o ../../build/dpx/dpx-tfm.o ../../build/dpx/dpx-truetype.o ../../build/dpx/dpx-tt_aux.o ../../build/dpx/dpx-tt_cmap.o ../../build/dpx/dpx-tt_glyf.o ../../build/dpx/dpx-tt_gsub.o ../../build/dpx/dpx-tt_post.o ../../build/dpx/dpx-tt_table.o ../../build/dpx/dpx-type0.o ../../build/dpx/dpx-type1.o ../../build/dpx/dpx-type1c.o ../../build/dpx/dpx-unicode.o ../../build/dpx/dpx-vf.o ../../build/main/fork.o ../../build/main/formats.o ../../build/main/main.o ../../build/main/texpresso_protocol.o ../../build/main/zlib_md5.o ../../build/common/libcommon.a
/usr/bin/ld: ../../build/layout/xetex-XeTeXFontInst.o: in function `XeTeXFontInst::~XeTeXFontInst()':
xetex-XeTeXFontInst.cpp:(.text+0x3c): undefined reference to `FT_Done_Face'
/usr/bin/ld: xetex-XeTeXFontInst.cpp:(.text+0x4d): undefined reference to `hb_font_destroy'
/usr/bin/ld: ../../build/layout/xetex-XeTeXFontInst.o: in function `_get_table(hb_face_t*, unsigned int, void*)':
xetex-XeTeXFontInst.cpp:(.text+0xac): undefined reference to `FT_Load_Sfnt_Table'
/usr/bin/ld: xetex-XeTeXFontInst.cpp:(.text+0xd4): undefined reference to `FT_Load_Sfnt_Table'
/usr/bin/ld: xetex-XeTeXFontInst.cpp:(.text+0xf2): undefined reference to `hb_blob_create'
/usr/bin/ld: ../../build/layout/xetex-XeTeXFontInst.o: in function `_get_glyph_name(hb_font_t*, void*, unsigned int, char*, unsigned int, void*)':
xetex-XeTeXFontInst.cpp:(.text+0x14c): undefined reference to `FT_Get_Glyph_Name'
/usr/bin/ld: ../../build/layout/xetex-XeTeXFontInst.o: in function `_get_glyph_contour_point(hb_font_t*, void*, unsigned int, unsigned int, int*, int*, void*)':
xetex-XeTeXFontInst.cpp:(.text+0x194): undefined reference to `FT_Load_Glyph'
/usr/bin/ld: ../../build/layout/xetex-XeTeXFontInst.o: in function `_get_glyph_extents(hb_font_t*, void*, unsigned int, hb_glyph_extents_t*, void*)':
xetex-XeTeXFontInst.cpp:(.text+0x21b): undefined reference to `FT_Load_Glyph'
/usr/bin/ld: ../../build/layout/xetex-XeTeXFontInst.o: in function `_get_glyph_h_kerning(hb_font_t*, void*, unsigned int, unsigned int, void*)':
xetex-XeTeXFontInst.cpp:(.text+0x298): undefined reference to `FT_Get_Kerning'
/usr/bin/ld: ../../build/layout/xetex-XeTeXFontInst.o: in function `_get_variation_glyph(hb_font_t*, void*, unsigned int, unsigned int, unsigned int*, void*)':
xetex-XeTeXFontInst.cpp:(.text+0x2e3): undefined reference to `FT_Face_GetCharVariantIndex'
/usr/bin/ld: ../../build/layout/xetex-XeTeXFontInst.o: in function `_get_nominal_glyph(hb_font_t*, void*, unsigned int, unsigned int*, void*)':
xetex-XeTeXFontInst.cpp:(.text+0x30e): undefined reference to `FT_Get_Char_Index'
/usr/bin/ld: ../../build/layout/xetex-XeTeXFontInst.o: in function `_get_glyph_h_advance(hb_font_t*, void*, unsigned int, void*)':
xetex-XeTeXFontInst.cpp:(.text+0x356): undefined reference to `FT_Get_Advance'
/usr/bin/ld: ../../build/layout/xetex-XeTeXFontInst.o: in function `_get_glyph_v_advance(hb_font_t*, void*, unsigned int, void*)':
xetex-XeTeXFontInst.cpp:(.text+0x3a6): undefined reference to `FT_Get_Advance'
/usr/bin/ld: ../../build/layout/xetex-XeTeXFontInst.o: in function `XeTeXFontInst::~XeTeXFontInst()':
xetex-XeTeXFontInst.cpp:(.text+0x3fc): undefined reference to `FT_Done_Face'
/usr/bin/ld: xetex-XeTeXFontInst.cpp:(.text+0x40d): undefined reference to `hb_font_destroy'
/usr/bin/ld: ../../build/layout/xetex-XeTeXFontInst.o: in function `XeTeXFontInst::initialize(char const*, int, int&)':
xetex-XeTeXFontInst.cpp:(.text+0x4ec): undefined reference to `FT_New_Memory_Face'
/usr/bin/ld: xetex-XeTeXFontInst.cpp:(.text+0x585): undefined reference to `FT_Get_Sfnt_Table'
/usr/bin/ld: xetex-XeTeXFontInst.cpp:(.text+0x5b2): undefined reference to `FT_Get_Sfnt_Table'
/usr/bin/ld: xetex-XeTeXFontInst.cpp:(.text+0x612): undefined reference to `hb_face_create_for_tables'
/usr/bin/ld: xetex-XeTeXFontInst.cpp:(.text+0x620): undefined reference to `hb_face_set_index'
/usr/bin/ld: xetex-XeTeXFontInst.cpp:(.text+0x62c): undefined reference to `hb_face_set_upem'
/usr/bin/ld: xetex-XeTeXFontInst.cpp:(.text+0x634): undefined reference to `hb_font_create'
/usr/bin/ld: xetex-XeTeXFontInst.cpp:(.text+0x640): undefined reference to `hb_face_destroy'
/usr/bin/ld: xetex-XeTeXFontInst.cpp:(.text+0x65f): undefined reference to `hb_font_set_funcs'
/usr/bin/ld: xetex-XeTeXFontInst.cpp:(.text+0x66e): undefined reference to `hb_font_set_scale'
/usr/bin/ld: xetex-XeTeXFontInst.cpp:(.text+0x718): undefined reference to `FT_Init_FreeType'
/usr/bin/ld: xetex-XeTeXFontInst.cpp:(.text+0x820): undefined reference to `FT_Attach_Stream'
/usr/bin/ld: xetex-XeTeXFontInst.cpp:(.text+0x84f): undefined reference to `hb_font_funcs_create'
/usr/bin/ld: xetex-XeTeXFontInst.cpp:(.text+0x87b): undefined reference to `hb_font_funcs_set_nominal_glyph_func'
/usr/bin/ld: xetex-XeTeXFontInst.cpp:(.text+0x892): undefined reference to `hb_font_funcs_set_variation_glyph_func'
/usr/bin/ld: xetex-XeTeXFontInst.cpp:(.text+0x8a9): undefined reference to `hb_font_funcs_set_glyph_h_advance_func'
/usr/bin/ld: xetex-XeTeXFontInst.cpp:(.text+0x8c0): undefined reference to `hb_font_funcs_set_glyph_v_advance_func'
/usr/bin/ld: xetex-XeTeXFontInst.cpp:(.text+0x8d7): undefined reference to `hb_font_funcs_set_glyph_h_origin_func'
/usr/bin/ld: xetex-XeTeXFontInst.cpp:(.text+0x8ee): undefined reference to `hb_font_funcs_set_glyph_v_origin_func'
/usr/bin/ld: xetex-XeTeXFontInst.cpp:(.text+0x905): undefined reference to `hb_font_funcs_set_glyph_h_kerning_func'
/usr/bin/ld: xetex-XeTeXFontInst.cpp:(.text+0x91c): undefined reference to `hb_font_funcs_set_glyph_v_kerning_func'
/usr/bin/ld: xetex-XeTeXFontInst.cpp:(.text+0x933): undefined reference to `hb_font_funcs_set_glyph_extents_func'
/usr/bin/ld: xetex-XeTeXFontInst.cpp:(.text+0x94a): undefined reference to `hb_font_funcs_set_glyph_contour_point_func'
/usr/bin/ld: xetex-XeTeXFontInst.cpp:(.text+0x961): undefined reference to `hb_font_funcs_set_glyph_name_func'
/usr/bin/ld: ../../build/layout/xetex-XeTeXFontInst.o: in function `XeTeXFontInst::getFontTable(unsigned int) const':
xetex-XeTeXFontInst.cpp:(.text+0xacf): undefined reference to `FT_Load_Sfnt_Table'
/usr/bin/ld: xetex-XeTeXFontInst.cpp:(.text+0xafb): undefined reference to `FT_Load_Sfnt_Table'
/usr/bin/ld: ../../build/layout/xetex-XeTeXFontInst.o: in function `XeTeXFontInst::getGlyphBounds(unsigned short, GlyphBBox*)':
xetex-XeTeXFontInst.cpp:(.text+0xb84): undefined reference to `FT_Load_Glyph'
/usr/bin/ld: xetex-XeTeXFontInst.cpp:(.text+0xbc1): undefined reference to `FT_Get_Glyph'
/usr/bin/ld: xetex-XeTeXFontInst.cpp:(.text+0xbd6): undefined reference to `FT_Glyph_Get_CBox'
/usr/bin/ld: xetex-XeTeXFontInst.cpp:(.text+0xc50): undefined reference to `FT_Done_Glyph'
/usr/bin/ld: ../../build/layout/xetex-XeTeXFontInst.o: in function `XeTeXFontInst::mapCharToGlyph(int) const':
xetex-XeTeXFontInst.cpp:(.text+0xc70): undefined reference to `FT_Get_Char_Index'
/usr/bin/ld: ../../build/layout/xetex-XeTeXFontInst.o: in function `XeTeXFontInst::getGlyphWidth(unsigned short)':
xetex-XeTeXFontInst.cpp:(.text+0xcbc): undefined reference to `FT_Get_Advance'
/usr/bin/ld: ../../build/layout/xetex-XeTeXFontInst.o: in function `XeTeXFontInst::mapGlyphToIndex(char const*) const':
xetex-XeTeXFontInst.cpp:(.text+0xe9d): undefined reference to `FT_Get_Name_Index'
/usr/bin/ld: ../../build/layout/xetex-XeTeXFontInst.o: in function `XeTeXFontInst::getGlyphName(unsigned short, int&)':
xetex-XeTeXFontInst.cpp:(.text+0xeda): undefined reference to `FT_Get_Glyph_Name'
/usr/bin/ld: ../../build/layout/xetex-XeTeXFontInst.o: in function `XeTeXFontInst::getFirstCharCode()':
xetex-XeTeXFontInst.cpp:(.text+0xf32): undefined reference to `FT_Get_First_Char'
/usr/bin/ld: ../../build/layout/xetex-XeTeXFontInst.o: in function `XeTeXFontInst::getLastCharCode()':
xetex-XeTeXFontInst.cpp:(.text+0xf7c): undefined reference to `FT_Get_First_Char'
/usr/bin/ld: xetex-XeTeXFontInst.cpp:(.text+0xf9c): undefined reference to `FT_Get_Next_Char'
/usr/bin/ld: ../../build/layout/xetex-XeTeXFontInst.o: in function `XeTeXFontInst::initialize(char const*, int, int&)':
xetex-XeTeXFontInst.cpp:(.text+0x69d): undefined reference to `hb_font_set_ppem'
/usr/bin/ld: ../../build/layout/xetex-XeTeXFontInst.o: in function `XeTeXFontInst::getFontTable(FT_Sfnt_Tag_) const':
xetex-XeTeXFontInst.cpp:(.text+0xb49): undefined reference to `FT_Get_Sfnt_Table'
/usr/bin/ld: ../../build/layout/xetex-XeTeXFontMgr.o: in function `XeTeXFontMgr::getOpSize(XeTeXFont_rec*)':
xetex-XeTeXFontMgr.cpp:(.text+0x9e8): undefined reference to `hb_font_get_face'
/usr/bin/ld: xetex-XeTeXFontMgr.cpp:(.text+0xa17): undefined reference to `hb_ot_layout_get_size_params'
/usr/bin/ld: ../../build/layout/xetex-XeTeXFontMgr_FC.o: in function `convertToUtf8(UConverter*, unsigned char const*, int)':
xetex-XeTeXFontMgr_FC.cpp:(.text+0x6f): undefined reference to `ucnv_toUChars_74'
/usr/bin/ld: xetex-XeTeXFontMgr_FC.cpp:(.text+0x8c): undefined reference to `ucnv_fromUChars_74'
/usr/bin/ld: xetex-XeTeXFontMgr_FC.cpp:(.text+0xe6): undefined reference to `ucnv_toUChars_74'
/usr/bin/ld: xetex-XeTeXFontMgr_FC.cpp:(.text+0x103): undefined reference to `ucnv_fromUChars_74'
/usr/bin/ld: ../../build/layout/xetex-XeTeXFontMgr_FC.o: in function `XeTeXFontMgr_FC::initialize()':
xetex-XeTeXFontMgr_FC.cpp:(.text+0x140): undefined reference to `FcInit'
/usr/bin/ld: xetex-XeTeXFontMgr_FC.cpp:(.text+0x172): undefined reference to `ucnv_open_74'
/usr/bin/ld: xetex-XeTeXFontMgr_FC.cpp:(.text+0x1a3): undefined reference to `ucnv_open_74'
/usr/bin/ld: xetex-XeTeXFontMgr_FC.cpp:(.text+0x1b9): undefined reference to `ucnv_open_74'
/usr/bin/ld: xetex-XeTeXFontMgr_FC.cpp:(.text+0x1d8): undefined reference to `FcNameParse'
/usr/bin/ld: xetex-XeTeXFontMgr_FC.cpp:(.text+0x226): undefined reference to `FcObjectSetBuild'
/usr/bin/ld: xetex-XeTeXFontMgr_FC.cpp:(.text+0x232): undefined reference to `FcConfigGetCurrent'
/usr/bin/ld: xetex-XeTeXFontMgr_FC.cpp:(.text+0x240): undefined reference to `FcFontList'
/usr/bin/ld: xetex-XeTeXFontMgr_FC.cpp:(.text+0x24f): undefined reference to `FcObjectSetDestroy'
/usr/bin/ld: xetex-XeTeXFontMgr_FC.cpp:(.text+0x257): undefined reference to `FcPatternDestroy'
/usr/bin/ld: xetex-XeTeXFontMgr_FC.cpp:(.text+0x288): undefined reference to `FT_Init_FreeType'
/usr/bin/ld: ../../build/layout/xetex-XeTeXFontMgr_FC.o: in function `XeTeXFontMgr_FC::terminate()':
xetex-XeTeXFontMgr_FC.cpp:(.text+0x315): undefined reference to `FcFontSetDestroy'
/usr/bin/ld: xetex-XeTeXFontMgr_FC.cpp:(.text+0x331): undefined reference to `ucnv_close_74'
/usr/bin/ld: xetex-XeTeXFontMgr_FC.cpp:(.text+0x34d): undefined reference to `ucnv_close_74'
/usr/bin/ld: xetex-XeTeXFontMgr_FC.cpp:(.text+0x369): undefined reference to `ucnv_close_74'
/usr/bin/ld: ../../build/layout/xetex-XeTeXFontMgr_FC.o: in function `XeTeXFontMgr_FC::getOpSizeRecAndStyleFlags(XeTeXFontMgr::Font*)':
xetex-XeTeXFontMgr_FC.cpp:(.text+0x3e1): undefined reference to `FcPatternGetInteger'
/usr/bin/ld: xetex-XeTeXFontMgr_FC.cpp:(.text+0x401): undefined reference to `FcPatternGetInteger'
/usr/bin/ld: xetex-XeTeXFontMgr_FC.cpp:(.text+0x421): undefined reference to `FcPatternGetInteger'
/usr/bin/ld: ../../build/layout/xetex-XeTeXFontMgr_FC.o: in function `XeTeXFontMgr_FC::getPlatformFontDesc[abi:cxx11](_FcPattern*) const':
xetex-XeTeXFontMgr_FC.cpp:(.text+0x532): undefined reference to `FcPatternGetString'
/usr/bin/ld: ../../build/layout/xetex-XeTeXFontMgr_FC.o: in function `XeTeXFontMgr_FC::cacheFamilyMembers(std::__cxx11::list<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > const&) [clone .part.0]':
xetex-XeTeXFontMgr_FC.cpp:(.text+0x667): undefined reference to `FcPatternGetString'
/usr/bin/ld: ../../build/layout/xetex-XeTeXFontMgr_FC.o: in function `XeTeXFontMgr_FC::searchForHostPlatformFonts(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)':
xetex-XeTeXFontMgr_FC.cpp:(.text+0xb75): undefined reference to `FcPatternGetString'
/usr/bin/ld: xetex-XeTeXFontMgr_FC.cpp:(.text+0xd24): undefined reference to `FcPatternGetString'
/usr/bin/ld: xetex-XeTeXFontMgr_FC.cpp:(.text+0xdad): undefined reference to `FcPatternGetString'
/usr/bin/ld: ../../build/layout/xetex-XeTeXFontMgr_FC.o:xetex-XeTeXFontMgr_FC.cpp:(.text+0x156a): more undefined references to `FcPatternGetString' follow
/usr/bin/ld: ../../build/layout/xetex-XeTeXFontMgr_FC.o: in function `XeTeXFontMgr_FC::readNames(_FcPattern*)':
xetex-XeTeXFontMgr_FC.cpp:(.text+0x15b2): undefined reference to `FcPatternGetInteger'
/usr/bin/ld: xetex-XeTeXFontMgr_FC.cpp:(.text+0x15d4): undefined reference to `FT_New_Face'
/usr/bin/ld: xetex-XeTeXFontMgr_FC.cpp:(.text+0x15e5): undefined reference to `FT_Get_Postscript_Name'
/usr/bin/ld: xetex-XeTeXFontMgr_FC.cpp:(.text+0x1681): undefined reference to `FT_Get_Sfnt_Name'
/usr/bin/ld: xetex-XeTeXFontMgr_FC.cpp:(.text+0x1702): undefined reference to `FT_Get_Sfnt_Name_Count'
/usr/bin/ld: xetex-XeTeXFontMgr_FC.cpp:(.text+0x17fb): undefined reference to `FcPatternGetString'
/usr/bin/ld: xetex-XeTeXFontMgr_FC.cpp:(.text+0x1839): undefined reference to `FcPatternGetString'
/usr/bin/ld: xetex-XeTeXFontMgr_FC.cpp:(.text+0x1876): undefined reference to `FcPatternGetString'
/usr/bin/ld: xetex-XeTeXFontMgr_FC.cpp:(.text+0x188f): undefined reference to `FT_Done_Face'
/usr/bin/ld: ../../build/layout/xetex-XeTeXLayoutInterface.o: in function `getLargerScriptListTable(XeTeXFont_rec*, unsigned int**)':
xetex-XeTeXLayoutInterface.cpp:(.text+0x22): undefined reference to `hb_font_get_face'
/usr/bin/ld: xetex-XeTeXLayoutInterface.cpp:(.text+0x39): undefined reference to `hb_ot_layout_table_get_script_tags'
/usr/bin/ld: xetex-XeTeXLayoutInterface.cpp:(.text+0x60): undefined reference to `hb_ot_layout_table_get_script_tags'
/usr/bin/ld: xetex-XeTeXLayoutInterface.cpp:(.text+0x74): undefined reference to `hb_ot_layout_table_get_script_tags'
/usr/bin/ld: xetex-XeTeXLayoutInterface.cpp:(.text+0x9e): undefined reference to `hb_ot_layout_table_get_script_tags'
/usr/bin/ld: ../../build/layout/xetex-XeTeXLayoutInterface.o: in function `countLanguages':
xetex-XeTeXLayoutInterface.cpp:(.text+0x6b6): undefined reference to `hb_font_get_face'
/usr/bin/ld: xetex-XeTeXLayoutInterface.cpp:(.text+0x701): undefined reference to `hb_ot_layout_script_get_language_tags'
/usr/bin/ld: xetex-XeTeXLayoutInterface.cpp:(.text+0x71b): undefined reference to `hb_ot_layout_script_get_language_tags'
/usr/bin/ld: ../../build/layout/xetex-XeTeXLayoutInterface.o: in function `getIndLanguage':
xetex-XeTeXLayoutInterface.cpp:(.text+0x780): undefined reference to `hb_font_get_face'
/usr/bin/ld: xetex-XeTeXLayoutInterface.cpp:(.text+0x7e7): undefined reference to `hb_ot_layout_script_get_language_tags'
/usr/bin/ld: xetex-XeTeXLayoutInterface.cpp:(.text+0x816): undefined reference to `hb_ot_layout_script_get_language_tags'
/usr/bin/ld: xetex-XeTeXLayoutInterface.cpp:(.text+0x849): undefined reference to `hb_ot_layout_script_get_language_tags'
/usr/bin/ld: xetex-XeTeXLayoutInterface.cpp:(.text+0x878): undefined reference to `hb_ot_layout_script_get_language_tags'
/usr/bin/ld: ../../build/layout/xetex-XeTeXLayoutInterface.o: in function `countFeatures':
xetex-XeTeXLayoutInterface.cpp:(.text+0x915): undefined reference to `hb_font_get_face'
/usr/bin/ld: xetex-XeTeXLayoutInterface.cpp:(.text+0x932): undefined reference to `hb_ot_layout_table_find_script'
/usr/bin/ld: xetex-XeTeXLayoutInterface.cpp:(.text+0x960): undefined reference to `hb_ot_layout_table_find_script'
/usr/bin/ld: xetex-XeTeXLayoutInterface.cpp:(.text+0x982): undefined reference to `hb_ot_layout_script_select_language'
/usr/bin/ld: xetex-XeTeXLayoutInterface.cpp:(.text+0x9ad): undefined reference to `hb_ot_layout_language_get_feature_tags'
/usr/bin/ld: ../../build/layout/xetex-XeTeXLayoutInterface.o: in function `getIndFeature':
xetex-XeTeXLayoutInterface.cpp:(.text+0xa35): undefined reference to `hb_font_get_face'
/usr/bin/ld: xetex-XeTeXLayoutInterface.cpp:(.text+0xa52): undefined reference to `hb_ot_layout_table_find_script'
/usr/bin/ld: xetex-XeTeXLayoutInterface.cpp:(.text+0xa7c): undefined reference to `hb_ot_layout_table_find_script'
/usr/bin/ld: xetex-XeTeXLayoutInterface.cpp:(.text+0xada): undefined reference to `hb_ot_layout_script_select_language'
/usr/bin/ld: xetex-XeTeXLayoutInterface.cpp:(.text+0xb05): undefined reference to `hb_ot_layout_language_get_feature_tags'
/usr/bin/ld: xetex-XeTeXLayoutInterface.cpp:(.text+0xb39): undefined reference to `hb_ot_layout_language_get_feature_tags'
/usr/bin/ld: ../../build/layout/xetex-XeTeXLayoutInterface.o: in function `countGraphiteFeatures':
xetex-XeTeXLayoutInterface.cpp:(.text+0xb80): undefined reference to `hb_font_get_face'
/usr/bin/ld: xetex-XeTeXLayoutInterface.cpp:(.text+0xb88): undefined reference to `hb_graphite2_face_get_gr_face'
/usr/bin/ld: xetex-XeTeXLayoutInterface.cpp:(.text+0xb97): undefined reference to `gr_face_n_fref'
/usr/bin/ld: ../../build/layout/xetex-XeTeXLayoutInterface.o: in function `getGraphiteFeatureCode':
xetex-XeTeXLayoutInterface.cpp:(.text+0xbbf): undefined reference to `hb_font_get_face'
/usr/bin/ld: xetex-XeTeXLayoutInterface.cpp:(.text+0xbc7): undefined reference to `hb_graphite2_face_get_gr_face'
/usr/bin/ld: xetex-XeTeXLayoutInterface.cpp:(.text+0xbd7): undefined reference to `gr_face_fref'
/usr/bin/ld: ../../build/layout/xetex-XeTeXLayoutInterface.o: in function `countGraphiteFeatureSettings':
xetex-XeTeXLayoutInterface.cpp:(.text+0xbff): undefined reference to `hb_font_get_face'
/usr/bin/ld: xetex-XeTeXLayoutInterface.cpp:(.text+0xc07): undefined reference to `hb_graphite2_face_get_gr_face'
/usr/bin/ld: xetex-XeTeXLayoutInterface.cpp:(.text+0xc18): undefined reference to `gr_face_find_fref'
/usr/bin/ld: xetex-XeTeXLayoutInterface.cpp:(.text+0xc20): undefined reference to `gr_fref_n_values'
/usr/bin/ld: ../../build/layout/xetex-XeTeXLayoutInterface.o: in function `getGraphiteFeatureSettingCode':
xetex-XeTeXLayoutInterface.cpp:(.text+0xc46): undefined reference to `hb_font_get_face'
/usr/bin/ld: xetex-XeTeXLayoutInterface.cpp:(.text+0xc4e): undefined reference to `hb_graphite2_face_get_gr_face'
/usr/bin/ld: xetex-XeTeXLayoutInterface.cpp:(.text+0xc5f): undefined reference to `gr_face_find_fref'
/usr/bin/ld: xetex-XeTeXLayoutInterface.cpp:(.text+0xc6a): undefined reference to `gr_fref_value'
/usr/bin/ld: ../../build/layout/xetex-XeTeXLayoutInterface.o: in function `tag_from_lang(hb_language_impl_t const*)':
xetex-XeTeXLayoutInterface.cpp:(.text+0xc86): undefined reference to `hb_language_to_string'
/usr/bin/ld: ../../build/layout/xetex-XeTeXLayoutInterface.o: in function `getGraphiteFeatureDefaultSetting':
xetex-XeTeXLayoutInterface.cpp:(.text+0xcc6): undefined reference to `hb_font_get_face'
/usr/bin/ld: xetex-XeTeXLayoutInterface.cpp:(.text+0xcce): undefined reference to `hb_graphite2_face_get_gr_face'
/usr/bin/ld: xetex-XeTeXLayoutInterface.cpp:(.text+0xce3): undefined reference to `gr_face_find_fref'
/usr/bin/ld: xetex-XeTeXLayoutInterface.cpp:(.text+0xcef): undefined reference to `hb_language_to_string'
/usr/bin/ld: xetex-XeTeXLayoutInterface.cpp:(.text+0xd0b): undefined reference to `hb_tag_from_string'
/usr/bin/ld: xetex-XeTeXLayoutInterface.cpp:(.text+0xd15): undefined reference to `gr_face_featureval_for_lang'
/usr/bin/ld: xetex-XeTeXLayoutInterface.cpp:(.text+0xd20): undefined reference to `gr_fref_feature_value'
/usr/bin/ld: ../../build/layout/xetex-XeTeXLayoutInterface.o: in function `getGraphiteFeatureLabel':
xetex-XeTeXLayoutInterface.cpp:(.text+0xd51): undefined reference to `hb_font_get_face'
/usr/bin/ld: xetex-XeTeXLayoutInterface.cpp:(.text+0xd59): undefined reference to `hb_graphite2_face_get_gr_face'
/usr/bin/ld: xetex-XeTeXLayoutInterface.cpp:(.text+0xd68): undefined reference to `gr_face_find_fref'
/usr/bin/ld: xetex-XeTeXLayoutInterface.cpp:(.text+0xd91): undefined reference to `gr_fref_label'
/usr/bin/ld: ../../build/layout/xetex-XeTeXLayoutInterface.o: in function `getGraphiteFeatureSettingLabel':
xetex-XeTeXLayoutInterface.cpp:(.text+0xdd7): undefined reference to `hb_font_get_face'
/usr/bin/ld: xetex-XeTeXLayoutInterface.cpp:(.text+0xddf): undefined reference to `hb_graphite2_face_get_gr_face'
/usr/bin/ld: xetex-XeTeXLayoutInterface.cpp:(.text+0xdf0): undefined reference to `gr_face_find_fref'
/usr/bin/ld: xetex-XeTeXLayoutInterface.cpp:(.text+0xe06): undefined reference to `gr_fref_value'
/usr/bin/ld: xetex-XeTeXLayoutInterface.cpp:(.text+0xe17): undefined reference to `gr_fref_n_values'
/usr/bin/ld: xetex-XeTeXLayoutInterface.cpp:(.text+0xe67): undefined reference to `gr_fref_value_label'
/usr/bin/ld: ../../build/layout/xetex-XeTeXLayoutInterface.o: in function `findGraphiteFeatureNamed':
xetex-XeTeXLayoutInterface.cpp:(.text+0xeaf): undefined reference to `hb_font_get_face'
/usr/bin/ld: xetex-XeTeXLayoutInterface.cpp:(.text+0xeb7): undefined reference to `hb_graphite2_face_get_gr_face'
/usr/bin/ld: xetex-XeTeXLayoutInterface.cpp:(.text+0xed2): undefined reference to `hb_tag_from_string'
/usr/bin/ld: xetex-XeTeXLayoutInterface.cpp:(.text+0xeef): undefined reference to `gr_face_fref'
/usr/bin/ld: xetex-XeTeXLayoutInterface.cpp:(.text+0xf1b): undefined reference to `gr_fref_label'
/usr/bin/ld: xetex-XeTeXLayoutInterface.cpp:(.text+0xf26): undefined reference to `gr_fref_id'
/usr/bin/ld: xetex-XeTeXLayoutInterface.cpp:(.text+0xf4a): undefined reference to `gr_label_destroy'
/usr/bin/ld: xetex-XeTeXLayoutInterface.cpp:(.text+0xf52): undefined reference to `gr_face_n_fref'
/usr/bin/ld: xetex-XeTeXLayoutInterface.cpp:(.text+0xf74): undefined reference to `gr_fref_id'
/usr/bin/ld: xetex-XeTeXLayoutInterface.cpp:(.text+0xf7e): undefined reference to `gr_label_destroy'
/usr/bin/ld: ../../build/layout/xetex-XeTeXLayoutInterface.o: in function `findGraphiteFeatureSettingNamed':
xetex-XeTeXLayoutInterface.cpp:(.text+0xfe0): undefined reference to `hb_font_get_face'
/usr/bin/ld: xetex-XeTeXLayoutInterface.cpp:(.text+0xfe8): undefined reference to `hb_graphite2_face_get_gr_face'
/usr/bin/ld: xetex-XeTeXLayoutInterface.cpp:(.text+0xfff): undefined reference to `hb_tag_from_string'
/usr/bin/ld: xetex-XeTeXLayoutInterface.cpp:(.text+0x100e): undefined reference to `gr_face_find_fref'
/usr/bin/ld: xetex-XeTeXLayoutInterface.cpp:(.text+0x104f): undefined reference to `gr_fref_value_label'
/usr/bin/ld: xetex-XeTeXLayoutInterface.cpp:(.text+0x105a): undefined reference to `gr_fref_id'
/usr/bin/ld: xetex-XeTeXLayoutInterface.cpp:(.text+0x107c): undefined reference to `gr_label_destroy'
/usr/bin/ld: xetex-XeTeXLayoutInterface.cpp:(.text+0x1084): undefined reference to `gr_fref_n_values'
/usr/bin/ld: xetex-XeTeXLayoutInterface.cpp:(.text+0x10a6): undefined reference to `gr_fref_value'
/usr/bin/ld: xetex-XeTeXLayoutInterface.cpp:(.text+0x10b2): undefined reference to `gr_label_destroy'
/usr/bin/ld: ../../build/layout/xetex-XeTeXLayoutInterface.o: in function `createLayoutEngine':
xetex-XeTeXLayoutInterface.cpp:(.text+0x12bb): undefined reference to `hb_buffer_create'
/usr/bin/ld: xetex-XeTeXLayoutInterface.cpp:(.text+0x12da): undefined reference to `hb_tag_from_string'
/usr/bin/ld: xetex-XeTeXLayoutInterface.cpp:(.text+0x12e1): undefined reference to `hb_ot_tag_to_language'
/usr/bin/ld: xetex-XeTeXLayoutInterface.cpp:(.text+0x1309): undefined reference to `hb_language_from_string'
/usr/bin/ld: ../../build/layout/xetex-XeTeXLayoutInterface.o: in function `deleteLayoutEngine':
xetex-XeTeXLayoutInterface.cpp:(.text+0x131d): undefined reference to `hb_buffer_destroy'
/usr/bin/ld: ../../build/layout/xetex-XeTeXLayoutInterface.o: in function `layoutChars':
xetex-XeTeXLayoutInterface.cpp:(.text+0x13b6): undefined reference to `hb_font_get_face'
/usr/bin/ld: xetex-XeTeXLayoutInterface.cpp:(.text+0x13d3): undefined reference to `hb_ot_tag_to_script'
/usr/bin/ld: xetex-XeTeXLayoutInterface.cpp:(.text+0x13e0): undefined reference to `hb_buffer_reset'
/usr/bin/ld: xetex-XeTeXLayoutInterface.cpp:(.text+0x13fd): undefined reference to `hb_buffer_add_utf16'
/usr/bin/ld: xetex-XeTeXLayoutInterface.cpp:(.text+0x1408): undefined reference to `hb_buffer_set_direction'
/usr/bin/ld: xetex-XeTeXLayoutInterface.cpp:(.text+0x1415): undefined reference to `hb_buffer_set_script'
/usr/bin/ld: xetex-XeTeXLayoutInterface.cpp:(.text+0x1422): undefined reference to `hb_buffer_set_language'
/usr/bin/ld: xetex-XeTeXLayoutInterface.cpp:(.text+0x142b): undefined reference to `hb_buffer_guess_segment_properties'
/usr/bin/ld: xetex-XeTeXLayoutInterface.cpp:(.text+0x1437): undefined reference to `hb_buffer_get_segment_properties'
/usr/bin/ld: xetex-XeTeXLayoutInterface.cpp:(.text+0x1457): undefined reference to `hb_shape_plan_create_cached'
/usr/bin/ld: xetex-XeTeXLayoutInterface.cpp:(.text+0x1471): undefined reference to `hb_shape_plan_execute'
/usr/bin/ld: xetex-XeTeXLayoutInterface.cpp:(.text+0x1497): undefined reference to `hb_shape_plan_destroy'
/usr/bin/ld: xetex-XeTeXLayoutInterface.cpp:(.text+0x14ad): undefined reference to `hb_shape_plan_create'
/usr/bin/ld: xetex-XeTeXLayoutInterface.cpp:(.text+0x14c7): undefined reference to `hb_shape_plan_execute'
/usr/bin/ld: xetex-XeTeXLayoutInterface.cpp:(.text+0x14d7): undefined reference to `hb_shape_plan_get_shaper'
/usr/bin/ld: xetex-XeTeXLayoutInterface.cpp:(.text+0x14f1): undefined reference to `hb_buffer_set_content_type'
/usr/bin/ld: xetex-XeTeXLayoutInterface.cpp:(.text+0x14f9): undefined reference to `hb_shape_plan_destroy'
/usr/bin/ld: xetex-XeTeXLayoutInterface.cpp:(.text+0x1502): undefined reference to `hb_buffer_get_length'
/usr/bin/ld: ../../build/layout/xetex-XeTeXLayoutInterface.o: in function `getGlyphs':
xetex-XeTeXLayoutInterface.cpp:(.text+0x1593): undefined reference to `hb_buffer_get_length'
/usr/bin/ld: xetex-XeTeXLayoutInterface.cpp:(.text+0x15a1): undefined reference to `hb_buffer_get_glyph_infos'
/usr/bin/ld: ../../build/layout/xetex-XeTeXLayoutInterface.o: in function `getGlyphAdvances':
xetex-XeTeXLayoutInterface.cpp:(.text+0x15f3): undefined reference to `hb_buffer_get_length'
/usr/bin/ld: xetex-XeTeXLayoutInterface.cpp:(.text+0x1601): undefined reference to `hb_buffer_get_glyph_positions'
/usr/bin/ld: ../../build/layout/xetex-XeTeXLayoutInterface.o: in function `getGlyphPositions':
xetex-XeTeXLayoutInterface.cpp:(.text+0x16b3): undefined reference to `hb_buffer_get_length'
/usr/bin/ld: xetex-XeTeXLayoutInterface.cpp:(.text+0x16c1): undefined reference to `hb_buffer_get_glyph_positions'
/usr/bin/ld: ../../build/layout/xetex-XeTeXLayoutInterface.o: in function `getDefaultDirection':
xetex-XeTeXLayoutInterface.cpp:(.text+0x195d): undefined reference to `hb_buffer_get_script'
/usr/bin/ld: xetex-XeTeXLayoutInterface.cpp:(.text+0x1964): undefined reference to `hb_script_get_horizontal_direction'
/usr/bin/ld: ../../build/layout/xetex-XeTeXLayoutInterface.o: in function `initGraphiteBreaking':
xetex-XeTeXLayoutInterface.cpp:(.text+0x1b58): undefined reference to `hb_font_get_face'
/usr/bin/ld: xetex-XeTeXLayoutInterface.cpp:(.text+0x1b60): undefined reference to `hb_graphite2_face_get_gr_face'
/usr/bin/ld: xetex-XeTeXLayoutInterface.cpp:(.text+0x1b6b): undefined reference to `hb_font_get_ptem'
/usr/bin/ld: xetex-XeTeXLayoutInterface.cpp:(.text+0x1b73): undefined reference to `gr_make_font'
/usr/bin/ld: xetex-XeTeXLayoutInterface.cpp:(.text+0x1bb5): undefined reference to `gr_seg_destroy'
/usr/bin/ld: xetex-XeTeXLayoutInterface.cpp:(.text+0x1bd4): undefined reference to `hb_language_to_string'
/usr/bin/ld: xetex-XeTeXLayoutInterface.cpp:(.text+0x1bf0): undefined reference to `hb_tag_from_string'
/usr/bin/ld: xetex-XeTeXLayoutInterface.cpp:(.text+0x1bfa): undefined reference to `gr_face_featureval_for_lang'
/usr/bin/ld: xetex-XeTeXLayoutInterface.cpp:(.text+0x1c1f): undefined reference to `gr_face_find_fref'
/usr/bin/ld: xetex-XeTeXLayoutInterface.cpp:(.text+0x1c34): undefined reference to `gr_fref_set_feature_value'
/usr/bin/ld: xetex-XeTeXLayoutInterface.cpp:(.text+0x1c64): undefined reference to `gr_make_seg'
/usr/bin/ld: xetex-XeTeXLayoutInterface.cpp:(.text+0x1c75): undefined reference to `gr_seg_first_slot'
/usr/bin/ld: ../../build/layout/xetex-XeTeXLayoutInterface.o: in function `findNextGraphiteBreak':
xetex-XeTeXLayoutInterface.cpp:(.text+0x1cb9): undefined reference to `gr_seg_last_slot'
/usr/bin/ld: xetex-XeTeXLayoutInterface.cpp:(.text+0x1cce): undefined reference to `gr_slot_next_in_segment'
/usr/bin/ld: xetex-XeTeXLayoutInterface.cpp:(.text+0x1cec): undefined reference to `gr_slot_next_in_segment'
/usr/bin/ld: xetex-XeTeXLayoutInterface.cpp:(.text+0x1cfc): undefined reference to `gr_slot_index'
/usr/bin/ld: xetex-XeTeXLayoutInterface.cpp:(.text+0x1d0a): undefined reference to `gr_seg_cinfo'
/usr/bin/ld: xetex-XeTeXLayoutInterface.cpp:(.text+0x1d15): undefined reference to `gr_cinfo_break_weight'
/usr/bin/ld: xetex-XeTeXLayoutInterface.cpp:(.text+0x1d29): undefined reference to `gr_cinfo_base'
/usr/bin/ld: xetex-XeTeXLayoutInterface.cpp:(.text+0x1d44): undefined reference to `gr_slot_next_in_segment'
/usr/bin/ld: xetex-XeTeXLayoutInterface.cpp:(.text+0x1d53): undefined reference to `gr_cinfo_base'
/usr/bin/ld: xetex-XeTeXLayoutInterface.cpp:(.text+0x1d68): undefined reference to `gr_seg_last_slot'
/usr/bin/ld: ../../build/layout/xetex-XeTeXLayoutInterface.o: in function `isOpenTypeMathFont':
xetex-XeTeXLayoutInterface.cpp:(.text+0x1e20): undefined reference to `hb_font_get_face'
/usr/bin/ld: xetex-XeTeXLayoutInterface.cpp:(.text+0x1e28): undefined reference to `hb_ot_math_has_data'
/usr/bin/ld: ../../build/layout/xetex-XeTeXLayoutInterface.o: in function `createFont':
xetex-XeTeXLayoutInterface.cpp:(.text+0x21ef): undefined reference to `FcPatternGetString'
/usr/bin/ld: xetex-XeTeXLayoutInterface.cpp:(.text+0x2205): undefined reference to `FcPatternGetInteger'
/usr/bin/ld: ../../build/layout/xetex-XeTeXLayoutInterface.o: in function `getGraphiteFeatureCode':
xetex-XeTeXLayoutInterface.cpp:(.text+0xbe0): undefined reference to `gr_fref_id'
/usr/bin/ld: ../../build/layout/xetex-XeTeXLayoutInterface.o: in function `tag_from_lang(hb_language_impl_t const*)':
xetex-XeTeXLayoutInterface.cpp:(.text+0xca1): undefined reference to `hb_tag_from_string'
/usr/bin/ld: ../../build/main/zlib_md5.o: in function `tectonic_flate_new_decompressor':
zlib_md5.c:(.text+0x1100): undefined reference to `inflateInit_'
/usr/bin/ld: ../../build/main/zlib_md5.o: in function `tectonic_flate_decompress_chunk':
zlib_md5.c:(.text+0x114d): undefined reference to `inflate'
/usr/bin/ld: ../../build/main/zlib_md5.o: in function `tectonic_flate_free_decompressor':
zlib_md5.c:(.text+0x1179): undefined reference to `inflateEnd'
/usr/bin/ld: ../../build/main/zlib_md5.o: in function `tectonic_flate_decompress':
zlib_md5.c:(.text+0x10c5): undefined reference to `uncompress'
/usr/bin/ld: ../../build/engine/xetex-ext.o: in function `linebreak_start':
xetex-ext.c:(.text+0x222): undefined reference to `ubrk_close_74'
/usr/bin/ld: xetex-ext.c:(.text+0x246): undefined reference to `ubrk_open_74'
/usr/bin/ld: xetex-ext.c:(.text+0x29f): undefined reference to `ubrk_setText_74'
/usr/bin/ld: xetex-ext.c:(.text+0x3c9): undefined reference to `ubrk_close_74'
/usr/bin/ld: xetex-ext.c:(.text+0x3e9): undefined reference to `ubrk_open_74'
/usr/bin/ld: ../../build/engine/xetex-ext.o: in function `get_encoding_mode_and_info':
xetex-ext.c:(.text+0x505): undefined reference to `ucnv_open_74'
/usr/bin/ld: xetex-ext.c:(.text+0x512): undefined reference to `ucnv_close_74'
/usr/bin/ld: ../../build/engine/xetex-ext.o: in function `loadOTfont':
xetex-ext.c:(.text+0xfb1): undefined reference to `hb_tag_from_string'
/usr/bin/ld: xetex-ext.c:(.text+0x13cb): undefined reference to `hb_tag_from_string'
/usr/bin/ld: xetex-ext.c:(.text+0x1471): undefined reference to `hb_tag_from_string'
/usr/bin/ld: ../../build/engine/xetex-ext.o: in function `measure_native_node':
xetex-ext.c:(.text+0x2e31): undefined reference to `ubidi_open_74'
/usr/bin/ld: xetex-ext.c:(.text+0x2e64): undefined reference to `ubidi_setPara_74'
/usr/bin/ld: xetex-ext.c:(.text+0x2e6c): undefined reference to `ubidi_getDirection_74'
/usr/bin/ld: xetex-ext.c:(.text+0x2f78): undefined reference to `ubidi_close_74'
/usr/bin/ld: xetex-ext.c:(.text+0x3269): undefined reference to `ubidi_countRuns_74'
/usr/bin/ld: xetex-ext.c:(.text+0x32c2): undefined reference to `ubidi_getVisualRun_74'
/usr/bin/ld: xetex-ext.c:(.text+0x33fb): undefined reference to `ubidi_getVisualRun_74'
/usr/bin/ld: ../../build/engine/xetex-ext.o: in function `linebreak_next':
xetex-ext.c:(.text+0x421): undefined reference to `ubrk_next_74'
/usr/bin/ld: ../../build/engine/xetex-ext.o: in function `gr_print_font_name':
xetex-ext.c:(.text+0x225c): undefined reference to `gr_label_destroy'
/usr/bin/ld: ../../build/engine/xetex-io.o: in function `set_input_file_encoding':
xetex-io.c:(.text+0x549): undefined reference to `ucnv_open_74'
/usr/bin/ld: xetex-io.c:(.text+0x5a6): undefined reference to `ucnv_close_74'
/usr/bin/ld: ../../build/engine/xetex-io.o: in function `input_line':
xetex-io.c:(.text+0x9c6): undefined reference to `ucnv_toAlgorithmic_74'
/usr/bin/ld: xetex-io.c:(.text+0xc72): undefined reference to `ucnv_toAlgorithmic_74'
/usr/bin/ld: ../../build/engine/xetex-io.o: in function `u_close':
xetex-io.c:(.text+0xea2): undefined reference to `ucnv_close_74'
/usr/bin/ld: ../../build/engine/xetex-io.o: in function `open_or_close_in':
xetex-io.c:(.text+0x1226): undefined reference to `ucnv_close_74'
/usr/bin/ld: ../../build/engine/xetex-XeTeXOTMath.o: in function `get_ot_math_constant':
xetex-XeTeXOTMath.cpp:(.text+0x53): undefined reference to `hb_ot_math_get_constant'
/usr/bin/ld: ../../build/engine/xetex-XeTeXOTMath.o: in function `get_ot_math_variant':
xetex-XeTeXOTMath.cpp:(.text+0x23b): undefined reference to `hb_ot_math_get_glyph_variants'
/usr/bin/ld: ../../build/engine/xetex-XeTeXOTMath.o: in function `get_ot_assembly_ptr':
xetex-XeTeXOTMath.cpp:(.text+0x2eb): undefined reference to `hb_ot_math_get_glyph_assembly'
/usr/bin/ld: xetex-XeTeXOTMath.cpp:(.text+0x331): undefined reference to `hb_ot_math_get_glyph_assembly'
/usr/bin/ld: ../../build/engine/xetex-XeTeXOTMath.o: in function `get_ot_math_ital_corr':
xetex-XeTeXOTMath.cpp:(.text+0x3df): undefined reference to `hb_ot_math_get_glyph_italics_correction'
/usr/bin/ld: ../../build/engine/xetex-XeTeXOTMath.o: in function `get_ot_math_accent_pos':
xetex-XeTeXOTMath.cpp:(.text+0x465): undefined reference to `hb_ot_math_get_glyph_top_accent_attachment'
/usr/bin/ld: ../../build/engine/xetex-XeTeXOTMath.o: in function `ot_min_connector_overlap':
xetex-XeTeXOTMath.cpp:(.text+0x4ec): undefined reference to `hb_ot_math_get_min_connector_overlap'
/usr/bin/ld: ../../build/engine/xetex-XeTeXOTMath.o: in function `get_ot_math_kern':
xetex-XeTeXOTMath.cpp:(.text+0x8fa): undefined reference to `hb_ot_math_get_glyph_kerning'
/usr/bin/ld: xetex-XeTeXOTMath.cpp:(.text+0x943): undefined reference to `hb_ot_math_get_glyph_kerning'
/usr/bin/ld: xetex-XeTeXOTMath.cpp:(.text+0x9b2): undefined reference to `hb_ot_math_get_glyph_kerning'
/usr/bin/ld: xetex-XeTeXOTMath.cpp:(.text+0xa29): undefined reference to `hb_ot_math_get_glyph_kerning'
/usr/bin/ld: xetex-XeTeXOTMath.cpp:(.text+0xa95): undefined reference to `hb_ot_math_get_glyph_kerning'
/usr/bin/ld: ../../build/engine/xetex-XeTeXOTMath.o:xetex-XeTeXOTMath.cpp:(.text+0xadd): more undefined references to `hb_ot_math_get_glyph_kerning' follow
/usr/bin/ld: ../../build/dpx/dpx-pngimage.o: in function `create_ckey_mask':
dpx-pngimage.c:(.text+0x36): undefined reference to `png_get_valid'
/usr/bin/ld: dpx-pngimage.c:(.text+0x58): undefined reference to `png_get_tRNS'
/usr/bin/ld: dpx-pngimage.c:(.text+0x73): undefined reference to `png_get_color_type'
/usr/bin/ld: ../../build/dpx/dpx-pngimage.o: in function `create_cspace_CalRGB':
dpx-pngimage.c:(.text+0xe02): undefined reference to `png_get_valid'
/usr/bin/ld: dpx-pngimage.c:(.text+0xe3f): undefined reference to `png_get_cHRM'
/usr/bin/ld: dpx-pngimage.c:(.text+0xec6): undefined reference to `png_get_valid'
/usr/bin/ld: dpx-pngimage.c:(.text+0xf9c): undefined reference to `png_get_gAMA'
/usr/bin/ld: ../../build/dpx/dpx-pngimage.o: in function `create_cspace_sRGB':
dpx-pngimage.c:(.text+0xff5): undefined reference to `png_get_color_type'
/usr/bin/ld: ../../build/dpx/dpx-pngimage.o: in function `create_cspace_ICCBased':
dpx-pngimage.c:(.text+0x1102): undefined reference to `png_get_valid'
/usr/bin/ld: dpx-pngimage.c:(.text+0x1123): undefined reference to `png_get_iCCP'
/usr/bin/ld: dpx-pngimage.c:(.text+0x1132): undefined reference to `png_get_color_type'
/usr/bin/ld: ../../build/dpx/dpx-pngimage.o: in function `strip_soft_mask':
dpx-pngimage.c:(.text+0x11c3): undefined reference to `png_get_color_type'
/usr/bin/ld: dpx-pngimage.c:(.text+0x11d1): undefined reference to `png_get_bit_depth'
/usr/bin/ld: ../../build/dpx/dpx-pngimage.o: in function `_png_read':
dpx-pngimage.c:(.text+0x1581): undefined reference to `png_get_io_ptr'
/usr/bin/ld: ../../build/dpx/dpx-pngimage.o: in function `check_for_png':
dpx-pngimage.c:(.text+0x1626): undefined reference to `png_sig_cmp'
/usr/bin/ld: ../../build/dpx/dpx-pngimage.o: in function `png_include_image':
dpx-pngimage.c:(.text+0x16a4): undefined reference to `png_create_read_struct'
/usr/bin/ld: dpx-pngimage.c:(.text+0x16ba): undefined reference to `png_create_info_struct'
/usr/bin/ld: dpx-pngimage.c:(.text+0x16dc): undefined reference to `png_set_option'
/usr/bin/ld: dpx-pngimage.c:(.text+0x16f0): undefined reference to `png_set_read_fn'
/usr/bin/ld: dpx-pngimage.c:(.text+0x16ff): undefined reference to `png_read_info'
/usr/bin/ld: dpx-pngimage.c:(.text+0x170e): undefined reference to `png_get_color_type'
/usr/bin/ld: dpx-pngimage.c:(.text+0x1720): undefined reference to `png_get_image_width'
/usr/bin/ld: dpx-pngimage.c:(.text+0x1733): undefined reference to `png_get_image_height'
/usr/bin/ld: dpx-pngimage.c:(.text+0x1744): undefined reference to `png_get_bit_depth'
/usr/bin/ld: dpx-pngimage.c:(.text+0x1768): undefined reference to `png_set_expand_gray_1_2_4_to_8'
/usr/bin/ld: dpx-pngimage.c:(.text+0x1782): undefined reference to `png_get_valid'
/usr/bin/ld: dpx-pngimage.c:(.text+0x179f): undefined reference to `png_get_color_type'
/usr/bin/ld: dpx-pngimage.c:(.text+0x1801): undefined reference to `png_set_background'
/usr/bin/ld: dpx-pngimage.c:(.text+0x1852): undefined reference to `png_read_update_info'
/usr/bin/ld: dpx-pngimage.c:(.text+0x1861): undefined reference to `png_get_rowbytes'
/usr/bin/ld: dpx-pngimage.c:(.text+0x1894): undefined reference to `png_get_x_pixels_per_meter'
/usr/bin/ld: dpx-pngimage.c:(.text+0x18a6): undefined reference to `png_get_y_pixels_per_meter'
/usr/bin/ld: dpx-pngimage.c:(.text+0x1961): undefined reference to `png_read_image'
/usr/bin/ld: dpx-pngimage.c:(.text+0x1985): undefined reference to `png_get_valid'
/usr/bin/ld: dpx-pngimage.c:(.text+0x19a0): undefined reference to `png_get_sRGB'
/usr/bin/ld: dpx-pngimage.c:(.text+0x1a34): undefined reference to `png_get_valid'
/usr/bin/ld: dpx-pngimage.c:(.text+0x1a80): undefined reference to `png_get_valid'
/usr/bin/ld: dpx-pngimage.c:(.text+0x1a9c): undefined reference to `png_get_valid'
/usr/bin/ld: dpx-pngimage.c:(.text+0x1ab8): undefined reference to `png_get_valid'
/usr/bin/ld: dpx-pngimage.c:(.text+0x1ae6): undefined reference to `png_get_gAMA'
/usr/bin/ld: dpx-pngimage.c:(.text+0x1b01): undefined reference to `png_set_gamma'
/usr/bin/ld: dpx-pngimage.c:(.text+0x1b42): undefined reference to `png_set_strip_16'
/usr/bin/ld: dpx-pngimage.c:(.text+0x1b89): undefined reference to `png_set_packing'
/usr/bin/ld: dpx-pngimage.c:(.text+0x1ba8): undefined reference to `png_get_valid'
/usr/bin/ld: dpx-pngimage.c:(.text+0x1ce1): undefined reference to `png_read_end'
/usr/bin/ld: dpx-pngimage.c:(.text+0x1cf8): undefined reference to `png_destroy_info_struct'
/usr/bin/ld: dpx-pngimage.c:(.text+0x1d0e): undefined reference to `png_destroy_read_struct'
/usr/bin/ld: dpx-pngimage.c:(.text+0x1d88): undefined reference to `png_get_valid'
/usr/bin/ld: dpx-pngimage.c:(.text+0x1e86): undefined reference to `png_get_valid'
/usr/bin/ld: dpx-pngimage.c:(.text+0x1ea9): undefined reference to `png_get_PLTE'
/usr/bin/ld: dpx-pngimage.c:(.text+0x1ee4): undefined reference to `png_get_valid'
/usr/bin/ld: dpx-pngimage.c:(.text+0x1ff6): undefined reference to `png_get_valid'
/usr/bin/ld: dpx-pngimage.c:(.text+0x201c): undefined reference to `png_get_tRNS'
/usr/bin/ld: dpx-pngimage.c:(.text+0x202f): undefined reference to `png_get_bit_depth'
/usr/bin/ld: dpx-pngimage.c:(.text+0x2287): undefined reference to `png_get_tRNS'
/usr/bin/ld: dpx-pngimage.c:(.text+0x22d5): undefined reference to `png_get_text'
/usr/bin/ld: dpx-pngimage.c:(.text+0x264c): undefined reference to `png_get_valid'
/usr/bin/ld: dpx-pngimage.c:(.text+0x26b4): undefined reference to `png_get_valid'
/usr/bin/ld: dpx-pngimage.c:(.text+0x270d): undefined reference to `png_get_cHRM'
/usr/bin/ld: dpx-pngimage.c:(.text+0x27b4): undefined reference to `png_get_valid'
/usr/bin/ld: dpx-pngimage.c:(.text+0x2964): undefined reference to `png_get_gAMA'
/usr/bin/ld: dpx-pngimage.c:(.text+0x29f8): undefined reference to `png_destroy_read_struct'
/usr/bin/ld: ../../build/dpx/dpx-pngimage.o: in function `png_get_bbox':
dpx-pngimage.c:(.text+0x2a4b): undefined reference to `png_create_read_struct'
/usr/bin/ld: dpx-pngimage.c:(.text+0x2a61): undefined reference to `png_create_info_struct'
/usr/bin/ld: dpx-pngimage.c:(.text+0x2a83): undefined reference to `png_set_read_fn'
/usr/bin/ld: dpx-pngimage.c:(.text+0x2a92): undefined reference to `png_read_info'
/usr/bin/ld: dpx-pngimage.c:(.text+0x2aa1): undefined reference to `png_get_image_width'
/usr/bin/ld: dpx-pngimage.c:(.text+0x2ab3): undefined reference to `png_get_image_height'
/usr/bin/ld: dpx-pngimage.c:(.text+0x2ac6): undefined reference to `png_get_x_pixels_per_meter'
/usr/bin/ld: dpx-pngimage.c:(.text+0x2ad7): undefined reference to `png_get_y_pixels_per_meter'
/usr/bin/ld: dpx-pngimage.c:(.text+0x2b26): undefined reference to `png_destroy_info_struct'
/usr/bin/ld: dpx-pngimage.c:(.text+0x2b3c): undefined reference to `png_destroy_read_struct'
/usr/bin/ld: dpx-pngimage.c:(.text+0x2ba0): undefined reference to `png_destroy_read_struct'
collect2: error: ld returned 1 exit status
make[2]: *** [Makefile:68: ../../build/texpresso-xetex] Error 1
make[2]: Leaving directory '/home/leanh/texpresso/src/engine'
make[1]: *** [Makefile:62: texpresso-xetex] Error 2
make[1]: Leaving directory '/home/leanh/texpresso'
make: *** [Makefile:2: all] Error 2
tectonic --outfmt fmt test/format.tex
Running TeX ...
warning: accessing absolute path `/dev/null`; build may not be reproducible in other environments
warning: did not produce "format.xdv"; this may mean that your document is empty
Writing `test/format.fmt` (23.32 MiB)
Skipped writing 1 intermediate files (use --keep-intermediates to keep them)
tectonic --outfmt xdv test/simple.tex
Running TeX ...
Rerunning TeX because "simple.aux" changed ...
Writing `test/simple.xdv` (3.24 KiB)
Skipped writing 1 intermediate files (use --keep-intermediates to keep them)
[info] working directory: /home/leanh/texpresso
[info] executable path: /home/leanh/texpresso/build/texpresso
[info] document path: /home/leanh/texpresso/test
[info] document name: simple.tex
texpresso logo: 512x512
[info] engine path: texpresso-xetex
[dvi] loading pdftex.map (kind RES_MAP)
trying tectonic -X bundle cat pdftex.map
note: "version 2" Tectonic command-line interface activated
note: not in a document workspace; using the built-in default bundle
success (length: 4408061)
[dvi] loading kanjix.map (kind RES_MAP)
trying tectonic -X bundle cat kanjix.map
note: "version 2" Tectonic command-line interface activated
note: not in a document workspace; using the built-in default bundle
success (length: 11946)
[dvi] loading ckx.map (kind RES_MAP)
trying tectonic -X bundle cat ckx.map
note: "version 2" Tectonic command-line interface activated
note: not in a document workspace; using the built-in default bundle
success (length: 1289)
[process] launched pid 1446 (using texpresso-xetex)
leanh@DESKTOP-EAEGDAK:~/texpresso$

leanhdung1994 avatar Jul 26 '25 07:07 leanhdung1994

I see, the issue should be with some package missing, have you have harfbuzz on your system?

merv1n34k avatar Jul 26 '25 08:07 merv1n34k

It seems my system does not have harfbuzz :

leanh@DESKTOP-EAEGDAK:~$ apt list harfbuzz
Listing... Done

leanhdung1994 avatar Jul 26 '25 08:07 leanhdung1994

Then its the problem (most likely) run sudo apt update && sudo apt install harfbuzz

merv1n34k avatar Jul 26 '25 08:07 merv1n34k

I got the error E: Unable to locate package harfbuzz. The full output is

leanh@DESKTOP-EAEGDAK:~$ sudo apt update && sudo apt install harfbuzz
Hit:1 http://archive.ubuntu.com/ubuntu noble InRelease
Get:2 http://archive.ubuntu.com/ubuntu noble-updates InRelease [126 kB]
Hit:3 http://archive.ubuntu.com/ubuntu noble-backports InRelease
Hit:4 http://security.ubuntu.com/ubuntu noble-security InRelease
Fetched 126 kB in 0s (305 kB/s)
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
52 packages can be upgraded. Run 'apt list --upgradable' to see them.
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
E: Unable to locate package harfbuzz

It seems installing harfbuzz is not simple. On the other hand, I already have

leanh@DESKTOP-EAEGDAK:~$ sudo apt install -y libharfbuzz-dev
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
libharfbuzz-dev is already the newest version (8.3.0-2build2).

leanh@DESKTOP-EAEGDAK:~$ dpkg -l | grep libharfbuzz
ii  libharfbuzz-cairo0:amd64          8.3.0-2build2                           amd64        OpenType text shaping engine Cairo backend
ii  libharfbuzz-dev:amd64             8.3.0-2build2                           amd64        Development files for OpenType text shaping engine
ii  libharfbuzz-gobject0:amd64        8.3.0-2build2                           amd64        OpenType text shaping engine ICU backend (GObject library)
ii  libharfbuzz-icu0:amd64            8.3.0-2build2                           amd64        OpenType text shaping engine ICU backend
ii  libharfbuzz-subset0:amd64         8.3.0-2build2                           amd64        OpenType text shaping engine (subset library)
ii  libharfbuzz0b:amd64               8.3.0-2build2                           amd64        OpenType text shaping engine (shared library)

leanhdung1994 avatar Jul 26 '25 08:07 leanhdung1994

It seems to be called libharfbuzz0b on ubuntu (https://www.ubuntuupdates.org/package/core/plucky/main/base/libharfbuzz0b), try sudo apt install libharfbuzz0b instead.

let-def avatar Jul 26 '25 08:07 let-def

Ah I just saw your message, sorry. So harfbuzz is available, something is wrong with the build...

let-def avatar Jul 26 '25 08:07 let-def

Below is Grok's analysis of terminal's output. I hope it helps. image

image image

leanhdung1994 avatar Jul 26 '25 08:07 leanhdung1994

I tested under Arch and Fedora, I have no idea what is going wrong on ubuntu (and even less on wsl). I might try an Ubuntu VM later if I have the time, sorry.

let-def avatar Jul 26 '25 08:07 let-def

I will try to check installation on latest Ubuntu VM (Parallels) today, but I'm not sure how it is comparable with WSL.

merv1n34k avatar Jul 26 '25 12:07 merv1n34k

I have tried to run

sudo apt update
sudo apt -y install build-essential libsdl2-dev libmupdf-dev libmujs-dev libfreetype-dev libgumbo-dev libjbig2dec0-dev libjpeg-dev libopenjp2-7-dev libssl-dev libfontconfig-dev libleptonica-dev libharfbuzz-dev mupdf git cargo
sudo apt install -y rustup
rustup update stable
git clone --single-branch --branch detectonic https://github.com/let-def/texpresso.git && cd texpresso
make all
make fill-tectonic-cache
build/texpresso test/simple.tex

in Ubuntu 25.04 in VMware Workstation Pro 17, but the same problem persists. An extract of the output is

usr/bin/ld: ../../build/dpx/dpx-pngimage.o: in function `png_get_bbox':
dpx-pngimage.c:(.text+0x2a89): undefined reference to `png_create_read_struct'
/usr/bin/ld: dpx-pngimage.c:(.text+0x2a9f): undefined reference to `png_create_info_struct'
/usr/bin/ld: dpx-pngimage.c:(.text+0x2ac1): undefined reference to `png_set_read_fn'
/usr/bin/ld: dpx-pngimage.c:(.text+0x2ad0): undefined reference to `png_read_info'
/usr/bin/ld: dpx-pngimage.c:(.text+0x2adf): undefined reference to `png_get_image_width'
/usr/bin/ld: dpx-pngimage.c:(.text+0x2af1): undefined reference to `png_get_image_height'
/usr/bin/ld: dpx-pngimage.c:(.text+0x2b04): undefined reference to `png_get_x_pixels_per_meter'
/usr/bin/ld: dpx-pngimage.c:(.text+0x2b15): undefined reference to `png_get_y_pixels_per_meter'
/usr/bin/ld: dpx-pngimage.c:(.text+0x2b64): undefined reference to `png_destroy_info_struct'
/usr/bin/ld: dpx-pngimage.c:(.text+0x2b7a): undefined reference to `png_destroy_read_struct'
/usr/bin/ld: dpx-pngimage.c:(.text+0x2be0): undefined reference to `png_destroy_read_struct'
collect2: error: ld returned 1 exit status
make[2]: *** [Makefile:68: ../../build/texpresso-xetex] Error 1
make[2]: Leaving directory '/home/leanh/texpresso/src/engine'
make[1]: *** [Makefile:62: texpresso-xetex] Error 2
make[1]: Leaving directory '/home/leanh/texpresso'
make: *** [Makefile:2: all] Error 2
tectonic --outfmt fmt test/format.tex
make: tectonic: No such file or directory
make: *** [Makefile:68: fill-tectonic-cache] Error 127
[info] working directory: /home/leanh/texpresso
[info] executable path: /home/leanh/texpresso/build/texpresso
[info] document path: /home/leanh/texpresso/test
[info] document name: simple.tex
texpresso logo: 412x412
[info] engine path: texpresso-xetex
[dvi] loading pdftex.map (kind RES_MAP)
trying tectonic -X bundle cat pdftex.map
sh: 1: tectonic: not found
exit code: 32512 (length: 0)
failure
[dvi] loading kanjix.map (kind RES_MAP)
trying tectonic -X bundle cat kanjix.map
sh: 1: tectonic: not found
exit code: 32512 (length: 0)
failure
[dvi] loading ckx.map (kind RES_MAP)
trying tectonic -X bundle cat ckx.map
sh: 1: tectonic: not found
exit code: 32512 (length: 0)
failure
[process] launched pid 15434 (using texpresso-xetex)
leanh@leanh-VMware-Virtual-Platform:~/texpresso$ build/texpresso test/simple.tex
[info] working directory: /home/leanh/texpresso
[info] executable path: /home/leanh/texpresso/build/texpresso
[info] document path: /home/leanh/texpresso/test
[info] document name: simple.tex
texpresso logo: 412x412
[info] engine path: texpresso-xetex
[dvi] loading pdftex.map (kind RES_MAP)
trying tectonic -X bundle cat pdftex.map
sh: 1: tectonic: not found
exit code: 32512 (length: 0)
failure
[dvi] loading kanjix.map (kind RES_MAP)
trying tectonic -X bundle cat kanjix.map
sh: 1: tectonic: not found
exit code: 32512 (length: 0)
failure
[dvi] loading ckx.map (kind RES_MAP)
trying tectonic -X bundle cat ckx.map
sh: 1: tectonic: not found
exit code: 32512 (length: 0)
failure
[process] launched pid 15477 (using texpresso-xetex)

leanhdung1994 avatar Jul 26 '25 15:07 leanhdung1994

I have tried to run

sudo apt update
sudo apt -y install build-essential libsdl2-dev libmupdf-dev libmujs-dev libfreetype-dev libgumbo-dev libjbig2dec0-dev libjpeg-dev libopenjp2-7-dev libssl-dev libfontconfig-dev libleptonica-dev libharfbuzz-dev mupdf git cargo
sudo apt install -y rustup
rustup update stable
git clone --single-branch --branch detectonic https://github.com/let-def/texpresso.git && cd texpresso
make all
make fill-tectonic-cache
build/texpresso test/simple.tex

in Ubuntu 24.04 in VMware Workstation Pro 17, but the same problem persists. An extract of the output is

usr/bin/ld: dpx-pngimage.c:(.text+0x2ba0): undefined reference to `png_destroy_read_struct'
collect2: error: ld returned 1 exit status
make[2]: *** [Makefile:68: ../../build/texpresso-xetex] Error 1
make[2]: Leaving directory '/home/leanh/texpresso/src/engine'
make[1]: *** [Makefile:62: texpresso-xetex] Error 2
make[1]: Leaving directory '/home/leanh/texpresso'
make: *** [Makefile:2: all] Error 2
tectonic --outfmt fmt test/format.tex
make: tectonic: No such file or directory
make: *** [Makefile:68: fill-tectonic-cache] Error 127
[info] working directory: /home/leanh/texpresso
[info] executable path: /home/leanh/texpresso/build/texpresso
[info] document path: /home/leanh/texpresso/test
[info] document name: simple.tex
texpresso logo: 412x412
[info] engine path: texpresso-xetex
[dvi] loading pdftex.map (kind RES_MAP)
trying tectonic -X bundle cat pdftex.map
sh: 1: tectonic: not found
exit code: 32512 (length: 0)
failure
[dvi] loading kanjix.map (kind RES_MAP)
trying tectonic -X bundle cat kanjix.map
sh: 1: tectonic: not found
exit code: 32512 (length: 0)
failure
[dvi] loading ckx.map (kind RES_MAP)
trying tectonic -X bundle cat ckx.map
sh: 1: tectonic: not found
exit code: 32512 (length: 0)
failure
[process] launched pid 12802 (using texpresso-xetex)

leanhdung1994 avatar Jul 26 '25 15:07 leanhdung1994

Can confirm the error is reproducible on Ubuntu 24.04, don't seems to be the error with packages, but with their path (or something else)

merv1n34k avatar Jul 27 '25 06:07 merv1n34k

The error probably is in src/engine/Makefile, there is a system spec flags specified for mac, but they are missing (or not specified) for other systems:

else

CSYSFLAGS=
LDSYSFLAGS=
PKGSYS=icu-uc
OBJSYS=

endif

merv1n34k avatar Jul 27 '25 06:07 merv1n34k