[SOLVED] Android adb broke after updates to -current
SlackwareThis Forum is for the discussion of Slackware Linux.
Notices
Welcome to LinuxQuestions.org, a friendly and active Linux Community.
You are currently viewing LQ as a guest. By joining our community you will have the ability to post topics, receive our newsletter, use the advanced search, subscribe to threads and access many other special features. Registration is quick, simple and absolutely free. Join our community today!
Note that registered members see fewer ads, and ContentLink is completely disabled once you log in.
If you have any problems with the registration process or your account login, please contact us. If you need to reset your password, click here.
Having a problem logging in? Please visit this page to clear all LQ-related cookies.
Get a virtual cloud desktop with the Linux distro that you want in less than five minutes with Shells! With over 10 pre-installed distros to choose from, the worry-free installation life is here! Whether you are a digital nomad or just looking for flexibility, Shells can put your Linux machine on the device that you want to use.
Exclusive for LQ members, get up to 45% off per month. Click here for more info.
I'm running Slackware64-current. I was working on a project in Eclipse ADT, which I have installed in /opt. I was able to build and run my project successfully today. Then, while I still had it open, I thought I would upgrade -current since I had forgotten to do it in the last 2 weeks. After that, Eclipse started showing errors and I could no longer run my project. After cleaning and restarting Eclipse, I got an Eclipse error saying it could not run the adb program because there was no such file or directory. This shows up in a dialog box and will not let me run any projects that should be working.
Quote:
14:13:48 - adb] Unexpected exception 'Cannot run program "/opt/adt-bundle-linux-x86_64-20130729/sdk/platform-tools/adb": error=2, No such file or directory' while attempting to get adb version from '/opt/adt-bundle-linux-x86_64-20130729/sdk/platform-tools/adb'
I am pretty new to programming and using Eclipse, so I hope someone can help shed some light on this. Honestly, I'm not really sure if it belongs in the Slackware forum at all, except that I know it was something that happened when I upgraded.
Help appreciated!
Edit:
I forgot to say that I did check to see if adb was where it was looking for it, and it is.
I used adb couple times, but in a diferente way.
Since it is a binary file, i just put the path/for/adb on my profile or on my bashrc, changed the adb file to executable and then i can call <adb> from command line.
Did you try to reinstall the SDK? How did you install it?
Check if the file /opt/adt-bundle-linux-x86_64-20130729/sdk/platform-tools/adb still exists and check its permissions too.
I used adb couple times, but in a diferente way.
Since it is a binary file, i just put the path/for/adb on my profile or on my bashrc, changed the adb file to executable and then i can call <adb> from command line.
Did you try to reinstall the SDK? How did you install it?
Check if the file /opt/adt-bundle-linux-x86_64-20130729/sdk/platform-tools/adb still exists and check its permissions too.
I think I cross posted with you on my edit. I did check the file and the permissions, which I added above. It looks okay I think. The file is definitely still there.
I am leery of changing the way adb is called by Eclipse as a workaround. It worked fine before, and now it doesn't, so I would rather just figure out what went wrong.
I installed the SDK that was included in the ADT bundle for Linux. I just put everything into /opt. But then I had install all the different versions of the API I needed from within the Eclipse Android SDK Manager, and that took a very long time. Therefore, wanted to see if there was a better way of fixing it before I tried to reinstall it.
That will be the next step, though, if this is a dead end.
cany ou run adb without eclipse? (cd to the sdk directory then do "./adb devices" and you should see your android device number - or at least it should try to list the devices) If so then I think eclipse is looking in the wrong place and you can correct it in the "sdk location" option in eclipse preferences.
If you can't run it then I think your system needs attention - were you running compat32 packages? If those were upgraded with pure 64 bit packages then that maybe the problem. The solution would be to reinstall the compat 32 packages and try again.
I can confirm the breakage and also the fix. Just update to the latest -current compat32 libraries from Alien Bob and the error disappears. You'll notice the emulator wouldn't start too, fixed.
I can confirm the breakage and also the fix. Just update to the latest -current compat32 libraries from Alien Bob and the error disappears. You'll notice the emulator wouldn't start too, fixed.
Thanks. I thought a few days ago that it was probably a multilib problem, but couldn't say for sure it because I had a bunch of other errors on my project that I needed to resolve before confirming everything was fine. I'm not surprised it was something I was supposed to do and didn't. I should have thought of multilib in the beginning.
When 14.1 goes live I am considering running slackpkg+ to avoid these little issues. Going to read up about it.
Thanks, I didn't even know that existed. I admit I am intrigued by it, as this is not the first time I've been bitten by not keeping up with multlib. However, I wonder if it would not be better for me just to learn to keep up with multilib properly.
What I have been doing is basically just following all the steps in Alien's wiki from start to finish every time I need to update multilib. This means that I download the entire directory here from scratch with wget, install all the gcc and glibc packages plus the compat32 package, and then install everything in the compat32 folder. Is this how I am supposed to be doing it? It seems like I am missing something.
What I have been doing is basically just following all the steps in Alien's wiki from start to finish every time I need to update multilib. This means that I download the entire directory here from scratch with wget, install all the gcc and glibc packages plus the compat32 package, and then install everything in the compat32 folder. Is this how I am supposed to be doing it? It seems like I am missing something.
I had troubles one time when i was in a upgrade process of multilib because i download all in same folder that i had the older versions.
Now i just rm -rf entire directory in which i download before start download all file when it is need to upgrade.
I had troubles one time when i was in a upgrade process of multilib because i download all in same folder that i had the older versions.
Now i just rm -rf entire directory in which i download before start download all file when it is need to upgrade.
That's where rsync and checking the changelog would be put to good use. Then only upgrade what is necessary. Admittedly I did it from scratch myself because all the -compat32 packages were refreshed on November 1. It might be the lazy way out to use slackpkg+ but IMHO it is more efficient since it is only one operation to take care of the whole system.
LinuxQuestions.org is looking for people interested in writing
Editorials, Articles, Reviews, and more. If you'd like to contribute
content, let us know.