Talk:Development/Tutorials/First program: Difference between revisions

Page contents not supported in other languages.
From KDE TechBase
(KApplication use)
 
(11 intermediate revisions by 4 users not shown)
Line 2: Line 2:


: I agree with Matt. I usually add a ''Initial Author:'' at the bottom for pages from the old developer wiki code, because they wrote it with often no explicit copyright information. See also [[Talk:Development/Architecture|this page]] --[[User:Dhaumann|Dhaumann]] 17:36, 4 January 2007 (CET)
: I agree with Matt. I usually add a ''Initial Author:'' at the bottom for pages from the old developer wiki code, because they wrote it with often no explicit copyright information. See also [[Talk:Development/Architecture|this page]] --[[User:Dhaumann|Dhaumann]] 17:36, 4 January 2007 (CET)
== ‘ki18n’ was not declared in this scope ==
I don't know if this is the place to post this, but I tried to follow this tutorial and get an "error: ‘ki18n’ was not declared in this scope", when trying to compile using the big command gcc main.cpp ...
:Well I change a little the code so it now compiles under KDE4, it seems that the constructor of KAboutDate was changed...
== Build ==
Does the g++ command work for you as described?
I needed to add -lQtXml, lQtSvg and lQtNetwork.
: I'm getting a 'huge' string of error messages in the underlying include/ files, things like
<code>
include/KDE/../kmessagebox.h:1128: error: expected constructor, destructor, or type conversion before ‘(’ token
</code>
but hundreds, possibly thousands of errors apparently affecting nearly every header.
::I personally haven't tried the g++ method, that was added by someone else. Does linking against those libraries fix the errors? Does it work for you with the cmake method? --[[User:Milliams|milliams]] 20:47, 25 January 2008 (CET)
:::Thanks you, Milliams, it complies with cmake.  I copied the g++ instructions, including the additional options, straight from the page and still no joy.
== Make and run before explaining the code ==
As far as I can see,
it presents the code,
explains it,
shows how to build with g++ (without cmake),
building with cmake,
finally running it
Well, I would prefer it to present code and run it (with no explaining), like to a monkey. After showing it works, explaining why it works or how it works.
I would find that much more fun this way.
Got any ideas why it should not be that way?
--Bogdan Bivolaru
== The constructor of KAboutData has changed ==
...or maybe not, I don't know, but in the API doc it is defined with the last two arguments as QByteArray datatype.
I was translating this tutorial in italian and, in order to solve this problem, I'd added QByteArray("string...") to the homepage and bugs mail arguments in the main.cpp code (with the right #include of course).
Now it build and run like a charm. Maybe it is needed to propagate this little mod over all the tutorial serie? --[[User:Fresbeeplayer|Fresbeeplayer]] 12:18, 28 November 2008 (UTC)
== How KApplication object has been used ==
The tutorial creates KApplication object 'app'. But this object has not been used in the program. When I tried compiling after commenting the line 'KApplication app', it gave an error saying I should create a KApplicaion object before I can create other windows. Can some one explain me what is the black magic it is doing there?

Latest revision as of 04:01, 27 September 2009

Adding authors to wiki pages seems counterintuitive to me. The wiki is editable by everybody. Why does it matter who the author of a tutorial is? IMHO the only thing that matters is that the tutorial is kept up to date. --Mattr 03:31, 4 January 2007 (CET)

I agree with Matt. I usually add a Initial Author: at the bottom for pages from the old developer wiki code, because they wrote it with often no explicit copyright information. See also this page --Dhaumann 17:36, 4 January 2007 (CET)

‘ki18n’ was not declared in this scope

I don't know if this is the place to post this, but I tried to follow this tutorial and get an "error: ‘ki18n’ was not declared in this scope", when trying to compile using the big command gcc main.cpp ...

Well I change a little the code so it now compiles under KDE4, it seems that the constructor of KAboutDate was changed...

Build

Does the g++ command work for you as described? I needed to add -lQtXml, lQtSvg and lQtNetwork.

I'm getting a 'huge' string of error messages in the underlying include/ files, things like

include/KDE/../kmessagebox.h:1128: error: expected constructor, destructor, or type conversion before ‘(’ token but hundreds, possibly thousands of errors apparently affecting nearly every header.

I personally haven't tried the g++ method, that was added by someone else. Does linking against those libraries fix the errors? Does it work for you with the cmake method? --milliams 20:47, 25 January 2008 (CET)
Thanks you, Milliams, it complies with cmake. I copied the g++ instructions, including the additional options, straight from the page and still no joy.

Make and run before explaining the code

As far as I can see,

it presents the code,
explains it, 
shows how to build with g++ (without cmake), 
building with cmake, 
finally running it

Well, I would prefer it to present code and run it (with no explaining), like to a monkey. After showing it works, explaining why it works or how it works. I would find that much more fun this way. Got any ideas why it should not be that way? --Bogdan Bivolaru

The constructor of KAboutData has changed

...or maybe not, I don't know, but in the API doc it is defined with the last two arguments as QByteArray datatype. I was translating this tutorial in italian and, in order to solve this problem, I'd added QByteArray("string...") to the homepage and bugs mail arguments in the main.cpp code (with the right #include of course). Now it build and run like a charm. Maybe it is needed to propagate this little mod over all the tutorial serie? --Fresbeeplayer 12:18, 28 November 2008 (UTC)


How KApplication object has been used

The tutorial creates KApplication object 'app'. But this object has not been used in the program. When I tried compiling after commenting the line 'KApplication app', it gave an error saying I should create a KApplicaion object before I can create other windows. Can some one explain me what is the black magic it is doing there?