|
 |
Le_Forgeron <jgr### [at] free fr> wrote:
> I wonder a bit about the construct
>
> while ( !Stream.eof() )
> {
> // get and preprocess line
> std::getline(Stream, line);
> line = pre_process_conf_line(line);
> ++line_number;
>
> // skip empty line
> if(line.length() == 0)
> continue;
>
In my case, this loop was an endless loop. line.length() was always 0 and the
Stream.eof() never returned true (at least I checked this until line_number =
9).
I was interested in which file was actually parsed here:
(gdb) print conf_name
$7 = (const std::locale::string &) @0x92f7f8: {
static npos = 18446744073709551615,
_M_dataplus = {<std::allocator<char>> = {<__gnu_cxx::new_allocator<char>> =
{<No data fields>}, <No data fields>},
_M_p = 0x92f928 "/home/bioinfp/jang/.povray/3.7/povray.conf"}}
And now it gets funny:
ls -ahl /home/bioinfp/jang/.povray/3.7/
[...]
1.5K drwxr-xr-x 2 jang bioinfp 2 2011-06-08 15:50 povray.conf/
povray.conf was a directory in my case. I removed it, restarted 'make check' and
the test worked fine (X window opened..."POV-Ray finished").
I think the path /home/bioinfp/jang/.povray/3.7/ existed due to some former
tries of myself to 'make install' povray. I have no idea why this povray.conf
existed as a _directory_ -- it may be my fault from earlier times. But you maybe
could add some more dir/file checking so that povray never tries to read lines
from a directory :-)
I removed ~/povray and invoked 'make install'. Now, there is only one small
problem left:
Creating data directories...
Copying data files...
Creating documentation directories...
Copying documentation files...
Creating user directories...
chown: changing ownership of `/home/bioinfp/jang/.povray': Operation not
permitted
chown: changing ownership of `/home/bioinfp/jang/.povray/3.7': Operation not
permitted
make[2]: *** [install-data-local] Error 1
make[2]: Leaving directory `/home/bioinfp/jang/sumpf/povray-3.7.0.RC3'
make[1]: *** [install-am] Error 2
make[1]: Leaving directory `/home/bioinfp/jang/sumpf/povray-3.7.0.RC3'
make: *** [install-recursive] Error 1
The installation works, but what does the make script try to do with the
permissions? And yes, my home directory is a mounted NFS.
Thanks for your help,
Jan-Philip
Post a reply to this message
|
 |