POV-Ray : Newsgroups : povray.unofficial.patches : Unable to compile Uberpov on FreeBSD 10 Server Time
9 Dec 2024 09:11:34 EST (-0500)
  Unable to compile Uberpov on FreeBSD 10 (Message 1 to 6 of 6)  
From: jhu
Subject: Unable to compile Uberpov on FreeBSD 10
Date: 15 Sep 2014 22:00:00
Message: <web.541798a1e1fd62ffd19b0ec40@news.povray.org>
It compiles fine on Ubuntu 14.04. On FreeBSD 10, using gcc 4.8, I get the
following:

depbase=`echo optout.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`; g++ -DHAVE_CONFIG_H
-I. -I..   -I..  -I../source/backend  -I../source/base  -I../source/frontend
-I../unix  -I../vfe  -I../vfe/unix -I/usr/local/include/SDL -I/usr/local/include
-D_GNU_SOURCE=1 -D_REENTRANT -D_THREAD_SAFE -pthread
-I/usr/local/include/OpenEXR    -pthread -I/usr/local/include  -I/usr/include
-pipe -Wno-multichar -Wno-write-strings -fno-enforce-eh-specs
-Wno-non-template-friend -s -O3 -ffast-math -D_THREAD_SAFE -pthread -MT optout.o
-MD -MP -MF $depbase.Tpo -c -o optout.o optout.cpp && mv -f $depbase.Tpo
$depbase.Po
In file included from backend/frame.h:67:0,
                 from optout.cpp:42:
../base/colour.h: In member function 'pov_base::GenericTrans<COLOUR_T>::Channel
pov_base::GenericTrans<COLOUR_T>::LegacyOpacity(const Colour&) const':
../base/colour.h:1132:28: error: 'col' was not declared in this scope
             return Opacity(col);
                            ^
In file included from backend/frame.h:67:0,
                 from optout.cpp:42:
../base/colour.h: In constructor
'pov_base::GenericTransColour<CT>::GenericTransColour(const Colour&,
pov_base::GenericTransColour<CT>::Channel,
pov_base::GenericTransColour<CT>::Channel)':
../base/colour.h:1933:13: error: class 'pov_base::GenericTransColour<CT>' does
not have any field named 'mFilter'
             mFilter(filter),
             ^
../base/colour.h:1934:13: error: class 'pov_base::GenericTransColour<CT>' does
not have any field named 'mTransm'
             mTransm(transm)
             ^
*** Error code 1

Stop.
make[2]: stopped in /tank/jhu/temp/UberPOV-master/source
*** Error code 1

Stop.
make[1]: stopped in /tank/jhu/temp/UberPOV-master
*** Error code 1

Stop.

Should there be something in front of 'col'? And what to do about mFilter and
mTransm?


Post a reply to this message

From: clipka
Subject: Re: Unable to compile Uberpov on FreeBSD 10
Date: 16 Sep 2014 04:05:36
Message: <5417ef50@news.povray.org>
Am 16.09.2014 03:55, schrieb jhu:
> It compiles fine on Ubuntu 14.04. On FreeBSD 10, using gcc 4.8, I get the
> following:
>
> depbase=`echo optout.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`; g++ -DHAVE_CONFIG_H
> -I. -I..   -I..  -I../source/backend  -I../source/base  -I../source/frontend
> -I../unix  -I../vfe  -I../vfe/unix -I/usr/local/include/SDL -I/usr/local/include
> -D_GNU_SOURCE=1 -D_REENTRANT -D_THREAD_SAFE -pthread
> -I/usr/local/include/OpenEXR    -pthread -I/usr/local/include  -I/usr/include
> -pipe -Wno-multichar -Wno-write-strings -fno-enforce-eh-specs
> -Wno-non-template-friend -s -O3 -ffast-math -D_THREAD_SAFE -pthread -MT optout.o
> -MD -MP -MF $depbase.Tpo -c -o optout.o optout.cpp && mv -f $depbase.Tpo
> $depbase.Po
> In file included from backend/frame.h:67:0,
>                   from optout.cpp:42:
> .../base/colour.h: In member function 'pov_base::GenericTrans<COLOUR_T>::Channel
> pov_base::GenericTrans<COLOUR_T>::LegacyOpacity(const Colour&) const':
> .../base/colour.h:1132:28: error: 'col' was not declared in this scope
>               return Opacity(col);
>                              ^

