nel-all
[Top][All Lists]
Advanced

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

[Nel] compilation issues on Linux gcc 3.2.2


From: Matthew Griffin
Subject: [Nel] compilation issues on Linux gcc 3.2.2
Date: 15 Mar 2004 20:46:42 -0500

Hi there,

I've been trying for a few days to get a clean build of NeL on Linux
(not quite RH not quite Fedora) with GCC 3.2.2.  I've gotten past the
STLport problems that seem to be so common and I've run into some typing
issues that I haven't seen any discussion of in the archives.  I
apologize if I'm a bit rusty on the C/C++ but I've been making better
money with PL/I lately ;)  

Here are the issues I've encountered up to where I'm stuck:
1. STLPort 4.6 makefiles use compiler specific target names for the
libraries they create.  ie)libstlport_gcc.so (which obviously will not
be found) Also, they install by default to /usr/local and nel looks in
/usr.  Changed makefile, all good.

2. gcc is smart enough to know that (on my 32 bit system) unsigned char
is uint8, uint is uint32, and sint is sint32.  So calling
NL_TRIVIAL_TYPE_TRAITS for both is deemed redundant and causes an
error.  Commented out lines for sint, uint, and unsigned char in
misc/traits_nl.h.  Will this come back to haunt me?  There's probably
going to be different but similar occurrences of this for people with
different (64 bit) systems.

3. gcc attempts to find errors early and and some instances will be
unable to correctly determine what is a type and what is a value so
typename must be explicitly used when this happens (this is what I
gather from google).  In 3d/ps_attrib.h, the line 
typedef CPSVector<T>::V TContType; 
seems like it should read
typedef typename CPSVector<T>::V TContType;

4. I can't resolve this make error:
In file included from ../../src/3d/ps_particle_basic.h:33,
                 from ../../src/3d/ps_dot.h:29,
                 from ../../src/3d/ps_particle.h:34,
                 from particle_system.cpp:38:
../../src/3d/ps_plane_basis.h: At global scope:
../../src/3d/ps_plane_basis.h:101: ISO C++ forbids declaration of `
   NL_TRIVIAL_TYPE_TRAITS' with no type

I've taken a look at how the macro would expand and this seems to be
related to the previous problem but I'm not familiar enough with the
template magic being used to figure a way around this.  

I'd really appreciate any help or feedback.

\Matt






reply via email to

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