Hi Patric,
On Fri, 2005-12-02 at 12:41 +0100, Patric Schmitz wrote:
> > We still have a small sparc whatever lying around so I can try
> > to resurrect it tomorrow and see what is going to happen.
> That would be great.
>
> I have tried to compile the stable 1.6.0 version on Solaris. I used:
> bash configure --enable-glut --with-compiler=CC
>
> (the configure script seems to use bash-specific functions, and my
> default shell is ksh)
> that works well.
OK.
> when i do a 'make', i get hundreds of (identical) errors:
>
> "/home/ps790413/work/OpenSG/Source/Base/Base/OSGBaseTypeTraits.h", line
> 800: Error: The function "strtof" must have a prototype.
> "/home/ps790413/work/OpenSG/Source/Base/Base/OSGBaseTypeTraits.h", line
> 865: Error: The function "strtof" must have a prototype.
> "/home/ps790413/work/OpenSG/Source/Base/Base/OSGBaseTypeTraits.h", line
> 990: Error: The function "strtold" must have a prototype.
>
> after some investigation, i found out that these (C99) functions are
> simply not implemented in sun's c++ standard library. so i went and
> wrote some simple wrapper functions.
> In Source/Base/Base i created a OSGSunWrapper.cpp and .h. there i
> defined an osg_strtof and osg_strtold which contain an an #ifdef SUN
> (use strtod + cast) #else use normal function calls.
> then i replaced the occurences of strtold and strtof in
> OSGBaseTypeTraits.h with those.
> Then i added a -DSUN to the SYSTEM_DEFINES in
> common.sparc-sun-solaris2.9-CC.mk.
> The errors vanish.
I'd prefer using the standard Sun define ("__sun") instead of adding a
new one.
> Then make begins to build the whole project, but new errors occur:
> "/home/ps790413/work/OpenSG/Source/System/NodeCores/Drawables/Geometry/OSGGeoPropNormals.h":
>
> line 198: Error: "," expected instead of "StoredFieldType".
> line 199: Error: Use ";" to terminate declarations.
>
> "/home/ps790413/work/OpenSG/Source/System/NodeCores/Drawables/Geometry/OSGGeoPropNormals.inl",
>
> line 159: Error: ")" expected instead of "&".
> line 162: Error: v is not defined.
> line 163: Error: v is not defined.
> line 164: Error: v is not defined.
> line 167: Error: Vec3b is not defined.
> line 169: Error: The function "Vec3b" must have a prototype.
> line 178: Error: Pointer type needed instead of int.
> line 185: Error: Pointer type needed instead of const int.
> line 193: Error: Pointer type needed instead of int.
> ...
>
> Have errors of this kind appeared before, are there known solutions?
> Or do i have to investigate it myself and add even more (maybe
> sun-specific ifdefs) changes to the source?
We had some trouble in the past with the Sun compiler, which forced us
to disable byte Vectors and Points, which apparently is not toally
consistent any more. Can you try removing the # define OSG_NO_INT8_PNT
in OSGConfig.h around line 764 (the __sun case) and see if the current
version of the compiler can handle it? If that doesn't help we need to
add some more #ifndef OSG_NO_INT8_PNT around some things. This sounds
very fixable.
Yours
Dirk
-------------------------------------------------------
This SF.net email is sponsored by: Splunk Inc. Do you grep through log files
for problems? Stop! Download the new AJAX search engine that makes
searching your log files as easy as surfing the web. DOWNLOAD SPLUNK!
http://ads.osdn.com/?ad_id=7637&alloc_id=16865&op=click
_______________________________________________
Opensg-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/opensg-users