Getting a bad interpreter error when using brew
What you are getting means that Homebrew has not been able to locate the Ruby interpretter at the specified location.
Install Apple Developer Kit (comes with Xcode) which should be available to you as an optional install (or you can simply download it from Apple). This will install the Ruby interpreter for you.
In case you already have Xcode installed, this means that one of these things is happening:
- You have a broken Ruby installation
- You have more than one Ruby installation
- Your installation has not been configured properly.
To identify if this is the first case, you can run ruby
and see if you get any response.
If you don't, your installation is broken and you need to reinstall it. If you do, you then run which ruby
. This should give you the absolute path to your Ruby executable. If this is anything other than /usr/bin/ruby
then homebrew (and a bunch of other programs) will not be able to find it.
In case you have not ever tampered with your Ruby installation, you can check to see if /usr/bin/ruby
already exists or not: cat /usr/bin/ruby
. If you get No such file or directory
, then you can easily create a symbolic link to your Ruby installation. Assuming the output of which ruby
to by /usr/local/bin/ruby
, you create the symbolic link this way: sudo ln -s /usr/local/bin/ruby /usr/bin/ruby
and all should be well.
If there is a file at that location, you can run file /usr/bin/ruby
to see if it's a real file, a symbolic link, or a corrupted file. If it is a symbolic link, your installation should be working, and since it's not, it probably is either a corrupted symlink or it's a bogus file.
You can remedy that by first deleting it (sudo rm /usr/bin/ruby
) and then creating a new symlink to the correct location (sudo ln -s /usr/local/bin/ruby /usr/bin/ruby
).
If non of the above works, you should consult the homebrew team after a clean install of Xcode and removing any traces of a Ruby installation on your system.
EDIT
Alternatively, as pointed out by the other answers, the issue might be because of a bad ruby version in your Homebrew settings.
A quick fix might be updating your Homebrew:
cd /usr/local
git pull -q origin refs/heads/master:refs/remotes/origin/master
If this does not help, you might want to get your hands dirty and manually fix the problem by:
- Editing
brew.rb
from/user/local/Library/brew.rb
- Changing
/1.8/
to/Current/
in the first line, which will cause the hashbang to point to the current Ruby version as the executor
If this does not help, either, you can also modify the MACOS
check and change it from 10.5 to 10 to avoid the infamous "Homebrew requires Leopard or higher" error.
DISCLAIMER
A bunch of thanks to other contributors in the answers below and their commenters. I am not committing plagiarism, simply aggregating the answers into one integrated article to help others.
When trying to install pg gem: Brew bad interpreter error and not existing ruby version
Okay, I got it - I've edited the file: /usr/local/bin/brew
and edited ther (first line) the path: from /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/bin
to /usr/local/bin/ruby/
and it works now..
Anyone knows how to change default system Ruby path to this one? (to avoid problems with other programs in the future).
/bin/sh^M: bad interpreter: No such file or directory
I don't know how carriage returns ended up in your brew file, but you can remove them using dos2unix
or by piping it through tr -d '\r'
.
Example:
tr -d '\r' < /usr/local/bin/brew > myfixedbrew
Once verified, you can use
mv myfixedbrew /usr/local/bin/brew && chmod a+x /usr/local/bin/brew
to replace the old one.
Running pod setup gives me bad interpreter: No such file or directory error
i fixed it by running brew install ruby
AWS throws the following error: bad interpreter: No such file or directory
Option 1
Type
brew uninstall awscli
Then
brew install awscli
update python to 3.9.
look in the following post.
If this approach does not work for you, then try :
Option 2
Go to https://www.python.org/ and use the GUI installer for your OS
pip3 install awscli
jupyter notebook bad interpreter error message
You must have installed jupyter with another package manager such as pip
. You can try pip uninstall jupyter
followed by brew install jupyter
.
If you get the message:
Error: The `brew link` step did not complete successfully
The formula built, but is not symlinked into /usr/local
Could not symlink bin/jupyter
Target /usr/local/bin/jupyter already exists.
You can try brew link --overwrite jupyter
as suggested.
Related Topics
What Does Class_Eval ≪≪-"End_Eval", _File_, _Line_ Mean in Ruby
Rspec: Expect VS Expect With Block - What's the Difference
Ruby: Problem Installing Eventmachine Under Windows 7
How to Do Relative Time in Rails
Ruby: "Gem Install Bundler" Not Installing Bundler
The Class/Object Paradox Confusion
Rails Dot Instead of Slash in Url
How Do Rvm and Rbenv Actually Work
Converting String from Snake_Case to Camelcase in Ruby
Rails 4.0 Strong Parameters Nested Attributes With a Key That Points to a Hash
How to Count Duplicates in Ruby Arrays
Ruby Gsub Doesn't Escape Single-Quotes
Serve Current Directory from Command Line
Has Anyone Tried Installing Ruby & Rubygems from Source on Ubuntu (Preferably Ubuntu 9)
How to Parse a CSV File, Update a Field, Then Save
Ruby Array Subtraction Without Removing Items More Than Once