Tim, All,
Things had gone fairly smooth rebuilding from GIT based on TQt3 until kdelibs.
This is the first major build failure I can't explain by packaging error or hope
to troubleshoot with a simple grep of a configure file, etc..
The error I received was:
/build/src/tdelibs/dcop/dcopserver.cpp:654:21: warning: ignoring return value of
'int system(const char*)', declared with attribute warn_unused_result
[-Wunused-result]
[ 2%] Building CXX object
dcop/CMakeFiles/tdeinit_dcopserver-shared.dir/dcopsignals.cpp.o
Linking CXX shared library libtdeinit_dcopserver.so
[ 2%] Built target tdeinit_dcopserver-shared
Scanning dependencies of target dcopserver
[ 2%] Building CXX object
dcop/CMakeFiles/dcopserver.dir/dcopserver_tdeinit_executable.cpp.o
Linking CXX executable dcopserver
/opt/trinity/lib/libtqt.so: undefined reference to `qt_x_time'
/opt/trinity/lib/libtqt.so: undefined reference to `qt_x_user_time'
collect2: ld returned 1 exit status
make[2]: *** [dcop/dcopserver] Error 1
make[1]: *** [dcop/CMakeFiles/dcopserver.dir/all] Error 2
make: *** [all] Error 2
Help?
--
David C. Rankin, J.D.,P.E.
Tim,
Working my way through the packages based on Tqt3, I've run into a build issue
with avahi-tqt. I've gone back through Jay and Darrell's messages on the list,
so I know there were problems with the packages -- but is it still broke or is
it on my end??
The config.log error I get is:
configure:19151: $PKG_CONFIG --exists --print-errors " tqt-mt "
Package tqt-mt was not found in the pkg-config search path.
Perhaps you should add the directory containing `tqt-mt.pc'
to the PKG_CONFIG_PATH environment variable
No package 'tqt-mt' found
I don't understand the error, I have:
/opt/tqt3/lib/pkgconfig/tqt-mt.pc
which should be found given the /etc/profile/tqt.sh setting $QTDIR. Any quick
hacks to get around this one?
--
David C. Rankin, J.D.,P.E.
Tim, all,
I'm trying to build tqca-tls with ./configure --qtdir=${QTDIR} and I'm getting
a configure failure:
Configuring qca-tls ...
Verifying TQt 3.x Multithreaded (MT) build environment ... fail
There was an error compiling 'conf'. Be sure you have a proper
TQt 3.x Multithreaded (MT) build environment set up.
This TDE build is based on TQt3 and I have built and installed the following:
hal-0.5.14-8-x86_64.pkg.tar.xz
hal-info-0.20091130-1-any.pkg.tar.xz
libutempter-1.1.5-3-x86_64.pkg.tar.xz
tde-tqt3-3.8.8.d_git-1-x86_64.pkg.tar.xz
tde-tqtinterface-3513_tqt-8-x86_64.pkg.tar.xz
tde-arts-3513_tqt-1-x86_64.pkg.tar.xz
tde-dbus-tqt-3513_tqt-1-x86_64.pkg.tar.xz
tde-dbus-tqt-1-3513_tqt-1-x86_64.pkg.tar.xz
conf.log error is:
g++ -c -pipe -Wall -W -O2 -D_REENTRANT -DX11_INC='"/usr/X11R6/include"'
-DX11_LIBDIR='"/usr/X11R6/lib64"' -DX11_LIB='"-lXext -lX11 -lm"' -DCC='"gcc"'
-DQT_NO_DEBUG -DQT_THREAD_SUPPORT -DQT_SHARED -I/opt/tqt3/mkspecs/default -I.
-I'/usr/include/tqt' -I/opt/tqt3/include -I/usr/X11R6/include -o conf.o conf.cpp
conf.cpp:3:21: fatal error: tqstring.h: No such file or directory
The problem seems to be the /usr/include/tqt is hardcoded in 'configure'.
class qc_openssl : public ConfObj
{
public:
qc_openssl(Conf *c) : ConfObj(c) {}
TQString name() const { return "OpenSSL"; }
TQString shortname() const { return "openssl"; }
bool exec()
{
<snip>
// Make sure tqtinterface can be found
conf->addIncludePath("/usr/include/tqt");
^^^^^^^^^^^^^^^^^^
How to fix? Looks like the configure file need to be updated to take the
'--prefix=' option and set TDEDIR and then do something like:
// Make sure tqtinterface can be found
conf->addIncludePath("${TDEDIR}/include/tqt");
--
David C. Rankin, J.D.,P.E.
Cal, Pawel, Baho, all,
For the arch master build script I have the script update the tree and then
create tarballs on the fly. (easier that mount --bind of local git tree into
chroot to use the git tree directly). One of the things I had to do was to
automate the update of the md5sum in the PKGBUILD. I have come up with a rather
wonky 2-function approach that I want to get comment on. May be OK as it (it
works fine), but I welcome thoughts for improvement. The only limitation is that
the tarball must be the first md5sum listed in the md5sum array. The functions I
use are:
## function getsum(): get the new md5sum (getsum filename)
getsum() {
[[ -r "$1" ]] || { echo "ERROR: file not found '$1' in function getsum";
return 1; }
_tmp=$(md5sum "$1")
echo "${_tmp//\ *}"
}
## function updtsum(): update the md5sum in pkgbuild (updtsum file newmd5sum)
updtsum() {
sed -i -e "s/md5sums=('.*'/md5sums=('$2'/" "$1"
}
Then they are called in the script as follows:
## update the md5sum
_newsum=$(getsum "${tgzdir}/${tgzfn}")
echo " updating PKGBUILD md5sum -> $_newsum"
updtsum "${pbpkgd}/${pbpkg}/PKGBUILD" $_newsum
Any areas you see that could be improved? The script isn't ready for
distribution yet, but it is getting close.
--
David C. Rankin, J.D.,P.E.
Tim, Calvin,
In the tqtinterface build setup, I find a tqtpc-location.patch that isn't
being utilized. It is:
--- dependencies/tqtinterface/CMakeLists.txt 2011-03-28 00:12:24.000000000 +0200
+++ dependencies/tqtinterface/CMakeLists.txt.new 2012-01-29
12:15:16.000000000 +0100
@@ -35,7 +35,7 @@
tde_setup_install_path( BIN_INSTALL_DIR "${EXEC_INSTALL_PREFIX}/bin" )
tde_setup_install_path( LIB_INSTALL_DIR
"${EXEC_INSTALL_PREFIX}/lib${LIB_SUFFIX}" )
tde_setup_install_path( INCLUDE_INSTALL_DIR
"${CMAKE_INSTALL_PREFIX}/include/tqt" )
-tde_setup_install_path( PKGCONFIG_INSTALL_DIR "/usr/lib${LIB_SUFFIX}/pkgconfig" )
+tde_setup_install_path( PKGCONFIG_INSTALL_DIR
"${EXEC_INSTALL_PREFIX}/lib${LIB_SUFFIX}/pkgconfig" )
##### tqtinterface sources ######################
It isn't applied in the latest GIT tree -- do we need it?
--
David C. Rankin, J.D.,P.E.
Cal, Pawel, Baho, all,
To keep things straight with PKGBUILDs and source files (including PKGBUILD
and patches, etc..) between those that build with Qt3 and those utilizing TQt3,
I have simply made a name change:
All Qt3 based packages and sources will be trinity-xxx. Eg:
trinity-tqtinterface
trinity-arts
All TQt3 based packages will be tde-xxx. Eg:
tde-tqtinterface
tde-arts
...and so on. Let me know your thoughts on this. I thought this made more sense
than monkeying with the $pkgver or other variables.
--
David C. Rankin, J.D.,P.E.
This message is from tdelibs/kinit/kinit.cpp. They appear in the xession log.
I don't mind the messages and I can see from the source code they are intended to be debugging aids.
But they lack information. How do I add the process name to the message?
Like this:
PID 10804 (process name) terminated.
With that information the message might remain useful only for debugging, but at least the message appears more useful and informational to users.
Darrell
I'm trying to download the git files as an anonymous user.
When it starts downloading, everything goes fine for the first 43 megs
and 50 files. All the files are put in the correct place in my build
tree--but then it stops downloading and displays:
-----------------
Cloning into experimental...
Password:
-----------------
When pressed enter, it started downloading again. But from then
on--every minute or so it would stop downloading and request a
password.
I Googled and read the man page, several tutorials and HowTo articles
but found nothing that seemed to apply to this problem.
I am using a fresh Slackware 13.37 install less KDE4 and my version of
git is 1.7.4.4.
I used this get command from the Trinity Project GIT Information page first:
git clone --recursive http://scm.trinitydesktop.org/scm/git/tde $GIT_TREE
Then I tried this instead, since some articles used this syntax:
git clone http://scm.trinitydesktop.org/scm/git/tde --recursive $GIT_TREE
The results were identical in both cases.
($GIT_TREE is the variable for the name of the directory where I save
the files.)
Does anyone have any idea what I am doing wrong?
I can't sit there for hours just waiting to press the enter key... I
could rig the script to send enter everytime it sees "Password:" but I
would rather know if there is something wrong before I start trying to
build a workaround kludge.
Keith
Continuing to shed light on my issue.
The same appeared on second host. Both have Ubuntu 'Precise' on it.
GCC version is different: 4.6.2 vs 4.5.3. cmake version: 2.8.5 vs
2.8.7. Looks like these two are not the cause of the problem. I should
really look at uic sources.
Will remind what's going on:
[ 18%] Building CXX object
kdeui/CMakeFiles/kdeui-shared.dir/kshortcutdialog_simple.cpp.o
/home/midenok/src/kde/tdelibs/build.debug/kdeui/kshortcutdialog_simple.cpp:
In constructor ‘KShortcutDialogSimple::KShortcutDialogSimple(QWidget*,
const char*)’:
/home/midenok/src/kde/tdelibs/build.debug/kdeui/kshortcutdialog_simple.cpp:31:50:
error: invalid use of incomplete type ‘struct QLabel’
Adding '#include <qlabel.h>' to kshortcutdialog_simple.cpp fixes it.
But moves straight to similar error:
[ 10%] Building CXX object
tdeui/CMakeFiles/tdeui-shared.dir/kshortcutdialog_advanced.cpp.o
/home/midenok/src/kde/tdelibs/build.debug/tdeui/kshortcutdialog_advanced.cpp:
In constructor ‘KShortcutDialogAdvanced::KShortcutDialogAdvanced(QWidget*,
const char*)’:
/home/midenok/src/kde/tdelibs/build.debug/tdeui/kshortcutdialog_advanced.cpp:33:58:
error: invalid use of incomplete type ‘struct QButtonGroup’
Looking at kshortcutdialog_simple.ui shows:
<widget class="TQLabel" row="0" column="0">
I suppose uic must add any q*.h include to any TQ* class it finds in .ui?