[Q] Rebuilding adb.exe for windows - Android Software Development

Hi,
I patched the adb source code to allow for syncing a device tree to my local system (e.g. only copy files that are not already copied before) so I can do incrmenetal backups of the phone sotrage and externa sdcard.
The linux binary I build from that source works fine!
However, I also want to build the adb for windows. At first site all seems well, but when I run the adb.exe on a windows host it just does nothing. I just gets back to the command prompt without any output, not even the usage info when you run adb without andy command line options. I added a small debug printf as the first thing it does, but still no output.
So I'm seeking help on hwo to properly build adb.exe.
Here is what I have.
Development environment on a Fedora-20 64-bit machine
Installed the mingw-32-gcc toolset.
Setup 'repo' and downloaded the sdk sources.
. build/envsetup.sh
lunch sdk-eng (also tried aosp_arm-eng and aosp_x86-eng)
make adb -> gets me a working linux adb
USE_MINGW=1 make adb -> gets me an adb.exe (and api dlls) but it just does nothing, no output now window1s errors, nothing
The file type seems fine:
file adb.exe
adb.exe: PE32 executable (console) Intel 80386, for MS Windows​
which is the same as an older working adb.exe I downloaed form xda-dveloppers
Any help is much appreciated,
Thanks

How to rebuild adb tool for mac machine?

Related

[Guide] ADB with Galaxy S in Ubuntu *Updated 9-10-10*

