Bug 129737 - compilation fails since include macros are missing
Summary: compilation fails since include macros are missing
Status: RESOLVED FIXED
Alias: None
Product: boson
Classification: Applications
Component: general (show other bugs)
Version: unspecified
Platform: Gentoo Packages Linux
: NOR normal
Target Milestone: ---
Assignee: The Boson Team
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2006-06-24 10:05 UTC by Michael
Modified: 2006-06-25 12:08 UTC (History)
0 users

See Also:
Latest Commit:
Version Fixed In:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Michael 2006-06-24 10:05:13 UTC
Version:           0.12 (using KDE KDE 3.4.3)
Installed from:    Gentoo Packages
Compiler:          gcc-Version 3.4.4 (Gentoo 3.4.4-r1, ssp-3.4.4-1.0, pie-8.7.8) 
OS:                Linux

As I tried to compile bouniteditor, compilation failed. First error:

/var/tmp/portage/boson-0.12/work/boson-all-0.12/build/code/boson/programs/bouniteditorbase.cpp: In constructor `BoUnitEditorBase::BoUnitEditorBase(QWidget*, const char*, uint)':
/var/tmp/portage/boson-0.12/work/boson-all-0.12/build/code/boson/programs/bouniteditorbase.cpp:88: Fehler: invalid use of undefined type `struct KIntNumInput'

I've edited the "bouniteditorbase.cpp" and added
#include <knuminput.h>
#include <klineedit.h>

Then, the compilation succeded. But the problem is that "bouniteditorbase.cpp" is somehow autogenerated from "bouniteditorbase.ui" in "boson-all-0.12/code/boson/programs/". I looked inside that file and found out, that it is possible to give "includehints". These two files are mentioned several times. May this confuse the "c++-generator"? May it be that my "c++-generator" is too old? I'm currently using kde-3.4.3 and qt-3.3.4
Comment 1 Andreas Beckermann 2006-06-24 14:47:59 UTC
Hi
that's a cmake bug: The Qt uic binary on your system apparently cannot find the KDE plugin and thus won't include these files. The includehints tag is meant to tell uic that these files should be included - but uic will do so only, if it can find the KDE plugin.

To fix this, please edit the file "kde3uic.cmake" which can be found in the "share/CMake/Modules/" directory of your cmake installation. Usually this is /usr/share/CMake/Modules/kde3uic.cmake.
There please replace the line 
EXECUTE_PROCESS(COMMAND uic
by
EXECUTE_PROCESS(COMMAND uic -L /kde_prefix/lib/kde3/plugins/designer

Replace the "kde_prefix" by the output of kde-config --prefix.
The full line line my machine (debian) is
EXECUTE_PROCESS(COMMAND uic -L /usr/lib/kde3/plugins/designer/

On SuSE you'd probably use /opt/kde3 instead of /usr. I think gentoo uses /usr/kde/3.

This problem will be fixed in the next version of Boson: I have just added a fix to our svn.

CU
Andi
Comment 2 Michael 2006-06-25 12:08:06 UTC
On gentoo, the path is /usr/kde/3.4/lib/kde3/plugins/designer/ I added it and now boson compiles. Big thx!