У меня не было проблем с добавлением новых пакетов CPAN в поставляемый Perl OSX El Capitan. По умолчанию они встроены в ваш домашний каталог и установлены в /Library/Perl/5.18/ доступном для записи с правами root.
Упоминаемый вами префикс /sw/ , похоже, происходит из установки Fink . Если вы ранее установили другой Perl из Fink, вам, вероятно, необходимо обновить установку Fink и обновить пакет perl, исходящий от него.
Если вы уверены, что не используете Fink и хотите запустить другую версию Perl, кроме той, которая поставляется с OS X, вы можете использовать ту из homebrew. Он будет установлен в /usr/local и будет доступен для его вызова, но все Perl-программы OSX будут продолжать использовать версию perl, поставляемую с OSX. Помните, что Fink и Homebrew плохо играют друг с другом, лучше придерживаться одного.
Наконец, если вы хотите запустить несколько версий perl и иметь возможность переключаться между ними, я бы посоветовал вам взглянуть на perlbrew.
Некоторые другие полезные команды для дальнейшей отладки вашей установки perl:
which perl скажет вам, где установлен ваш текущий Perl Exec
perl -V предоставит вам больше информации о версии perl, дате его компиляции и опциях, а также о путях включения, которые ищутся для модулей
perldoc perllocal покажет вам модули perl, которые вы установили локально с CPAN
Что касается CPAN, как вы заметили, обычное обновление CPAN не выполняется. Однако существует решение, говорящее CPAN об установке в /usr/local/bin/ . Я задокументировал обновление CPAN в этом ответе .