Ah, dammit... looks like the compiler is trying to compile a template 
that isn't even used yet, and therefore poorly tested...

Try changing line 1130 (!) from

         inline Channel LegacyOpacity(const Colour&) const

to

         inline Channel LegacyOpacity(const Colour& col) const


> In file included from backend/frame.h:67:0,
>                   from optout.cpp:42:
> .../base/colour.h: In constructor
> 'pov_base::GenericTransColour<CT>::GenericTransColour(const Colour&,
> pov_base::GenericTransColour<CT>::Channel,
> pov_base::GenericTransColour<CT>::Channel)':
> .../base/colour.h:1933:13: error: class 'pov_base::GenericTransColour<CT>' does
> not have any field named 'mFilter'
>               mFilter(filter),
>               ^
> .../base/colour.h:1934:13: error: class 'pov_base::GenericTransColour<CT>' does
> not have any field named 'mTransm'
>               mTransm(transm)
>               ^

Try chaning lines 1933 and 1934 from

             mFilter(filter),
             mTransm(transm)

to

             mTrans(filter, transm)

This is probably also code that's not actually used yet.


I hate BSD (and GNU/Linux, for that matter). They keep exposing sloppy 
non-ANSI-compliant code that works so nicely on Windows. :-P


If the above works for you, please remind me to add the fix to UberPOV 
or POV-Ray, wherever that code originates from.


Post a reply to this message

From: jhu
Subject: Re: Unable to compile Uberpov on FreeBSD 10
Date: 16 Sep 2014 10:45:01
Message: <web.54184c89a13d505ed19b0ec40@news.povray.org>
clipka <ano### [at] anonymousorg> wrote:

> This is probably also code that's not actually used yet.
>
>
> I hate BSD (and GNU/Linux, for that matter). They keep exposing sloppy
> non-ANSI-compliant code that works so nicely on Windows. :-P
>
>
> If the above works for you, please remind me to add the fix to UberPOV
> or POV-Ray, wherever that code originates from.

Thanks that works so far, until...
depbase=`echo base/colour.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`; g++
-DHAVE_CONFIG_H -I. -I..   -I..  -I../source/backend  -I../source/base
-I../source/frontend  -I../unix  -I../vfe  -I../vfe/unix
-I/usr/local/include/SDL -I/usr/local/include -D_GNU_SOURCE=1 -D_REENTRANT
-D_THREAD_SAFE  -pthread -I/usr/local/include  -I/usr/include  -pipe
-Wno-multichar -Wno-write-strings -fno-enforce-eh-specs -Wno-non-template-friend
-s -O3 -ffast-math -D_THREAD_SAFE -pthread -MT base/colour.o -MD -MP -MF
$depbase.Tpo -c -o base/colour.o base/colour.cpp && mv -f $depbase.Tpo
$depbase.Po
base/colour.cpp: In instantiation of 'static void
pov_base::ColourModelInternal4::MetamericNormalize(CHANNEL_T*) [with CHANNEL_T =
float; MODEL_FROM_T = pov_base::ColourModelRGB]':
base/colour.cpp:148:119:   required from here
base/colour.cpp:54:86: error: dependent-name 'MODEL_FROM_T:: Whitepoint' is
parsed as a non-type, but instantiation yields a type
     const ColourChannel* pWhitepoint =
GetWhitepointVector<MODEL_FROM_T::Whitepoint>();

     ^
base/colour.cpp:54:86: note: say 'typename MODEL_FROM_T:: Whitepoint' if a type
is meant
base/colour.cpp: In instantiation of 'static void
pov_base::ColourModelInternal4::MetamericNormalize(CHANNEL_T*) [with CHANNEL_T =
double; MODEL_FROM_T = pov_base::ColourModelRGB]':
base/colour.cpp:149:119:   required from here
base/colour.cpp:54:86: error: dependent-name 'MODEL_FROM_T:: Whitepoint' is
parsed as a non-type, but instantiation yields a type
base/colour.cpp:54:86: note: say 'typename MODEL_FROM_T:: Whitepoint' if a type
is meant
*** Error code 1


Post a reply to this message

