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.
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).