latest git pull will not build on Arch

MusE is a MIDI/Audio sequencer with recording and editing capabilities, aiming to be a complete multitrack virtual studio for Linux. http://muse-sequencer.org/

Moderators: khz, MattKingUSA, spamatica

User avatar
funkmuscle
Established Member
Posts: 2289
Joined: Mon Jun 02, 2008 2:30 pm

latest git pull will not build on Arch

Postby funkmuscle » Sat Aug 10, 2019 4:11 pm

Just did a fresh pull and I got this:

Code: Select all

[ 17%] Building CXX object muse/lv2Gtk2Support/CMakeFiles/lv2_gtk2_support.dir/lv2Gtk2Support.o
In file included from /usr/include/pango-1.0/pango/pango-font.h:25,
                 from /usr/include/pango-1.0/pango/pango-attributes.h:25,
                 from /usr/include/pango-1.0/pango/pango.h:25,
                 from /usr/include/gtk-2.0/gdk/gdktypes.h:37,
                 from /usr/include/gtk-2.0/gdk/gdkscreen.h:32,
                 from /usr/include/gtk-2.0/gdk/gdkapplaunchcontext.h:31,
                 from /usr/include/gtk-2.0/gdk/gdk.h:32,
                 from /usr/include/gtk-2.0/gtk/gtk.h:32,
                 from /tmp/trizen-harv/muse-git/src/muse-git/muse3/muse/lv2Gtk2Support/lv2Gtk2Support.cpp:4:
/usr/include/pango-1.0/pango/pango-coverage.h:28:10: fatal error: hb.h: No such file or directory
   28 | #include <hb.h>
      |          ^~~~~~
compilation terminated.
make[2]: *** [muse/lv2Gtk2Support/CMakeFiles/lv2_gtk2_support.dir/build.make:62: muse/lv2Gtk2Support/CMakeFiles/lv2_gtk2_support.dir/lv2Gtk2Support.o] Error 1
make[1]: *** [CMakeFiles/Makefile2:2170: muse/lv2Gtk2Support/CMakeFiles/lv2_gtk2_support.dir/all] Error 2
make: *** [Makefile:152: all] Error 2
==> ERROR: A failure occurred in build().
    Aborting...
:: Unable to build muse-git - makepkg exited with code: 4

Tim E. Real
Established Member
Posts: 291
Joined: Sat Sep 15, 2012 12:36 am

Re: latest git pull will not build on Arch

Postby Tim E. Real » Sat Aug 10, 2019 9:26 pm

Meh... you're missing some sort of pango font development package.
The header file "hb.h" is part of gtk's "Harfbuzz OpenType text shaping engine".

On my system the file is found in package harfbuzz-devel.

From our README: Make sure the gtkmm-2 and gtk+-2 development packages are installed.
If that's already done, then possibly your distro's gtk/pango package dependencies are not quite complete?
Harbuzz should have automatically been brought in, then.

User avatar
funkmuscle
Established Member
Posts: 2289
Joined: Mon Jun 02, 2008 2:30 pm

Re: latest git pull will not build on Arch

Postby funkmuscle » Sun Aug 11, 2019 7:49 pm

Tim E. Real wrote:Meh... you're missing some sort of pango font development package.
The header file "hb.h" is part of gtk's "Harfbuzz OpenType text shaping engine".

On my system the file is found in package harfbuzz-devel.

From our README: Make sure the gtkmm-2 and gtk+-2 development packages are installed.
If that's already done, then possibly your distro's gtk/pango package dependencies are not quite complete?
Harbuzz should have automatically been brought in, then.

I've got all those installed. In fact, I just reinstalled them and same thing.

Tim E. Real
Established Member
Posts: 291
Joined: Sat Sep 15, 2012 12:36 am

Re: latest git pull will not build on Arch

Postby Tim E. Real » Sun Aug 11, 2019 9:53 pm

Your output log shows the error is several layers deep into gtk/pango.
Are you sure you have harfbuzz-devel package?

Does the file /usr/include/harfbuzz/hb.h exist?
No? How about /usr/include/hb.h then?

If the answer is the former, then this looks suspicious:
/usr/include/pango-1.0/pango/pango-coverage.h:28:10: fatal error: hb.h: No such file or directory
28 | #include <hb.h>


Seems inside the file /usr/include/pango-1.0/pango/pango-coverage.h it ought to be this:

Code: Select all

   28 | #include <harfbuzz/hb.h>


If the answer is the latter, then the code looks correct. Something else is wrong.

Something else odd: My /usr/include/pango-1.0/pango/pango-coverage.h contains no such line "#include <hb.h>"
Neither does pango-font.h or even pango.h
In fact when I follow the trail of headers listed in your output, I find no such line.
Why is your pango-coverage.h attempting to include hb.h ?
Curious, please post the first 100 lines or so of your /usr/include/pango-1.0/pango/pango-coverage.h

Still, it seems this is out of our hands.
Something not installed? Not updated or out of sync with each other? Maybe wait until they are?

Tim.

aquilarubra
Established Member
Posts: 49
Joined: Sat Nov 24, 2018 8:12 pm

Re: latest git pull will not build on Arch

Postby aquilarubra » Mon Aug 12, 2019 7:26 pm

I could replicate the error. Same conclusion of Tim. It seems due to a Pango update. Other packages have the same issue.

The temporary solution is to change /usr/include/pango-1.0/pango/pango-coverage.h and /usr/include/pango-1.0/pango/pango-font.h

Where it includes hb.h, it should include harfbuzz/hb.h instead.

Then, it compiles successfully. I don't feel like changing the PKGBUILD of muse-git, as it is a Pango related bug. I guess it will be fixed soon. What do you think?