I still see a lot of people having trouble with ADB in ubuntu, so here is quick guide for anyone still having trouble.
The guide is located HERE and also can be viewed on post #12
*Updated 9-10-10* Thanks to xipher_zero for his very quick and easy guide (Much better than my original).
Hope this helps some people having issues.
If I install unbuntu it overrides my win7 correct?
Sent from my SGH-T959 using XDA App
Oh my!! I've been searched for this guide for a long time Thanks you so much MR.the3dman
Wykedx
Oh boy... where to get started. You could install Ubuntu without overwriting your W7 installation. Then you would "dual boot" your computer. As it boots up, you choose which OS to load. Or of course you could install Ubuntu on a computer by itself.
You don't need to install Ubuntu just to use ADB. ADB runs on both Win and Linux. What is it that you are trying to do? If you just want to learn linux, then make yourself a live CD and you won't have to worry about overwriting any operating systems.
But this is not a linux forum. If this is something that you are interested in, then google is your friend.
if you are interested in trying ubuntu, you might check this out: http://wubi-installer.org/. or just run a LiveCD, as already suggested.
Do you happen to have a HTC??
My output of lsusb:
Code:
Bus 002 Device 002: ID 04e8:681d Samsung Electronics Co., Ltd
Shouldn't /etc/udev/rules.d/51-android.rules contain 04e8 instead of 0bb4?
And no, even that didn't help me. I'm on Ubuntu Lucid Lynx 64 bit.
fantasyzer said:
Do you happen to have a HTC??
My output of lsusb:
Code:
Bus 002 Device 002: ID 04e8:681d Samsung Electronics Co., Ltd
Shouldn't /etc/udev/rules.d/51-android.rules contain 04e8 instead of 0bb4?
And no, even that didn't help me. I'm on Ubuntu Lucid Lynx 64 bit.
Click to expand...
Click to collapse
Thanks for noticing that! I have updated the rules with the correct ones. I have an htc also and uploaded the wrong rules. I am also on Ubuntu Lucid 64 bit and this is what worked for me. I also have done this on my netbook which runs 9.10 so I am really not sure what the issue is then. Did you use ADB from the sdk or from the app inventor adb in the guide?
If I read correctly when browsing for this topic, your instruction is to drop in these rule files, and then run adb using sudo
When using sudo to run adb, it'll always work, regardless of what's in your rules file
If you have your rules file correct, you don't need to do sudo adb
Just adb will work fine
animefans said:
If I read correctly when browsing for this topic, your instruction is to drop in these rule files, and then run adb using sudo
When using sudo to run adb, it'll always work, regardless of what's in your rules file
If you have your rules file correct, you don't need to do sudo adb
Just adb will work fine
Click to expand...
Click to collapse
I did try this, I removed my rules and reloaded my udev folder then tried adb with sudo and it was a no go (I get nothing listed under the list of devices). Also the only way I could get adb to recognize anything without sudo was by adding a line in the rules making my user as the owner, but even still without sudo under devices I get ???????????? no permissions. With sudo and the rules everything works fine which is why I wrote the guide that way.
If you don't want to run ADB as root you can follow the steps in this post
http://forum.xda-developers.com/showpost.php?p=7282335&postcount=4 - FOR SAMSUNG ONLY DEVICES!!!
after you installed SDK.
I also have adb in my path so I do not have to be in the tools directory, and can execute it from anywhere
In my .bashrc file (if you are using bash shell)
Code:
export PATH=$PATH:/path/to/android-sdk/tools
Thanks the3dman for the guide. Unfortunately I am still having problems as when I run the sudo ./adb devices nothing is listed. I followed the directions step by step and also confirmed my Vibrant is in debug mode (also confirms on the phone it is in debug mode when connected via usb. I even rebooted everything again, double checked everything and still no devices listed. I am running Ubuntu 10.04 Any ideas? Thanks so much!
-mG
Four Step ADB installation in Ubuntu
Here is a simple guide without using custom debs:
1. Download the SDK:
wget dl.google.com/android/android-sdk_r07-linux_x86.tgz
2. Extract the archive to the current directory and move into the extracted directory.
tar xvfz android-sdk_r07-linux_x86.tgz && cd android-sdk-linux_x86
3. Move the "tools" folder to your local system folder:
sudo mv tools /usr/local/share/android-tools
4. Create a symbolic link to the adb executable:
sudo ln -s /usr/local/share/android-tools/adb /usr/local/bin/
Done!
from a terminal type:
sudo adb devices (This will start the server and search for connected devices)
Are you running Ubuntu 64bit? If so you need to make sure that you have the 32bit compatibility libraries installed. From the command line run the following:
sudo apt-get install ia32-libs
This will allow you to run 32bit apps in 32bit mode. Not sure if this is whats causing your issue, but it might be worth a shot.
xipher_zero: Thank you, I followed your steps and it is working now.
Oh, I am running 32bit Ubuntu so that was not the problem.
lqaddict said:
If you don't want to run ADB as root you can follow the steps in this post
http://forum.xda-developers.com/showpost.php?p=7282335&postcount=4 - FOR SAMSUNG ONLY DEVICES!!!
after you installed SDK.
I also have adb in my path so I do not have to be in the tools directory, and can execute it from anywhere
In my .bashrc file (if you are using bash shell)
Code:
export PATH=$PATH:/path/to/android-sdk/tools
Click to expand...
Click to collapse
This is not working for some people that is what is being figured out. I am in the process of updating my guide and the new and better one should be up shortly.
xipher_zero said:
Here is a simple guide without using custom debs:
1. Download the SDK:
wget dl.google.com/android/android-sdk_r07-linux_x86.tgz
2. Extract the archive to the current directory and move into the extracted directory.
tar xvfz android-sdk_r07-linux_x86.tgz && cd android-sdk-linux_x86
3. Move the "tools" folder to your local system folder:
sudo mv tools /usr/local/share/android-tools
4. Create a symbolic link to the adb executable:
sudo ln -s /usr/local/share/android-tools/adb /usr/local/bin/
Done!
from a terminal type:
sudo adb devices (This will start the server and search for connected devices)
Click to expand...
Click to collapse
This version worked well also! Thanks its much shorter and easier than my method.
MrGibbage said:
Wykedx
Oh boy... where to get started. You could install Ubuntu without overwriting your W7 installation. Then you would "dual boot" your computer. As it boots up, you choose which OS to load. Or of course you could install Ubuntu on a computer by itself.
You don't need to install Ubuntu just to use ADB. ADB runs on both Win and Linux. What is it that you are trying to do? If you just want to learn linux, then make yourself a live CD and you won't have to worry about overwriting any operating systems.
But this is not a linux forum. If this is something that you are interested in, then google is your friend.
Click to expand...
Click to collapse
thanks for the response, and sorrry i didn't see this before lol,
what i am trying to do is be able to use adb, at the moment I can't seem to use it because my default.prop is not correct so i heard i have to use linux to be able to edit my default prop...when i try to adb push or remount i get permission denied and yet I have superuser permission and everything.
do you have to root your phone while being an administrator on the computer?
Wykedx said:
thanks for the response, and sorrry i didn't see this before lol,
what i am trying to do is be able to use adb, at the moment I can't seem to use it because my default.prop is not correct so i heard i have to use linux to be able to edit my default prop...when i try to adb push or remount i get permission denied and yet I have superuser permission and everything.
do you have to root your phone while being an administrator on the computer?
Click to expand...
Click to collapse
Try putting your phone in clockwork recovery then issuing the adb commands, and yes your phone has to be rooted.
Thanks for the excellent how to, however...
I've still got a problem:
after "sudo adb devices" (step 5) I always get this message:
List of devices attached
??????????? no permissions;
while "lsusb" gives me that:
Bus 002 Device 007: ID 04e8:681c Samsung Electronics Co., Ltd Galaxy Portal/Spica Android Phone
so how can I solve this?
(Kubuntu 10.10 is my current os)
RiverTam said:
I've still got a problem:
after "sudo adb devices" (step 5) I always get this message:
List of devices attached
??????????? no permissions;
while "lsusb" gives me that:
Bus 002 Device 007: ID 04e8:681c Samsung Electronics Co., Ltd Galaxy Portal/Spica Android Phone
so how can I solve this?
(Kubuntu 10.10 is my current os)
Click to expand...
Click to collapse
you'll need to edit a usb rule to "look" for the samsung phone. i forgot what file to edit and what to put in there, once i find the file, i'll post it from my laptop.
EDIT: lol, i found it.
http://forum.xda-developers.com/showpost.php?p=7343021&postcount=1

[Q] Error: adb is not recogzined as an internal or external command

Error: adb is not recogzined as an internal or external command, operable program or batch file???
i successfully installed the android sdk 08 and still got this message.
Has winxp, tmobile GT
I had this same exact problem, but I was just able to get it working. First, this website is helped a lot:
http://www.londatiga.net/it/how-to-use-android-adb-command-line-tool/
Also, make sure you download the Java SDK package from the link given on that website.
Second, when the website says to "Run Windows command line tool (cmd) and go to D:\android-sdk-windows\tool" open command prompt and enter this code:
cd (enter the path to where the android SDK was installed), for example:
cd C:\android\android-sdk-windows\platform-tools
Notice how I entered "platform-tools" instead of just "tools" because this is the folder where the adb file is download with the android SDK. After you do this, you should then be able to apply adb codes (make sure the screen on your tab is on because you will have to accept superuser prompts, therefore your tab needs to be rooted).
Every time you open command prompt, you will have to enter:
cd thentheplacewheretheandroidSDKisinstalled
as stated above before you are able to enter adb commands.
Hope this helps!
@caveman999 is giving good advice. Working in the command window is weird to those who did not use old pc-dos environment.
You have to be in the tools directory or you have to edit your PATH in windows so you can use adb from any prompt.
thnaks for both of you guys i installed the java jdk and also specified the path in environment variables but still error message!
I could only get adb to work error-free when I was in the same directory as adb.exe program. Just change directories cd..(enter) etc until you are in that directory.
tabing said:
Error: adb is not recogzined as an internal or external command, operable program or batch file???
i successfully installed the android sdk 08 and still got this message.
Click to expand...
Click to collapse
I had the same error, until I downloaded and placed the .adb files accordingly.
Source: http://theunlockr.com/2009/10/06/how-to-set-up-adb-usb-drivers-for-android-devices/
"UPDATE: If it says adb not found or something similar, download the ADB files and extract them into the Tools folder of the SDK (they were taken out by Google in the R08 version for some reason and need to be put back)."
download adb files from here: http://www.megaupload.com/?d=RTEY0Q97
The important thing is to put the files really under the "tools" folder.
When you check out above Source I am sure your problem will be solved
Thank you all problem solved
tabing said:
Thank you all problem solved
Click to expand...
Click to collapse
Glad to here it. Why not hit a few thanks buttons?!

[Q] Mac OSX - ADB - List of devices attached Blank

I am running on a Mac (OSX Lion) and have installed android-sdk-macosx.
I am trying to connect to a Kindle Fire 6.2.2
However, this is as far as I can get:
Code:
bash-3.2# ./adb devices
* daemon not running. starting it now on port 5037 *
* daemon started successfully *
List of devices attached
bash-3.2#
As you can see, no devices show up.
I have tried switching cables, USB ports, reboot the device and my machine... banging my head against the wall.
Nothing works.
I have read about 29 pages of posts through this forum, and Googled it.
No dice.
Any suggestions?
would not use the sdk at all - if you use the mac/linux version of kfu you save a lot of time and space - you don't need to use kfu if you don't like to - but all commands you'll ever need are in the tools folder of kfu - it also includes drivers and setup scripts - maybe give it a try:
http://forum.xda-developers.com/showpost.php?p=21369040&postcount=653
mkdir ~/.android
echo 0x1949 >> ~/.android/adb_usb.ini
ADB needs this entry to see the Kindle Fire no matter what OS you're on.
right - there is also a installation script for this included in the pack - install.sh if i remember right
took the advice above and it's still not working for me. i have the same exact problem. when i try to run install_drivers.sh i get:
cp: drivers/adb_usb.ini: No such file or directory
Done!
logout
[Process completed]
When I run KFU i get:
/Users/donaldclark/kfu/run.sh: line 84: seq: command not found
please help
as far as i know (don't own a mac) you have to call the commands with
./ from terminal window - eg ./run.sh
I also got the same error message at line 84 running the install script in OSX 10.6.8
-E
it's from eratosthene - give him a pm - i'm shure he can help you
http://forum.xda-developers.com/member.php?u=1616763
Try remove the usb driver from your device and re-install gain.
I use Kindle_Fire_Utility_MacLinux_0.9.2 3 with adb.mac
and its located right inside my root directory (not under users) step before.
I went to the files and I opened file called
install_drivers.sh
I did deleted everything behind -p and just dragged
the adb_usb.ini (its located in drivers) into that install_drivers.sh script and I hit save.
thats how it looks like
mkdir -p /Kindle_Fire_Utility_MacLinux_0.9.2 3/drivers/adb_usb.ini/adb_usb.ini
Than I just run adb.mac and all is operational
my kindle was rooted with burittoroot2
If you need those files send me a pm I have them in my dropbox.
somboonr said:
Try remove the usb driver from your device and re-install gain.
Click to expand...
Click to collapse
there is no uninstalling drivers like in windows.
line 84 SOLUTION
Incarnate609 said:
took the advice above and it's still not working for me. i have the same exact problem. when i try to run install_drivers.sh i get:
cp: drivers/adb_usb.ini: No such file or directory
Done!
logout
[Process completed]
When I run KFU i get:
/Users/donaldclark/kfu/run.sh: line 84: seq: command not found
please help
Click to expand...
Click to collapse
Regarding the "run.sh: line 84: seq: command not found", I found out that the "seq" command is not recognized with MAC OS... so I did a search and replace, replacing "seq" with "jot -". Now it works.
Reference: Search google for seq and mac
What worked for me.
I had the same problem after updated the sdk on my MacBook Mac OSX 10.6.8
cd to the tools directory (where android program is located)
run:
./android update usb
./android update adb
then edit the ~/.android/adb_usb.ini file and add 0x1949 as the last line (your previous adb_usb.ini file is overwritten by the above commands).

Portable Android Development

Hello everyone
Have you ever been bored in a borrowed pc and wanting to try out a new library/idea on your android but dont have admin privileges to install all the needed android tools? I was in this exact same situation, so i decided to engineer a solution (After all, i AM an engineering student ) to this boring problem. This solution works almost entirely like a standard Android SDK install (Only downside: Eclipse won't run your application) and has only been tested on Ubuntu Linux so you are on your own on other platforms, but the principle is the same, it might work after all.
Whenever prompted for a platform choose x86 , x64 needs ia32-libs which you cant install due to not having admin privileges
1. Create a directory for all the files and folders (I'll name mine "Development")
2. Download the JDK tar.bz file from http://www.oracle.com/technetwork/java/javase/downloads/jdk7-downloads-1637583.html (You'd better search for an updated link when you read this tho) and extract it into Development
3. Download eclipse from http://eclipse.org/downloads/ (I used the Eclipse IDE for Java Developers) and extract it into the Development folder
4. Download the Android SDK from http://developer.android.com/sdk/index.html (If you are on windows, choose the zip!. Again, i've only tested on Linux so you are on your own) and extract it into the Development folder
5. Open the tools/android (It's a shell script) file with gedit/any other editor and edit the line containing java_cmd=".." to read java_cmd="/home/xxx/Development/jdk1.7.0_06/bin/java" (This is my case, make sure this line actually points to the place where you extracted the jdk zip, else this will fail)
6. Open a terminal, cd to the location where you extracted the android sdk, then type "./tools/android" and press enter (Without the quotation marks) to start the sdk manager, install the platform-tools package, the Jellybean (4.1) SDK, and any other SDK you may want, then close the SDK manager.
7. cd to the Development folder and run this "./eclipse/eclipse -vm jdk1.7.0_06/bin" (Assuming you kept the stock folder names from the zips) to run eclipse, then install the ADT as described here http://developer.android.com/sdk/installing/installing-adt.html.
8. When eclipse restarts, it will ask you for the android sdk, just point it to the location where you extracted it.
That's it, your eclipse installation is ready for you to write code.
Now, to debug you'll need to do so manually as eclipse won't somehow recognize this workaround to the usb priviliges (Linux won't allow adb to communicate with the phone unless it's ran as root [Which you can't, that's why you are here] or a configuration file [Again, written as root] is present) system so you need to do this to make adb work:
1. Disconnect your phone from 3G (Optional)
2. Connect your phone to your pc via usb
3. Enable usb tethering on your phone
4. Enable ADB over Network on Application settings
5. On the terminal emulator, run "ip addr show" and look for the usb section
6. On your computer, open a terminal and cd to the tools directory fo the android sdk, then type "./adb connect xxx.xxx.xxx.xxx" (Replace the x's with the IP of your phone, as it appears on the output of the previous command. Remember to use the one on the USB section)
7. Verify adb picked up your device by runing "./adb devices", if it lists an IP as a device, you are ready
Each time you want to test your app, export a signed apk from your project (I may write a small guide for that later, google will help you if you dont know how to do it) and run "./adb install xxx.apk" (Obviously, replace xxx with the path to your exported apk). The icon(s) for your main activity(ies) will promptly appear on your launcher. Again, Eclipse won't run nor debug your app using this method. (Maybe it's an SDK bug?)
I know it's not exactly streamlined but it's something for when you are on the go.
Hope you find this guide useful someday. Until next time.

[TOOL]Latest ADB and Fastboot for Win, Linux, Mac

Updated ADB and Fastboot from Androiod SDK (Pkg.Revision=24.0) dd 11/07/2016
ADB - version 1.0.36
Revision fd9e4d07b0f5-android​
Download: fastboot_adb(1.0.36)_110716_r24.0.rar
The last SDK Platform-Tools for Win, Linux and Mac you can always find here - https://developer.android.com/studio/releases/platform-tools
Arhive:
ADB and Fastboot from Androiod SDK (Pkg.Revision=21, 16 Oct 2014)
*Updated ADB to version 1.0.32
*Updated Fastboot to latest version
Download:
fastboot_adb(1.0.32)_071114_r21.rar
sorry for being a noob and asking for another device in a different forum,
but will these adb drivers also work with nexus 4???
need them to sideload 5.0.1
IS this for android 5.0 GPE?
http://forum.xda-developers.com/htc-one/general/guide-windows-8-1-fastboot-adb-t2970692
i have anaged to get it working after expereincing the problems stated here by others ... follow my steps here for those who still have trouble
lewonsky said:
IS this for android 5.0 GPE?
Click to expand...
Click to collapse
Yes, this for all version. It' latest update from official Android SDK Platforms.
See link in OP.
Golv said:
ADB and Fastboot from Androiod SDK (Pkg.Revision=21, 16 Oct 2014)
*Updated ADB to version 1.0.32
*Updated Fastboot to latest version
Download:
fastboot_adb(1.0.32)_071114_r21.rar
Click to expand...
Click to collapse
I think you forgot to mention that this is only for Windows. So it does not work for Linux or Mac.
Quick, fast, no frills, just the necessary files itself. Hopefully this thread gets updated whenever a new release comes up
thanks, nice share bro :good:
how to use those files
I thank you for the files but... how are we supposed to use them. I ask since I'm new to adb. And need this vision of adb to sideload to my fire hd6
[email protected] said:
I thank you for the files but... how are we supposed to use them. I ask since I'm new to adb. And need this vision of adb to sideload to my fire hd6
Click to expand...
Click to collapse
open a command window and change directory to the folder where adb.exe is installed. Then you can use adb commands. Commands syntax is as follow:
Code:
adb [target] <command>
You only need to specify the [target] if you have more than 1 android device or emulator connected simultaneously, otherwise the command will be directed to the only connected device, so the syntax will be:
Code:
adb <command>
So if you want to sideload a rom to your device, boot in your custom recovery and start the "sideload" mode.
In the command window:
Code:
adb sideload my_rom.zip
Don't forget that the rom.zip must be in the same folder where adb.exe is
If you want to use "adb push" instead of "adb sideload" then boot in custom recovery (not in sideload mode) and use the following command:
Code:
adb push my_rom.zip /sdcard
You can read more about adb commands here: http://developer.android.com/tools/help/adb.html#issuingcommands
adb sideload explained here: http://android-revolution-hd.blogspot.in/2013/12/ow-to-use-adb-sideload.html
If you have more question about what file to sideload or push a rom to your device, you should ask in the correct forum, Amazon Fire HD 6 forum is here: http://forum.xda-developers.com/fire-hd
thank u
save my day
How do you install the new adb 1.0.32 over the old version and will it work with the moto X 2014?
its dosnt work for me
and i need it ((
every phone i want use sideload , its say me , use adb 1.0.32 or newer
and when i want use adb 1.0.32 , show me this error in all adb commands :
adb server is out of date. killing...
ADB server didn't ACK
* failed to start daemon *
error: unknown host service
what should i do ?
update adb
[email protected] said:
I thank you for the files but... how are we supposed to use them. I ask since I'm new to adb. And need this vision of adb to sideload to my fire hd6
Click to expand...
Click to collapse
go to this website: https://fl1.androidfilehost.com/dl/...803384/minimal_adb_fastboot_v1.3.1_setup.exe?
download and install it to your computer, then try to sideload it through there.
if that doesn't work just download the stand alone SDK from the android studio website and after its downloaded, open the .rar file and extract it to a new folder to your desktop. after that open it and search for a folder that says platform tools and look for the ADB .exe file and copy it, then go to your C drive and go to programs and try to find the android studio folder, when you have located it open it and look for a folder named platform tools, then delete the adb.exe in that folder and paste the new one in there or you can probably just copy the whole platform tools folder and replace the other one in the C drive.
I hope this helps, if it doesnt just message me and im sorry for the late reply.
alishadlou said:
* failed to start daemon *
error: unknown host service
what should i do ?
Click to expand...
Click to collapse
this usually means the phone is not communicating with your PC.
- either your phone is corrupt
- the connection is corrupt
- or the cable is bad
Tip: add the path of ADB.exe to your system Environment Variables, so you can call it w/out first navigating to it.
- Right click Computer > Properties > Advanced system settings
- Environment Variables ... > edit "Path" by adding the path to ADB.exe.
ie.
Windows 10 x64, i simply add: D:\PortableApps\ADB
for other Windows, you may have to add to the end of "Path", click edit > scroll to the end > add ;D:\PortableApps\ADB;
(don't forget to add the semicolon at the end)
Now you can simply launch Command Prompt and enter: ADB sideload *file*
Updated ADB and Fastboot from Androiod SDK (Pkg.Revision=24.0) dd 11/07/2016
ADB - version 1.0.36
Revision fd9e4d07b0f5-android​
Download: fastboot_adb(1.0.36)_110716_r24.0.rar
Not working on Android 6.0
This and older versions will not work on Samsung S7E for system backup and restore.
It accepts the commands, but the confirmation popup supposed to open on the device never does. For a few 6.0 users on other devices, it opened up but the backups were not really completed.
thanks bro. nice share :good:
Thanks, you save me too much time!!
my adb was working fine for my Note 4. I followed the instructions to upgrade bootloader
https://forum.xda-developers.com/no...t/howto-bootloader-unlock-upgrade-to-t3398144
Now, I keep getting device offline when used adb devices command. Do you think, upgrading ADB will solve this? thank you

Categories

Resources