On 4/23/19 23:14, Matthew Butterick wrote:
Some code relies on the `harfbuzz` library, like so:
(define-runtime-lib harfbuzz-lib
[(unix) (ffi-lib "libharfbuzz" '("1" ""))]
[(macosx) (ffi-lib "libharfbuzz.0.dylib")]
[(windows) (ffi-lib "libharfbuzz-0.dll")])
Though this works on my Mac machines, the doc server throws an error: [1]
raco setup: ffi-obj: couldn't get "hb_buffer_add_codepoints" from
"libharfbuzz.so" (/usr/lib/x86_64-linux-gnu/libharfbuzz.so: undefined symbol:
hb_buffer_add_codepoints)
The `hb_buffer_add_codepoints` function was added in Harfbuzz 0.9.31,
but according to Racket's readme, it ships with Harfbuzz 1.7.6 [2]
Judging by the Harfbuzz path in the error message, I wonder if I'm
inadvertently invoking some local copy of Harfbuzz (which is out of
date) rather than the one that ships with Racket (which isn't). But if
so, I don't know how to change the `define-runtime-lib` incantation to
make it work.
It looks like natipkg Racket includes libharfbuzz.so.0, not
libharfbuzz.so.1 (see [1]). So try changing the unix line to
[(unix) (ffi-lib "libharfbuzz" '("0" ""))]
instead.
Ryan
[1]
https://github.com/racket/libs/tree/master/draw-x86_64-linux-natipkg-3/racket/draw
--
You received this message because you are subscribed to the Google Groups "Racket
Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to racket-users+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.