From: jhu
Subject: Re: Unable to compile Uberpov on FreeBSD 10
Date: 16 Sep 2014 13:30:00
Message: <web.5418729fa13d505e51f2f3170@news.povray.org>
"jhu" <nomail@nomail> wrote:
> clipka <ano### [at] anonymousorg> wrote:
>
> > This is probably also code that's not actually used yet.
> >
> >
> > I hate BSD (and GNU/Linux, for that matter). They keep exposing sloppy
> > non-ANSI-compliant code that works so nicely on Windows. :-P
> >
> >
> > If the above works for you, please remind me to add the fix to UberPOV
> > or POV-Ray, wherever that code originates from.
>
> Thanks that works so far, until...
> depbase=`echo base/colour.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`; g++
> -DHAVE_CONFIG_H -I. -I..   -I..  -I../source/backend  -I../source/base
> -I../source/frontend  -I../unix  -I../vfe  -I../vfe/unix
> -I/usr/local/include/SDL -I/usr/local/include -D_GNU_SOURCE=1 -D_REENTRANT
> -D_THREAD_SAFE  -pthread -I/usr/local/include  -I/usr/include  -pipe
> -Wno-multichar -Wno-write-strings -fno-enforce-eh-specs -Wno-non-template-friend
> -s -O3 -ffast-math -D_THREAD_SAFE -pthread -MT base/colour.o -MD -MP -MF
> $depbase.Tpo -c -o base/colour.o base/colour.cpp && mv -f $depbase.Tpo
> $depbase.Po
> base/colour.cpp: In instantiation of 'static void
> pov_base::ColourModelInternal4::MetamericNormalize(CHANNEL_T*) [with CHANNEL_T =
> float; MODEL_FROM_T = pov_base::ColourModelRGB]':
> base/colour.cpp:148:119:   required from here
> base/colour.cpp:54:86: error: dependent-name 'MODEL_FROM_T:: Whitepoint' is
> parsed as a non-type, but instantiation yields a type
>      const ColourChannel* pWhitepoint =
> GetWhitepointVector<MODEL_FROM_T::Whitepoint>();
>
>      ^
> base/colour.cpp:54:86: note: say 'typename MODEL_FROM_T:: Whitepoint' if a type
> is meant
> base/colour.cpp: In instantiation of 'static void
> pov_base::ColourModelInternal4::MetamericNormalize(CHANNEL_T*) [with CHANNEL_T =
> double; MODEL_FROM_T = pov_base::ColourModelRGB]':
> base/colour.cpp:149:119:   required from here
> base/colour.cpp:54:86: error: dependent-name 'MODEL_FROM_T:: Whitepoint' is
> parsed as a non-type, but instantiation yields a type
> base/colour.cpp:54:86: note: say 'typename MODEL_FROM_T:: Whitepoint' if a type
> is meant
> *** Error code 1

Ok, solved this by doing what the compiler note says (add typename).

Now I get:

backend/povray.cpp:30:115 error: expected ')' before 'SSE2_INCLUDED'
     BRANCH_FULL_NAME STANDALONE_VER " Version %s", BRANCH_FULL_VERSION
COMPILER_VER SSE2_INCLUDED);


Post a reply to this message

From: clipka
Subject: Re: Unable to compile Uberpov on FreeBSD 10
Date: 16 Sep 2014 14:49:44
Message: <54188648@news.povray.org>
Am 16.09.2014 19:25, schrieb jhu:

> Now I get:
>
> backend/povray.cpp:30:115 error: expected ')' before 'SSE2_INCLUDED'
>       BRANCH_FULL_NAME STANDALONE_VER " Version %s", BRANCH_FULL_VERSION
> COMPILER_VER SSE2_INCLUDED);

Something's wrong there - povray.cpp line 30 is right within the header 
comment, and (of course) reads entirely different.


Post a reply to this message

From: jhu
Subject: Re: Unable to compile Uberpov on FreeBSD 10
Date: 16 Sep 2014 19:05:00
Message: <web.5418c128a13d505ed19b0ec40@news.povray.org>
clipka <ano### [at] anonymousorg> wrote:
> Am 16.09.2014 19:25, schrieb jhu:
>
> > Now I get:
> >
> > backend/povray.cpp:30:115 error: expected ')' before 'SSE2_INCLUDED'
> >       BRANCH_FULL_NAME STANDALONE_VER " Version %s", BRANCH_FULL_VERSION
> > COMPILER_VER SSE2_INCLUDED);
>
> Something's wrong there - povray.cpp line 30 is right within the header
> comment, and (of course) reads entirely different.

Got rid of the SSE2_INCLUDED and it compiles now.


Post a reply to this message

Copyright 2003-2023 Persistence of Vision Raytracer Pty. Ltd.