tectonic icon indicating copy to clipboard operation
tectonic copied to clipboard

Error building: hb-graphite2.h: no such file or directory.

Open alejandrogallo opened this issue 6 years ago • 3 comments

I followed the instructions on the website for ubuntu...

I recorded an asciinema session to show.

https://asciinema.org/a/S1OwTeDe20AAXWQFFbA4Lw4DV

alejandrogallo avatar Feb 27 '19 20:02 alejandrogallo

What version of Ubuntu are you using? It looks like your OS has version 1.0.1 of libharfbuzz-dev, which is quite old.

We actually provide a custom package of harfbuzz for Xenial for use in our CI systems for just this reason: see this PPA.

pkgw avatar Feb 28 '19 03:02 pkgw

Hi! thank you for the answer, yes I'm running Xenial 16.04.6, I'm going to test the ppa now.

For more information, an extract of /etc/os-release:

VERSION="16.04.6 LTS (Xenial Xerus)"
ID=ubuntu
ID_LIKE=debian
PRETTY_NAME="Ubuntu 16.04.6 LTS"

alejandrogallo avatar Feb 28 '19 10:02 alejandrogallo

Thanks! What's strange to me is that the Tectonic build.rs should try to require harfbuzz >= 1.4, so I'm not sure how your build got to the point where this error was triggered. If I try the procedure that you ran in a fresh Xenial Docker container, I get the intended error:

   Compiling serde_derive v1.0.88
   Compiling tectonic v0.1.11
error: failed to run custom build command for `tectonic v0.1.11`
process didn't exit successfully: `/tmp/cargo-install2AQTgw/release/build/tectonic-82edf7d300c7d38a/build-script-build` (exit code: 101)
--- stderr
thread 'main' panicked at 'called `Result::unwrap()` on an `Err` value: Failure { command: "\"pkg-config\" \"--libs\" \"--cflags\" \"fontconfig harfbuzz >= 1.4 harfbuzz-icu icu-uc freetype2 graphite2 libpng zlib\"", output: Output { status: ExitStatus(ExitStatus(256)), stdout: "", stderr: "Requested \'harfbuzz >= 1.4\' but version of harfbuzz is 1.0.1\n" } }', src/libcore/result.rs:1009:5

Maybe your environment is a bit unusual where you've got a newer, local Harfbuzz installed such that pkg-config finds it, but it doesn't have graphite2 enabled?

pkgw avatar Feb 28 '19 14:02 pkgw