Trying to build CodeLite: missing header error

With fresh motivation from the release of beta4 (WLAN now fully operational on my StarBook, touchpad still no luck), I’ve been checking out CodeLite and want to compile it for Haiku to give it a run by following the build notes for Linux.

After installing some missing dependencies not mentioned in the docs (e.g. for wx-config) and redirecting the installation path from /usr/local/lib to /boot/home/lib, I am stuck with a header file that cannot be found but is actually there, right in the default path:

/packages/pango-1.50.7-2/.self/develop/headers/pango-1.0/pango/pango-coverage.h:28:10: fatal error: hb.h: No such file or directory
   28 | #include <hb.h>
      |          ^~~~~~

I can see it’s installed as part of harfbuzz:

> find / -name hb.h
/boot/system/develop/headers/harfbuzz/hb.h

Interestingly, the header glib-object.h included one line above is also in the same path and can be found:

> find / -name glib-object.h
/boot/system/develop/headers/glib-2.0/glib-object.h

source of both includes:

pango-font.h:

#include <glib-object.h>
#include <hb.h>

so I’m a bit lost atm and would appreciate a nudge from a seasoned porter or Haiku dev…

My quess is that you will have to modify the CMakeLists.txt file and add some Haiku specific code to adjust the include paths. I see some other hacks they have added to work around harfbuzz includes on other operating systems.

The query command is generally many times faster than find for file searches on a BFS volume. Something like query -a name=hb.h

1 Like

The folder headers/glib-2.0/ is in your include path.
headers/harfbuzz/ is not.

It may look for headers/hb.h or headers/glib-2.0/hb.h which both don’t exist.

You can add headers/harfbuzz/ to your includes or change the line to
#include <harfbuzz/hb.h>

touchpad still no luck

Did you report a bug?

1 Like