[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Getting qtquran to compile in Kdevelop (version 0.4 - from sourceforge)



Salaam all, my first mailing here :-)

I have download the "quran" package several times and
it gives me EOF errors. Tarball corrupted methinks.

For the following comments, I am cross-referencing the
CVS sources from the *web* interface, Revision 1.6.

--- Faaiez Sallie <Faaiez at westnet dot com dot au> wrote:
> Well after some more time and:
> 
> 	compiling xmlwrapp-0-4-1
> 
> I've managed to get rid of the first two errors.
> I am now left with these:
> 
>         qtquran.h:44: error: syntax error before `*'
> token 

line 44: quran_audio * qa;

GCC doesn't see the defenition for the type
"quran_audio". You will either need to run ctags/etags
on your project to get the cross-referencing info
(highly recommended.) or you will need to grep for it.
Grep will return ALL the occurences of "quran_audio"
and no just the defenition.

I will save you the chase however and tell you what my
gut feeling is about this type. If you look at
quran/libquran, you will see the files quranaudio.h
and  .c. If anything, quran_audio should have been
defined there (as logic dictates.) but I guess what we
are looking at is just the framework and the
maintainer hasn't gotten around to implementing
"quran_audio" just yet. So, what you're looking at
might not be ready yet :-(



>         qtquran.h:70: error: parse error before `{'
> token 

If the defenition of "mainWindow" follows the rest of
the clean design of the project, then the class
mainWindow should be defined in the header
"mainwindow.h", which also I THINK is going to be
generated from mainwindow.ui by some preprocessor. I
am not a Qt guy .. yet.

[snip errors from line 71 to 139]
these are nothing but cascading errors. Once
mainWindow's header is properly included, half of
these  errors will disappear.


>         main.cpp: In function `int main(int,
> char**)': 

For main.cpp, I am looking at Revision 1.5 in the CVS.

>         main.cpp:44: error: `quran_init' undeclared
> (first use this
>         function) 

Just to show you how clean and idiomatic the code is,
I immediately guessed the location where the function
quran_init() is defined: quran/libquran/quran.h,
altough it could have also been in
quran/libquran/init.h.

To fix this, you will have to add this to the top of
main.cpp:
#include "quran.h", right after the inclusion of
qtranslator.h (i.e. after the Qt headers.)

[snip]

>         main.cpp:53: error: `QTQURAN_SHARE_DIR'
> undeclared (first use
>         this function) 

If you look closely, is is calling
QTranslator::load().
Look at the Qt API (google) and you will see that the
second argument is supposed to be a constant qt
string,
but the code is calling it as

QTranslator::load( ..., QTQURAN_SHARE_DIR "/lng");

it is trying to concatenate QTQURAN_SHARE_DIR and
"/lang", so I am guessing that QTQURAN_SHARE_DIR is
actually an string /somewhere/ and the author gave it
this convenience macro defenition.

OTOH, it might as well be a type, he might have meant
QTQURAN_SHARED with a D. Or it might even be a
legitimate piece of code accepted by the Qt or C
preprocessors. We can't say much with cross-referncing
tools.

[snip the rest of the code]

These "declared but never defined" errors are nothing
but "You have created the header file, now implement
the source." I think you are looking at incomplete
code . 
 
> If anyone has any ideas, please don't hesitate to
> let me know.

Shoot me a non-corrupted tarball at kkhawi at pobox dot com
and I will look at it over the weekend.

Salamaati wa Ta7iyaati.

__________________________________
Do you Yahoo!?
Yahoo! Calendar - Free online calendar with sync to Outlook(TM).
http://calendar.yahoo.com