POV-Ray : Newsgroups : povray.unix : Further bugs in Makefile : Re: Further bugs in Makefile Server Time
23 Apr 2024 08:30:58 EDT (-0400)
  Re: Further bugs in Makefile  
From: Le Forgeron
Date: 31 Mar 2014 04:01:55
Message: <533920f3$1@news.povray.org>
Le 30/03/2014 18:35, James Holsenback a écrit :
> On 03/30/2014 07:19 AM, Hadmut Danisch wrote:
>> Hi,
>>
>> more problems in 3.7 build process.
>>
>> After applying the workarounds discussed here I could finish compiling.
>>   A 'make install' installs a binary into /usr/local/bin, which starts,
>> but does not really work due to missing files:
>>
>> % povray
>> povray: cannot open the system configuration file
>> /usr/local/etc/povray/3.7/povray.conf: No such file or directory
>> povray: cannot open the user configuration file
>> /home/hadmut/.povray/3.7/povray.conf: No such file or directory
>> povray: I/O restrictions are disabled
>>
>>
>>
>> make install simply does not install /usr/local/etc/povray/3.7
>>
>>
>> Instead it tries to install $HOME/.povray into users home directories
>> and even fails to do so: chown fails since variable povowner is empty.
>>
>>
>>
>> However:
>>
>> This is really bad.
>>
>>
>> A make install should  *never, under no circumstances* fiddle around in
>> users directories. That's no go.  Things have to be installed under
>> /usr/local.
>>
>>
>>
>> regards
>> Hadmut
> 
> not 100% sure but what i think maybe going on here is what privileges
> were being used during the different steps of the build. generally
> speaking elevated privileges are not required until you do make install.
> but your case would have required required some juice to do the prebuild
> part ... to effect changes in the system area's (sym-links and files). i
> think to install the binary and related distribution in non system
> area's without privileges you should change that at configure phase.
> 

I believe, but I might be wrong, that the install process of povray (on
unix-like) is currently a bit problematic due to a long inherited history.

Previously, it was a tar-ball for systems ranging from amiga to whatever
commercial-unix (Aix, Hpux and so). It was usually more for personal
usage than collective tools.

When compiling and installing a tar-ball, the culture, nowadays lost, is
to make everything under a lambda user, and then having root run "make
install" once the result of the building process has been checked.
(hence "make check"). Today it turns into "sudo make install"

The issue I currently see with the install process is rather that the
povray binary is expecting local configuration in the user directory
without providing a way to get a template-basic local configuration
files from the binary itself: the user which performs the installation
does get the configuration file, but the 200 other users of the system
do not.

For the unix binary, something like "povray --localconfig" (maybe a
better name for the option would be welcome) should allow the running
user to have its $HOME populated with the relevant .povray/3.7/ subtree
(3.7 being the version of the binary, as usual), basically a copy of the
installed files in /usr/local/etc/povray/3.7 (or whatever INSTALLDIR
instead of /usr/local). BTW, that's probably not the best location (as
recommended by the current version of unified file system, but is the
Linux Filesystem Hierarchy to rules all Unixes ?)

Alternatively, the "povary --localconfig" could be replaced with a shell
script "povray-localinstall" (or similar) which perform the copy,
avoiding a kludge in the main program. Such program would have to be run
by the user when it wants to have its own local configuration files.

/usr/etc (and /usr/local/etc) are reported as being the alternative
place for configuration files, yet virtually unused. (But should povray
dare to add entries in /etc instead ?)

>
http://www.tldp.org/LDP/Linux-Filesystem-Hierarchy/html/Linux-Filesystem-Hierarchy.html

>
http://www.linuxtopia.org/online_books/linux_beginner_books/linux_filesystem/usr.html

I suck at naming things, so feel free to provide better names, or even
your opinions.






-- 
Just because nobody complains does not mean all parachutes are perfect.


Post a reply to this message

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