Problems building MATE

The old links to building anything have rotted, so I basically guessed at a few things to see if I could get marco to build so I can track down a few bugs.

I generally expect linux software to require root to build by default, but to also configure properly for non-root builds - which are fairly critical, since most code will otherwise install itself over the stable packages, and potentially ruin your day. :stuck_out_tongue:

Cloning the marco repo had some instructions that looked like they'd been updated in at least the last year or two, so I gave that a shot and was told to get mate-common. So I did. That has a nice short README, but one with AFAIK multiple inaccuracies in it, unfortunately.

With this as a starting point

~/mate/mate-common $ ./autogen.sh --prefix ~/mate/

and running "make install" afterwards, rather than the plain "make" the script tells you to do, which does nothing, the outcome is actually

$ find mate/ -name mate-common.m4
mate/mate-common/macros/mate-common.m4
mate/share/aclocal/mate-common.m4

rather than the

  • When we're outside the MATE repository tree, we simply need to tell aclocal
    that it should also look in `$(datadir)/aclocal/mate' and it will find all
    the macros.

claimed in the README. Which may or may not be the current problem I have, which is that

~/mate/marco $ ACLOCAL_FLAGS="-I ~/mate/share/aclocal/" ./autogen.sh --prefix ~/mate/

results in

[snip - tests are successful up to this point]
Checking for required M4 macros...
mate-common.m4 not found
mate-compiler-flags.m4 not found
Error: some autoconf macros required to build marco
were not found in your aclocal path, or some forbidden
macros were found. Perhaps you need to adjust your
ACLOCAL_FLAGS?

So, any suggestions? Are there other docs somewhere that are more accurate / up to date, or does the prefix not work fully and everything has to be built as root and installed into /usr, or some combination of the two and / or something else?

I'd REALLY prefer to not have to build as root if at all possible, and it certainly should be, since all the standard tools support prefix. But I see assorted "xyz for Meson" commits in the repos, and I'm not familiar with that at all.

I just barely have the time right now to MAYBE fix a simple bug or two, but I don't have the time to spend days trying to beat a build system into working properly if it doesn't want to. (I will in another 6 weeks or so, but I've got a deadline looming ATM, and that won't wait).

oh ffs...

I remembered something from years ago that had a problem with home directories in ./configure, so I tried explicitly expanding the path, and jep, that was it.

As I expected, this has taken me WAY past my bedtime and I really shouldn't be doing it, but it's at least making progress. Now it's stuck on assorted missing dev libraries: I've added two so far, which have pulled in 96 additional packages, so I see GNOME's Kitchen Sink approach to software development is still alive and well. :stuck_out_tongue:

The rest of it is going to have to wait til tomorrow, but like I say: progress - or at least the illusion of it. :slight_smile: