Bennett Helm wrote:
> My output (confirming my suspicions -- at least I'm not crazy!):
>
> Env var "PATH", "/usr/bin:/bin:/usr/sbin:/sbin:/Users/bennett", is
> prepended with "/Applications/LyX-136.app/Contents/MacOS/"
> result:
How interesting! I've erased the PATH environment variable!
> lyxrc.path_prefix is
> /usr/bin:/usr/local/bin:/usr/local/teTeX/bin/powerpc-apple-darwin-
> current:/usr/X11R6/bin:/sw/bin:/opt/local/teTeX/bin
> Env var "PATH", "", is prepended with
> "/usr/bin:/usr/local/bin:/usr/local/teTeX/bin/powerpc-apple-darwin-
> current:/usr/X11R6/bin:/sw/bin:/opt/local/teTeX/bin"
> result:
So the fault lies in "prependEnvPath". Yet Andreas says that this
(identical) code works perfectly for him when using the 1.4.x version. I'm
a bit baffled.
Could you post the output of:
$ grep -e 'HAVE_SETENV' -e 'HAVE_PUTENV' config.h
Also, could you alter this function in src/support/filetools.C:
void setEnvPath(string const & name, vector<string> const & env)
{
char const separator(os::path_separator());
std::ostringstream ss;
vector<string>::const_iterator it = env.begin();
vector<string>::const_iterator const end = env.end();
for (; it != end; ++it) {
if (ss.tellp() > 0)
ss << separator;
ss << os::external_path(*it);
}
- PutEnv(name + "=" + ss.str());
+ bool const result = PutEnv(name + "=" + ss.str());
+ lyxerr << "setEnvPath(" << name << ") == " << result << std::endl;
}
--
Angus