User avatar
funkmuscle
Established Member
Posts: 2289
Joined: Mon Jun 02, 2008 2:30 pm

Re: latest git pull will not build on Arch

Postby funkmuscle » Mon Aug 12, 2019 7:38 pm

aquilarubra wrote:I could replicate the error. Same conclusion of Tim. It seems due to a Pango update. Other packages have the same issue.

The temporary solution is to change /usr/include/pango-1.0/pango/pango-coverage.h and /usr/include/pango-1.0/pango/pango-font.h

Where it includes hb.h, it should include harfbuzz/hb.h instead.

Then, it compiles successfully. I don't feel like changing the PKGBUILD of muse-git, as it is a Pango related bug. I guess it will be fixed soon. What do you think?

I agree with you guys that it is definitely Pango. I guess we wait for it to be updated.

Tim E. Real
Established Member
Posts: 291
Joined: Sat Sep 15, 2012 12:36 am

Re: latest git pull will not build on Arch

Postby Tim E. Real » Mon Aug 12, 2019 9:14 pm

For now, you can disable LV2 GTK2 support by recompiling MusE
without the ENABLE_LV2_GTK2 cmake flag.

It means a few plugins might not show a UI at all, but others may be able
offer a different UI that will be automatically selected or you can choose (see Settings > LV2 gui behaviour).

User avatar
funkmuscle
Established Member
Posts: 2289
Joined: Mon Jun 02, 2008 2:30 pm

Re: latest git pull will not build on Arch

Postby funkmuscle » Mon Aug 12, 2019 9:19 pm

Tim E. Real wrote:For now, you can disable LV2 GTK2 support by recompiling MusE
without the ENABLE_LV2_GTK2 cmake flag.

It means a few plugins might not show a UI at all, but others may be able
offer a different UI that will be automatically selected or you can choose (see Settings > LV2 gui behaviour).

my luck, it will be Drumgizmo which is the main plugin I use MusE for so I'll wait for the Pango bug fix in Arch!

folderol
Established Member
Posts: 925
Joined: Mon Sep 28, 2015 8:06 pm
Location: Here, of course!
Contact:

Re: latest git pull will not build on Arch

Postby folderol » Tue Aug 13, 2019 9:20 pm

At the risk of stating the obvious, has anyone notified the Arch devs?

User avatar
funkmuscle
Established Member
Posts: 2289
Joined: Mon Jun 02, 2008 2:30 pm

Re: latest git pull will not build on Arch

Postby funkmuscle » Tue Aug 13, 2019 11:08 pm

folderol wrote:At the risk of stating the obvious, has anyone notified the Arch devs?

pango was just updated and still the same issue.

Tim E. Real
Established Member
Posts: 291
Joined: Sat Sep 15, 2012 12:36 am

Re: latest git pull will not build on Arch

Postby Tim E. Real » Wed Aug 14, 2019 12:15 am

Sorry to hear that.

The temporary solution is to change /usr/include/pango-1.0/pango/pango-coverage.h and /usr/include/pango-1.0/pango/pango-font.h
Where it includes hb.h, it should include harfbuzz/hb.h instead.


Another less intrusive solution might be to simply make a new file link
/usr/include/hb.h -> /usr/include/harfbuzz/hb.h
Although, if there ever was some other file named hb.h there, that would be bad.
[ Edit: ] Make sure to remove the link if and when pango is finally corrected.

Kott
Established Member
Posts: 100
Joined: Thu Mar 21, 2013 12:55 am
Location: Vladivostok

Re: latest git pull will not build on Arch

Postby Kott » Thu Oct 03, 2019 7:02 am

I use this solution for automated build in OBS:

insert necessary include after cmake configuration and before make:

mkdir build
cd build
cmake <your options> ..

sed -i -e 's/CXX_INCLUDES = /CXX_INCLUDES = -I\/usr\/include\/harfbuzz /' muse/lv2Gtk2Support/CMakeFiles/lv2_gtk2_support.dir/flags.make

make

User avatar
funkmuscle
Established Member
Posts: 2289
Joined: Mon Jun 02, 2008 2:30 pm

Re: latest git pull will not build on Arch

Postby funkmuscle » Thu Oct 03, 2019 11:31 am

Kott wrote:I use this solution for automated build in OBS:

insert necessary include after cmake configuration and before make:

mkdir build
cd build
cmake <your options> ..

sed -i -e 's/CXX_INCLUDES = /CXX_INCLUDES = -I\/usr\/include\/harfbuzz /' muse/lv2Gtk2Support/CMakeFiles/lv2_gtk2_support.dir/flags.make

make

Does that actually fix the issue that we've been experiencing? The harfbuzz issue? Only how I get it to build is by following the instructions above.

Kott
Established Member
Posts: 100
Joined: Thu Mar 21, 2013 12:55 am
Location: Vladivostok

Re: latest git pull will not build on Arch

Postby Kott » Thu Oct 03, 2019 11:53 am

funkmuscle wrote:Does that actually fix the issue that we've been experiencing? The harfbuzz issue? Only how I get it to build is by following the instructions above.


yes, that command adds path to harfbuzz includes

User avatar
funkmuscle
Established Member
Posts: 2289
Joined: Mon Jun 02, 2008 2:30 pm

Re: latest git pull will not build on Arch

Postby funkmuscle » Thu Oct 03, 2019 12:51 pm

Kott wrote:
funkmuscle wrote:Does that actually fix the issue that we've been experiencing? The harfbuzz issue? Only how I get it to build is by following the instructions above.


yes, that command adds path to harfbuzz includes

Kott thanks!!


Return to “MusE Sequencer”

Who is online

Users browsing this forum: No registered users and 7 guests