trinity-users@lists.pearsoncomputing.net

Message: previous - next
Month: December 2014

Confusion about building from sources (R13.2 on Slack 14.1)

From: Jagged O'Neill <jagged_4tr@...>
Date: Sun, 7 Dec 2014 01:56:59 +0100
High,

now I'm trying to build R13.2 on Slackware 14.1, trying to follow the
instructions found at
  https://wiki.trinitydesktop.org/How_to_Build_TDE_Core_Modules

This doc leaves several questions open:

1. It doesn't say which release this is about. In the "Suggested
Build Order" section it talks about tqt3, so I guess it's about R14
already, though R14 isn't (actually) released yet. And what if any-
one is forced (or just likes) to install R13.2 or even older release
anyway?

2. It isn't clear about the build tool to use for the different
packages. When talking about the autoconf -> cmake migration, there
should be some details of which package in which release is to be
done with which build tool, or each package should have a quick note
about this in the README or whatever...

I think qt3 itself is neither, but I'm not sure. It has no 'admin' and
no 'cmake' subdirectory, but if this is an acceptable exception for me.
It should be mentioned anyway, maybe for others, or maybe merely for
the sake of being documented (or is it documented elsewhere already?).

3. Problems compiling tqtinterface:
I manually ran ./configure on qt3 and it installed in almost no time,
or rather, with almost no fiddling. But now I'm stuck for hours with
the second step, tqtinterface. It has both a 'cmake' and an 'admin'
subdirectory, but since the page mentioned above lists it in section
"Building Packages with cmake", I first tried cmake, indeed.

But with the instructions listed under "Performing a cmake Build" it
just didn't work. It stopped after failing to run a cmTryCompileExec
step, in which the compiler is called with
   /usr/bin/c++     -I/opt/trinity-3.5.13.2/qt3/include -DHAVE_USABLE_QT3    CMakeFiles/cmTryCompileExec737936600.dir/src.cxx.o  -o cmTryCompileExec737936600 -rdynamic -L/opt/trinity-3.5.13.2/qt3/lib -lqt-mt

This version is already altered from the "default"... I have put in
the include path option, without which even the compilation failed,
of course.

But even then this step failed, due to countless undefined references,
because the command line issued tells the linker to only drag in qt-mt,
but none of X11, Xext, dl, z, jpeg, png, mng, and I don't know how many
else. I have put in those mentioned here manually in a step-by-step,
incremental, very tedious build/less $erroroutput/edit $buildscript
process. Shouldn't the script, that tries to compile the program, know
which libraries it needs and instruct the linker to drag them in? What
am I doing wrong?

Of course, maybe the "ready for cmake" list is indeed for R14, and as
such doesn't match my sources. Buuuuuut... trying with autoconf also
fails, because there isn't even a configure script.

Oh, wait, I didn't _re_generate autoconf/automake files yet, as it has
been suggested. But then, trying it yields nothing productive anyway:
Copying the mentioned files from
  /usr/share/aclocal/libtool.m4
  /usr/share/libtool/config/ltmain.sh
(maybe they're wrong?), then running

  $ make -f admin/Makefile.common
  *** automake (GNU automake) 1.11.5 found.
  *** Creating acinclude.m4
  make[1]: Entering directory `/home/jagged/src/trinity-build/tqtinterface-trinity-3.5.13.2'
  make[1]: *** No rule to make target `libltdl/ltdl.m4', needed by `acinclude.m4'.  Stop.
  make[1]: Leaving directory `/home/jagged/src/trinity-build/tqtinterface-trinity-3.5.13.2'
  make: *** [cvs] Error 1

Well, I'm completely clueless... :-/

Just in case it matters:
  Slackware 14.1, kernel 3.10.17
  gcc version 4.8.2
  ld 2.23.52.0.1.20130226

No idea if I should attach the error output from a cmake approach.

4. Some other points that I find a bit confusing

  - In the "configure and build" code boxes, you use /opt/trinity/lib/qt3*
    for QTDIR, but /opt/trinity/qt3* in PATH and PKG_CONFIG_PATH.

    Is this correct? (It could be that some later step establishes some
    /opt/trinity/lib/qt3* dir, but after configuring qt3 with
    -prefix=/opt/trinity/qt3, and installing the result, there is no
    such directory (yet).)

  - Introducing a parameter named $CPUOPT ist just... well... confusing.

So much for now. Thanks in advance for any suggestion.

Regards,
Jagged

PS: Since it is a wiki, I guess I could help improving it, if desired
(it's not that I'm an observing but otherwise passive nagger), just at
the moment I think my experience is close to zero...

-- 
valgrind python -c 'for i in range(1,1): print(i)' 2>&1 | grep error