gnuspeech-contact
[Top][All Lists]
Advanced

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

[gnuspeech-contact] Fwd: Ubuntu & GNUstep


From: David Hill
Subject: [gnuspeech-contact] Fwd: Ubuntu & GNUstep
Date: Tue, 30 Jun 2009 10:48:01 -0700

Hi Xianghang Liu,

I mentioned your problem to a friend who is not on the gnuspeech mailing list but who is experienced with GNU/Linux. I've attached his reply.

All good wishes.

david
---------

Since the operating system of my computer is Ubuntu

Ubuntu is a carefully-packaged distribution based on Gentoo, and intended to
give an easy install to those unable or unwilling to get deeply into the
technical side of configuring the system. As such, it is very similar to the stable-branch Gentoo Linux that I (and all my family) use, so my experience
may be relevant.

I prefer to work on the GNUstep port.
Although I have no experience in Object-C,

Regrettably, I am also inexperienced in Objective-C, and am not a GNUstep
user.

I downloaded the GNUstep version of the code via svn and tried to
compile it under my Ubuntu system.  I just follow the steps as
described in INSTALL.GNUstep. But I got some errors:
make[1]: Entering directory `/home/xianghang/Projects/trunk/
Applications/Monet/Extensions'
Making all for library libMonetExtensions...
 Compiling file NSPopUpButton-Extensions.m ...
In file included from NSPopUpButton-Extensions.m:20:
NSPopUpButton-Extensions.h:24: error: expected ‘)’ before ‘NSInteger’
NSPopUpButton-Extensions.m:26: error: expected ‘)’ before ‘NSInteger’
NSPopUpButton-Extensions.m: In function ‘-[NSPopUpButton
(Extensions) selectItemWithTag:]’:
NSPopUpButton-Extensions.m:28: warning: passing argument 1 of
‘indexOfItemWithTag:’ makes integer from pointer without a cast
make[2]: *** [obj/NSPopUpButton-Extensions.o] Error 1
make[1]: *** [libMonetExtensions.all.library.variables] Error 2

I suspect this is all a result of compiling with a different version of the GNU C compiler gcc. Recent versions are much pickier about errors. Gentoo recently moved from 4.1.2 to 4.3.2 in the stable branch, and it was a riot. Some apps (e.g. showimg) which compile perfectly happily under 4.1.2 *still* waont compile under 4.3.2. If you compare the gcc version you use with that
used by your new member, you will likely find a difference.

Of more concern is the fact that the error may, in fact, be genuine. It is certainly a show-stopper in this compiler version. Without knowing the code, I can scarcely say more. Sometimes when an apparent error of this sort is seen when using a new compiler, I find it helpful to look at the preprocessed
code with macro expansion complete (in gcc, add -E to all your usual
switches). I've usually found that if one fixes such a problem to make a
later compiler work, the code remains compatible with earlier compilers.

I try to ward this by turning on just about every warning in sight, and
keeping my compiles warning-free. Counter-intuitively, merely turning
on -Wall does not do this. In the makefile, I typically write:

# Warning flags - the persnickety old curmudgeon version
WARNINGS = -Wall -W -Wcast-align -Wcast-qual  \
-Wmissing-declarations -Wmissing-prototypes -Wnested- externs \
           -Wpointer-arith -Wredundant-decls -Wreturn-type -Wshadow \
-Wstrict-prototypes -Wswitch -Wunused -Wwrite-strings - Winline

and add ${WARNINGS} to CFLAGS. Not all these may be applicable in Objective-C, and others may be worthwhile. Even with this, I still sometimes have work to
do on compiler version changes.

Then I tried to just compile the Synthesizer application. It seems
to be built successfully but when I execute it I got an error
"Failed to load Gorm". Since I am not familiar with this project
and GNUStep either, I do not know what is the mistake.

With the above errors, he is missing a library or at least a section of one.
Probably once the compiler errors are fixed this will vanish.

Hope this is some help,
--





reply via email to

[Prev in Thread] Current Thread [Next in Thread]