info-inventor
[Top] [All Lists]

Re: solaris compilation

To: Jarek Rzepecki <jarekr@xxxxxxxx>
Subject: Re: solaris compilation
From: "Tamstorf, Rasmus" <Rasmus.Tamstorf@xxxxxxxxxx>
Date: Tue, 17 Sep 2002 11:44:02 -0700 (PDT)
Cc: <info-inventor@xxxxxxxxxxx>
In-reply-to: <Pine.GSO.4.40.0209171324160.10913-100000@xxxxxxxxxxxxxx>
Sender: info-inventor-bounce@xxxxxxxxxxx
The problem is that the Solaris compiler has all the prototypes for single 
precision math functions in sunmath.h. - And if I remember right (I don't 
have a Solaris box available here), you have to link against libsunmath to 
get the corresponding implementations. 

I've seen quite a few posts about building Inventor on Solaris using g++, 
but I'm not sure anyone has made it through with the Sun compiler. 

Rasmus

On Tue, 17 Sep 2002, Jarek Rzepecki wrote:

> Hello!
>    I have a following problem when trying to compile OIV on Solaris:
> gmake[2]: Entering directory `/home/jarekr/inventor/tools/ppp'
> CC         -I. -I../../lib/database/include
> -I../../lib/interaction/include -I../../lib/nodekits/include
> -I../../libSoXt/include -DIVPREFIX=\"/usr\"       -O -DNDEBUG   -c ppp.c++
> CC: Invalid input file name ppp.c++, no output generated for this file.
> CC  -L/home/jarekr/Unix-OpenInv//usr/lib   ppp.o           -lm  -o ppp
> ld: fatal: file ppp.o: cannot open file: No such file or directory
> ld: fatal: File processing errors. No output written to ppp
> 
> 
> So i have changed ppp.c++ to ppp.cpp and it worked but:
> 
> gmake[2]: Entering directory `/home/jarekr/inventor/tools/ppp'
> CC         -I. -I../../lib/database/include
> -I../../lib/interaction/include -I../../lib/nodekits/include
> -I../../libSoXt/include -DIVPREFIX=\"/usr\"       -O -DNDEBUG     -c -o
> ppp.o ppp.cpp"../../lib/database/src/sb/SbCylinder.c++", line 224: Error:
> The function "sqrtf" must have a prototype.
> "../../lib/database/src/sb/SbLine.c++", line 189: Warning: pos hides
> SbLine::pos.
> "../../lib/database/src/sb/SbLine.c++", line 189: Warning: dir hides
> SbLine::dir.
> "../../lib/database/src/sb/SbMatrix.c++", line 590: Error: Cannot cast
> from const float(*)[4] to SbMatrix.
> "../../lib/database/src/sb/SbMatrix.c++", line 590: Error: Formal argument
> in of type const SbMatrix& in call to SbMatrix::affine_inverse(const
> SbMatrix&, SbMatrix&) const is being passed int.
> "../../lib/database/src/sb/SbMatrix.c++", line 1315: Error: Cannot assign
> float(*)[4] to SbMatrix without "SbMatrix::operator=(const SbMatrix&)";.
> "../../lib/database/src/sb/SbMatrix.c++", line 1357: Error: Cannot assign
> float(*)[4] to SbMatrix without "SbMatrix::operator=(const SbMatrix&)";.
> "../../lib/database/src/sb/SbRotation.c++", line 101: Error: The function
> "acosf" must have a prototype.
> 
> etc...
> What is wrong?
> Thank you...
>       Jarek


<Prev in Thread] Current Thread [Next in Thread>