POV-Ray : Newsgroups : povray.unix : Re: povray 3.6 make error: problem solved : Re: povray 3.6 make error: problem solved Server Time
3 Jul 2024 05:10:51 EDT (-0400)
  Re: povray 3.6 make error: problem solved  
From: Nicolas Calimet
Date: 29 Jul 2004 06:14:52
Message: <4108ce1c$1@news.povray.org>
> export CPLUS_INCLUDE_PATH=${CPLUS_INCLUDE_PATH}:/dir/to/add:/another/one
> 
> which is done to prevent overwriting any formerly set CPLUS_INCLUDE_PATH,
> but has the side effect of adding "." to CPLUS_INCLUDE_PATH if it *isn't*
> set.

	Indeed.  This behaviour is also documented in the gcc man/info pages.

	Now the question is: why do you prepend $CPLUS_INCLUDE_PATH in the
first place ?  I'd expect to _append_ it to your own list of paths, thus
preventing this implicit "." to be added automatically:

export CPLUS_INCLUDE_PATH=/dir/to/add:/another/one:${CPLUS_INCLUDE_PATH}

	Doing so seems more logical (to me).
	For instance: your system contains a library that you want to
replace by a newer version you installed in /dir/to/add (assuming this
directory is in your user space, and is not rooted as written here).
Prepending the /dir/to/add path is the only way to let the compiler
"see" the newer version first.  Otherwise, appending this path to
those given in the former CPLUS_INCLUDE_PATH could simply have no
effect: maybe there is another, older version of this library in the
initial CPLUS_INCLUDE_PATH's.

> Surprisingly, this is the first time it actually
> borked up a compile attempt...

	Among other possibilities:
- The new build system is not mature yet, maybe there's some deep issue
   here that I overlooked;
- Not so many packages automatically configure & build the required
   independent third-party libraries;
- Not sure how many people use the *_INCLUDE_PATH in general (honestly
   I didn't know about it before you reported the problem)  ;-)

	Anyway, version 3.6.1 will have configure handle this situation
automatically (at least my tests seem to work).

	- NC


Post a reply to this message

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