On Thu, Jun 9, 2011 at 6:43 AM, Marek Stepanek <marekstepa...@yahoo.co.uk> wrote: > > But perhaps this list could help me, to get @INC and $PERL5LIB clean of /sw > ... How is it possible, that I have $PERL5LIB set to > > %ENV: > PERL5LIB="/sw/lib/perl5:/sw/lib/perl5/darwin" > > I only see two files: > > ~/.profile > > and > > ~/.tcshrc
PERL5LIB can be set in either one; which one is executed depends on what shell you're using. The current default shell is Bash, which reads .profile - at one point in ancient history, the default was Tcsh, which reads .tcshrc. > in the first file I only have one line: > > test -r /sw/bin/init.sh && . /sw/bin/init.sh If you haven't changed your default shell, that's the culprit. It executes Fink's init.sh script, which exports the PERL5LIB environment variable. Again, this behavior goes back a while - they used to think it was a good idea for the system Perl to be able to see modules that Fink had installed under /sw/lib. I haven't used Fink in a while - I switched to MacPorts - but I *thought* they stopped doing that after a few Mac OS X releases, each with a new version of Perl that disagreed with those modules, showed them how problematic that was. If you've been migrating for a while, that line in .profile could be a remnant from an old install. At any rate, delete (# or comment) that line, exit from the shell session and start a new one, and that should clear up your PERL5LIB variable. > To export the right PERL5LIB, can I add the following line to ~/.tcshrc > > set PERL5LIB = (/System/Library/Perl/5.10.0:/Library/Perl/5.10.0) That wouldn't accomplish anything - PERL5LIB just adds to the default paths, and the above are already in the default. > Syntax seems alright, but I have still the /sw path at the beginning: Did you log out of the current shell session, and back in? These startup files are only processed when you start a new shell session, not every time they're changed. sherm-- -- Cocoa programming in Perl: http://camelbones.sourceforge.net