2011-12-20 2 views
6

Aggiornamentoadb non funziona su Ubuntu 64 - comando non trovato

Dopo aver fatto alcuni altri esperimenti, devo riformulare la mia domanda completamente, come sono stato ingannato dal mio terminale. Semplicemente non ha mostrato il messaggio di errore quando ho emesso sudo ./adb.

Se cd nella directory/platform-tools ANDOID_SDK ed eseguire ./adb, ottengo:

command not found: ./adb 

Ecco l'output ls -l adb nella stessa directory:

-rwxrwxr-x 1 myuser myuser 159620 2011-12-20 19:30 adb 

Esecuzione che ADB mi da:

./adb 

Lo stesso accade per tutti gli altri file eseguibili binari in quella directory come aapt, AIDL, dexdump, ecc

ho potuto solo immaginare che questo ha qualcosa a che fare con me cercando di farlo funzionare su un'Ubuntu a 64bit, ma l'intestazione ELF o qualcosa di simile non viene riconosciuta. Tuttavia, lo strumento per android in ANDOID_SDK/tools funziona correttamente (oltre a non riuscire ad eseguire adb dopo aver scaricato nuovi pacchetti).

davvero strano ...

domanda originale

Ho scaricato l'ultimo SDK di Android. Se provo ad eseguire adb come utente normale, ottengo "comando non trovato". Devo eseguirlo come "sudo ./adb" e funziona. Perché è così e come lo risolvo? Sto usando Ubuntu 64 11.10.

Ho usato l'SDK su vecchie versioni di Ubuntu e lì, ho potuto eseguirlo come utente ordinario senza problemi. Qualche idea?

+0

Penso che adb sia un pluggin per Eclipse. Non ovvio quando si vede un eseguibile in una directory che non viene eseguita. Sono stato in grado di trovare il 'Android SDK Manager' ed eseguirlo da eclipse windows ... –

+0

No, adb è uno strumento da riga di comando. Il plugin eclipse è solo un'interfaccia grafica per questo. – Sebi

risposta

11

Ho trovato la soluzione. Ho studiato di nuovo se avessi davvero installato ia32-libs. Ad una prima occhiata, sembrava a posto in attitudine. Tuttavia, a una prima occhiata ho notato che il pacchetto ia32-libs è stato installato, ma non tutte le dipendenze. Non ero in grado di risolverlo con aptitude, ma invece ho dovuto rimuovere ia32-libs con il gestore di pacchetti KDE e installarlo di nuovo. Ora, sono state installate anche tutte le 88 dipendenze mancanti. adb ora funziona correttamente.

Non sono sicuro al 100% perché aptitude non è riuscito qui, ma ho il sospetto che soffra anche di questo bug sulla mia installazione: https://bugs.launchpad.net/ubuntu/+source/aptitude/+bug/831768 Ho anche voci duplicate in aptitude per tutte le voci.

+0

Felice di averlo risolto. Stavo solo per indicarti http://itsgreatupnorth.blogspot.com/2010/11/android-dev-on-64-bit.html?spref=tw – barry

+0

che post mi ha aiutato un sacco - grazie per averlo messo lì . Trovo strano che questo malfunzionamenti dal momento che sto usando Ubuntu 10.04 a 64 bit - che è il sistema operativo che raccomandano per costruire dalla fonte. – JoshC13

1

Aggiungere platform-tools alla variabile ambientale, per questo

Aggiungere la seguente riga per durare del file /home/yourUserName/.bashrc nella cartella casa ..

export PATH = "vostro/percorso/android-sdk-linux/platform-tools /: $ {PATH} "

+0

L'ho già. Per favore, la mia domanda: non sono in grado di eseguire il comando senza sudo. Se eseguo "sudo ./adb", funziona, ma non se eseguo semplicemente "./adb" (ovviamente sono nella directory corretta). – Sebi

0

Eseguire" chown "nella cartella sdk di Android per rendere il proprio account utente il proprietario della cartella. Sembra che sia di proprietà dell'utente root al momento. Non riesco a ricordare la sintassi, ma ci saranno molti esempi online.

+0

L'ho già fatto. Tutti i file e le cartelle sono di proprietà di myuser: myuser. Ho anche provato ad assegnare tutto al gruppo admin, quindi myuser: admin, ma anche nessuna differenza. – Sebi