Not able to access adb in OS X through Terminal, "command not found"
I have installed Android SDK and Eclipse on my Mac system. I am able to program using Eclipse and have created few sample applications. But I am still not able to access adb
through the terminal window. I have tried following command in terminal:
$ pwd
/Users/espireinfolabs/Desktop/soft/android-sdk-mac_x86/platform-tools
$ ls
NOTICE.txt dexdump llvm-rs-cc-2
aapt dx llvm-rs-cc.txt
adb lib source.properties
aidl llvm-rs-cc
$ adb --help
-bash: adb: command not found
I have also added the ls
output so that you know in which window I am.
Solution 1:
The problem is: adb
is not in your PATH
. This is where the shell looks for executables. You can check your current PATH
with echo $PATH
.
Bash will first try to look for a binary called adb
in your Path, and not in the current directory. Therefore, if you are currently in the platform-tools
directory, just call
./adb --help
The dot is your current directory, and this tells Bash to use adb
from there.
But actually, you should add platform-tools
to your PATH
, as well as some other tools that the Android SDK comes with. This is how you do it:
-
Find out where you installed the Android SDK. This might be (where
$HOME
is your user's home directory) one of the following (or verify via Configure > SDK Manager in the Android Studio startup screen):- Linux:
$HOME/Android/Sdk
- macOS:
$HOME/Library/Android/sdk
- Linux:
-
Find out which shell profile to edit, depending on which file is used:
- Linux: typically
$HOME/.bashrc
- macOS: typically
$HOME/.bash_profile
- With Zsh:
$HOME/.zshrc
- Linux: typically
-
Open the shell profile from step two, and at the bottom of the file, add the following lines. Make sure to replace the path with the one where you installed
platform-tools
if it differs:export ANDROID_HOME="$HOME/Android/Sdk" export PATH="$ANDROID_HOME/tools:$ANDROID_HOME/tools/bin:$ANDROID_HOME/platform-tools:$PATH"
Save the profile file, then, re-start the terminal or run
source ~/.bashrc
(or whatever you just modified).
Note that setting ANDROID_HOME
is required for some third party frameworks, so it does not hurt to add it.
Solution 2:
For zsh
users. Add alias adb='/Users/<yourUserName>/Library/Android/sdk/platform-tools/adb'
to .zshrc
file.
Than run source ~/.zshrc
command
Solution 3:
In addition to slhck, this is what worked for me (mac).
To check where your sdk is located.
- Open Android studio and go to:
File -> Project Structure -> Sdk location
Copy the path.
Create the hidden
.bash_profile
in your home.- (open it with
vim
, oropen -e
) with the following:
export PATH=/Users/<Your session name>/Library/Android/sdk/platform-tools:/Users/<Your session name>/Library/Android/sdk/tools:$PATH
- Then simply use this in your terminal:
. ~/.bash_profile
SO post on how to find adb devices
Solution 4:
Quick Answer
Pasting this command in terminal solves the issue in most cases:
** For Current Terminal Session:
- (in macOS) export PATH="~/Library/Android/sdk/platform-tools":$PATH
- (in Windows) i will update asap
** Permanently:
-
(in macOS) edit the
~/.bash_profile
usingvi ~/.bash_profile
and add this line to it: export PATH="~/Library/Android/sdk/platform-tools":$PATH
However, if not, continue reading.
Detailed Answer
Android Debug Bridge, or adb for short, is usually located in Platform Tools and comes with Android SDK, You simply need to add its location to system path. So system knows about it, and can use it if necessary.
Find ADB's Location
Path to this folder varies by installation scenario, but common ones are:
- If you have installed Android Studio, path to ADB would be: (Most Common)
- (in macOS) ~/Library/Android/sdk/platform-tools
- (in Windows) i will update asap
-
If you have installed Android Studio somewhere else, determine its location by going to:
- (in macOS) Android Studio > Preferences > Appearance And Behavior > System Settings > Android SDK and pay attention to the box that says: Android SDK Location
- (in Windows) i will update asap
- However Android SDK could be Installed without Android studio, in this case your path might be different, and depends on your installation.
Add it to System Path
When you have determined ADB's location, add it to system, follow this syntax and type it in terminal:
-
(in macOS)
export PATH="your/path/to/adb/here":$PATH
for example: export PATH="~/Library/Android/sdk/platform-tools":$PATH