Few weeks back I updated to the latest Linux Mint offering "Maya" a.k.a Linux Mint 13. Now this is a LTS (Long Term Support) version and I wanted to be in a position to install everything right just so I can keep it for a longer duration and hence have been taking my time configuring stuff.
Last time when I had set up system for Android Development I remember messing up a lot and ending up installing too many things here and there and in the process did learn how to do it properly. I did not document that as a blog as it was too fragmented an experience at that time but this time round I did it properly and everything (well, okay, almost everything) was perfect.
There is lot of material on the web but again that is what led to a less than perfect install last time as it is all disjointed, making the sequence go wrong, using one way for one thing another way for second and ending us with a not so nice experience distracting you from what you want to do, start developing something on android platform or perhaps just get the adb set-up to flash your nexus phone.
So presented below is a guide that will help you prepare your Linux Mint 13 or equivalent distro for you to start android development.
You will notice that these notes do not require downloading "android sdk" separately and that is to save time and effort, trust me.
So the high level steps are:
Step 1: Download required files
Step 2: Install Oracle Java (or what is called sun-java on Android webpages)
Step 3: Install eclipse
Step 4: Install ADT Plug-in for Eclipse
Step 5: Final Configurations
Step 6: Create Android Virtual Device
Step 1: Download required files
Download following files:
Links to original file locations:
Script to Update Java
Java 7 SDK
Java 7 Samples and Demo
Java 7 API Docs
Java 6 Samples and Demo
Java 6 API Docs
Java 6 SDK
If you don't want to move around different webpages and websites, I have also uploaded all these files on mediafire.
http://www.mediafire.com/?4x3u3if9o7dy4
Step 2: Install Oracle Java
You might ask, why do we need to do it this way?
That's because Oracle Java 6 SDK is a pre-requisite for installing Android SDK but it's not available in Ubuntu or Linux Mint repository so it can't be installed using synaptic or apt-get.
Right then, I am assuming that all the files downloaded above are placed in "Downloads" directory. If not, please replace "Downloads" in all commands with whichever directory you have downloaded these file to.
1. Open terminal and type:
2. Make the downloaded .bin Java 6 file executable and run using following commands:
This will create a directory named "jdk1.6.0_37".
3. Untar the Java 7 SDK by typing following command in terminal:
This will create a directory named "jdk1.7.0_07".
4. Unzip the Java 6 api docs by typing following command in terminal:
This command will unzip the apidocs zip file and place the contents in "jdk1.6.0_37"
5. Unzip the Java 7 api docs by typing following command in terminal:
This command will unzip the apidocs zip file and place the contents in "jdk1.7.0_07"
6. Untar the Java 6 demos and samples using following command in terminal:
This command will untar the demos and samples file and place the contents in "jdk1.6.0_37"
7. Untar the Java 7 demos and samples using following command in terminal:
This will create a folder named jdk1.7.0_09. Copy the contents of this folder into jdk1.7.0_07.
8. Move the Java 6 to it's proper location using following command in the terminal:
You will be asked to provide root password.
9. Now move the Java 7 to it's proper location using following command in the terminal:
10. Make the script toupdate java update-java-0.5b executable and then execute it by using following commands in terminal.
You will be presented with following selection box:
12. Once Java 6 SDK is installed repeat step 10 and this time when you reach the selection window select Java 7 as shown below.
Step 3: Install eclipse
1. Open Synaptic package manager and type eclipse, click on the check-box next to it and select "Mark for installation" then click on "Apply" as shown below.
2. Once Eclipse is installed, we need to find out whether the necessary SWT (Standard Widget Toolkit) libraries link are set correctly or not. This is to avoid Eclipse throwing a tantrum and not starting because it is unable to find the SWT library. As you can see in the screenshot below it's a pretty quick thing:
A) First type the following command to check if whether SWT directory exists or not:
If you see the same message as shown in screenshot above "ls: cannot access /home//.swt/lib/linux/x86/: No such file or directory", then it means we need to create the SWT directory so continue to sub-step B.
If this command does not result in this message nor does it show a list of files (blue text in screenshot) then skip directly to sub-step C.
If it does show the list of files in blue in above screenshot, you don't need to do anything further and for you it's time to move to next step.
B) Type the following command in terminal to create the SWT directory:
C) If the swt directory exist, but nothing is listed (no blue text), then run the following command in terminal:
Finally as shown in screenshot, type the command in sub-step A once again and you should see the list shown in blue on the screenshot:
Time to move on to install ADT (Android Development Tools Plugin on eclipse.
Step 4: Install ADT Plug-in for Eclipse
OK we have so far installed Java, installed eclipse and now we are all set to install Android. To do so we will follow the screenshots below:
Now the android SDK is installed on the system along with other things. Close all the open windows just to clear any screen clutter. Now open the terminal and type following commands:
It will open the following window:
Step 5: Final Configurations
adb Environmental Variables
1. Go to home folder
2. Press Ctrl+H
4. Open the file in gedit and add the following at the end, if you created the file yourself just add this line and save.
Last time when I had set up system for Android Development I remember messing up a lot and ending up installing too many things here and there and in the process did learn how to do it properly. I did not document that as a blog as it was too fragmented an experience at that time but this time round I did it properly and everything (well, okay, almost everything) was perfect.
There is lot of material on the web but again that is what led to a less than perfect install last time as it is all disjointed, making the sequence go wrong, using one way for one thing another way for second and ending us with a not so nice experience distracting you from what you want to do, start developing something on android platform or perhaps just get the adb set-up to flash your nexus phone.
So presented below is a guide that will help you prepare your Linux Mint 13 or equivalent distro for you to start android development.
You will notice that these notes do not require downloading "android sdk" separately and that is to save time and effort, trust me.
So the high level steps are:
Step 1: Download required files
Step 2: Install Oracle Java (or what is called sun-java on Android webpages)
Step 3: Install eclipse
Step 4: Install ADT Plug-in for Eclipse
Step 5: Final Configurations
Step 6: Create Android Virtual Device
Step 1: Download required files
Download following files:
Script to Update Java
(Updated link to the latest version of script as highlighted in screenshot.)
Java 7 SDK
Java 7 Samples and Demo
Java 7 API Docs
Java 6 Samples and Demo
Java 6 API Docs
Java 6 SDK
If you don't want to move around different webpages and websites, I have also uploaded all these files on mediafire.
http://www.mediafire.com/?4x3u3if9o7dy4
Step 2: Install Oracle Java
You might ask, why do we need to do it this way?
That's because Oracle Java 6 SDK is a pre-requisite for installing Android SDK but it's not available in Ubuntu or Linux Mint repository so it can't be installed using synaptic or apt-get.
Right then, I am assuming that all the files downloaded above are placed in "Downloads" directory. If not, please replace "Downloads" in all commands with whichever directory you have downloaded these file to.
1. Open terminal and type:
cd Downloads
2. Make the downloaded .bin Java 6 file executable and run using following commands:
chmod a+x jdk-6u37-linux-i586.bin
./jdk-6u37-linux-i586.bin
This will create a directory named "jdk1.6.0_37".
3. Untar the Java 7 SDK by typing following command in terminal:
tar -xvf jdk-7u7-linux-i586.tar.gz
This will create a directory named "jdk1.7.0_07".
4. Unzip the Java 6 api docs by typing following command in terminal:
unzip jdk-6u30-apidocs.zip -d jdk1.6.0_37/
This command will unzip the apidocs zip file and place the contents in "jdk1.6.0_37"
5. Unzip the Java 7 api docs by typing following command in terminal:
unzip jdk-7u6-apidocs.zip -d jdk1.7.0_07/
This command will unzip the apidocs zip file and place the contents in "jdk1.7.0_07"
6. Untar the Java 6 demos and samples using following command in terminal:
tar -xvf jdk-6u37-linux-i586-demos.tar.gz
This command will untar the demos and samples file and place the contents in "jdk1.6.0_37"
7. Untar the Java 7 demos and samples using following command in terminal:
tar -xvf jdk-7u9-linux-i586-demos.tar.gz
This will create a folder named jdk1.7.0_09. Copy the contents of this folder into jdk1.7.0_07.
8. Move the Java 6 to it's proper location using following command in the terminal:
sudo mv jdk1.6.0_37 /usr/lib/jvm
You will be asked to provide root password.
9. Now move the Java 7 to it's proper location using following command in the terminal:
sudo mv jdk1.7.0_07 /usr/lib/jvm
10. Make the script to
chmod +x update-java-0.5b
sudo ./update-java-0.5b
You will be presented with following selection box:
11. Once you click on OK you will be presented with following screen:
Select the radio button and click on OK |
12. Once Java 6 SDK is installed repeat step 10 and this time when you reach the selection window select Java 7 as shown below.
Select the radio button shown and click on OK |
Now Oracle Java 6 and Oracle Java 7 will both be installed on your system. To check this you can use the tool "galternatives". This can be installed by typing following command on the terminal window:
sudo apt-get install galternatives
galternatives
This will open the "G Alternatives" window, scroll down to "Java" in left hand pane and click on it. You should see both versions installed and radio button for highest version selected as shown below:
Step 3: Install eclipse
1. Open Synaptic package manager and type eclipse, click on the check-box next to it and select "Mark for installation" then click on "Apply" as shown below.
2. Once Eclipse is installed, we need to find out whether the necessary SWT (Standard Widget Toolkit) libraries link are set correctly or not. This is to avoid Eclipse throwing a tantrum and not starting because it is unable to find the SWT library. As you can see in the screenshot below it's a pretty quick thing:
A) First type the following command to check if whether SWT directory exists or not:
ls ~/.swt/lib/linux/x86/
If you see the same message as shown in screenshot above "ls: cannot access /home/
If this command does not result in this message nor does it show a list of files (blue text in screenshot) then skip directly to sub-step C.
If it does show the list of files in blue in above screenshot, you don't need to do anything further and for you it's time to move to next step.
B) Type the following command in terminal to create the SWT directory:
mkdir -p ~/.swt/lib/linux/x86/
C) If the swt directory exist, but nothing is listed (no blue text), then run the following command in terminal:
ln -s /usr/lib/jni/libswt-* ~/.swt/lib/linux/x86/
Finally as shown in screenshot, type the command in sub-step A once again and you should see the list shown in blue on the screenshot:
Time to move on to install ADT (Android Development Tools Plugin on eclipse.
Step 4: Install ADT Plug-in for Eclipse
OK we have so far installed Java, installed eclipse and now we are all set to install Android. To do so we will follow the screenshots below:
Here Click on Help > Install New Software. This will open following window. |
Click on "Add" button in red rectangle above. Following pop-up window will appear. |
Here select the first option "Developer Tools" and click OK. |
Click "NEXT". |
Click "NEXT". |
Let it run in foreground i.e. don't do anything and just wait. |
Click "RESTART NOW". You will be presented with following window on restart. |
Now leave the target location as is and leave everything as default and click "NEXT". |
As shown above, selected the "ACCEPT ALL" radio button and click "INSTALL". |
cd android-sdks/tools
./android
It will open the following window:
Step 5: Final Configurations
adb Environmental Variables
1. Go to home folder
2. Press Ctrl+H
3. Locate the .bashrc file, if it does not exist, create one (In home folder, right click and select "Create New Document > Empty Document"). |
4. Open the file in gedit and add the following at the end, if you created the file yourself just add this line and save.
export PATH=${PATH}:/tools: /platform-tools
1. Go to home folder
2. Press Ctrl+H
3. Locate the .profile file
4. Open the file in gedit and add the following at the end.
# set PATH so it includes user's Android SDK if it exists if [ -d "$HOME/android-sdks" ] ; then PATH="$HOME/android-sdks:$HOME/android-sdks/tools:$PATH" fi
Set-up udev
This step is only required if you want to use your android device for development purpose or if you want to flash a custom ROM.
1. Open the terminal and type following:
gksudo nautilus /etc/udev/rules.d
2. Create new document like we did above- Right click on empty space and select "Create New Document" and then "Empty Document.
3. Name this document as "51-android.rules"
4. Open the document with Gedit and add following lines - assuming you are using "Nexus S" like me, if not see if your phone details are available on this link: http://wiki.cyanogenmod.com/wiki/Udev and if not follow the guideline under the heading "Manually create udev rules" on that link.
5. Now make this 51-android.rules file executable by typing following command in the terminal window:
sudo chmod a+r /etc/udev/rules.d/51-android.rules
Step 6: Create Android Virtual Device
Open eclipse and follow the screenshots below:
Click on Window - AVD Manager to get to next screen except that in your screen there will be no entry. |
Click on "NEW" to create a new AVD. It will open next window. |
Fill details as above - You can chose name of your choice and change details as per your requirements. |
To Start the AVD, click on Start. |
This is it. Restart and your system is now all set for developing wonderful Android Applications.
-Ankit.
Changelog:
06/11/2011 - Updated the link to update java script and corrected minor typos.
Under 9. you wrote "mv jdk1.7.0_07 /usr/lib/jvm>/pre>". Suppose you mean "mv jdk1.7.0_07 /usr/lib/jvm" and the "pre" is a malformatted html tag !?
ReplyDeleteNevertheless: Thanks for this article.
You are right, it's HTML tag...corrected it now....:)
DeleteIn Step 12. the "update-java" does not shows the options to update jdk1.7 and jdk1.6
ReplyDeleteThe script can be fixed by inserting after line "ls -1d $UBUNTU_ROOT/java-* 2>/dev/null;" the new line "ls -1d $UBUNTU_ROOT/jdk* 2>/dev/null;"
Then the modified "update-java" behaves as you descibed it.
hmm.. strange...I did not do any changes...it just worked...but thanks for leaving this comment in case some else gets similar issue they can try this.
DeleteActually you are right. Apparently it was an older version of Update-java script that I mentioned in this post. I have uploaded the right file "update-java-0.5b" and also corrected the link to original file.
DeleteThanks for pointing this out !!!
Gotta try setup this on my laptop :)
ReplyDeleteThanks again for great tutorial Ankit!
Regards
Damjan
Great article Ankit. Was able to install Eclipse and ADT perfectly. You might want to add in an extra part where the Android preferences dont show up in Eclipse-Window menu.
ReplyDeleteGoto window
Goto customize perspective
command group availability tab
on the check box android SDK and AVD manager check it
click on ok