2016-01-06 94 views
1

當試圖在我的Linux筆記本電腦上安裝Android Studio時,出現「無法運行mksdcard工具」從我通過搜索可以看出,通常是由於缺少32 bit兼容庫,但是我在ARMv7處理器上運行它,使用the crouton project在我的Chromebook上使用Linux。我試圖安裝在i386的結束recomended包,但在命令行返回:無法在ARMv7處理器上運行mksdcard sdk工具Ubuntu 14.04

讀取軟件包列表...完成
大廈Dependendency樹
讀取狀態信息...完成
E:無法找到包[包裹名稱]
E:找不到任何包裹由Regex'[包裹名稱]'

有沒有人知道是什麼原因導致這種情況以及如何解決?

+0

我不確定這個問題是否足夠清楚,因爲對於我來說,它讀起來像是想要將32位x86庫放在32位ARM Chromebook上,因爲它有64位... ,而這一點都毫無意義。除非有可能你試圖在ARM主機系統上交叉編譯x86代碼,呃,_reasons_,但這是非常不尋常的事情。 – Notlikethat

+0

我是比較新的Linux,所以我試圖把軟件包推薦給其他用戶提供類似的問題,以便在嘗試安裝android studio時修復錯誤,但是嘗試這樣做沒有奏效。從你的反應來看,我認爲這不是正確的道路。我主要試圖讓程序運行,而不是其他任何事情。對不起,有任何困惑。 –

+0

好吧,您從哪裏安裝Android Studio?從網站下載幾乎肯定是一個非啓動器 - 如果由於缺少32位本機庫而導致在64位x86上出現部分故障,這意味着它們包含32位x86代碼,該代碼不會運行在全部在ARM機器上。除非你找到了現成的ARM版本,否則你可能正在考慮從源代碼編譯它(或者至少是本地代碼部分)。 – Notlikethat

回答

2

我發現了一種解決方法。

經過一番搜索,我發現我們可以自己爲ARMv7平臺創建工具的可執行二進制文件! Whupee

  1. 轉到GitHub並拿起源代碼,mksdcard.c。將它下載到任何你想要的地方,但是確保你將它下載爲mksdcard.c而不是mksdcard.c.txt,你的瀏覽器可能會嘗試這樣做。您可以隨時重命名文件,以防意外誤保存文件名。
  2. 在您的chroot環境中,轉到您下載文件的目錄。
  3. 確保您安裝了gcc編譯工具。嘗試運行gcc -v以嘗試查看您安裝的GCC版本。如果這不起作用,您需要通過sudo apt-get install gcc安裝GCC。
  4. 運行gcc -o mkdscard mksdcard.c。這使用GCC將源代碼編譯成可執行的東西。編譯完成後,您可以使用./mkscard讓Linux執行二進制文件,驗證它是否有效。
  5. 導航到您的Android SDK工具目錄。這通常是~/Downloads/Android/Sdk/tools。通過運行ls,您將列出這些文件並找到您的Linux發行版不知道如何運行的mksdcard版本。 (在此文件上運行./mksdcard將確認此操作。)
  6. 備份破碎的二進制文件,然後刪除tools文件夾中的副本。 (我在Android SDK工具文件夾中創建了一個backups/目錄以將其移動到。)
  7. 在該目錄內,使用rm -r mksdcard來刪除舊的mksdard二進制文件。
  8. 最後,將您的兼容二進制文件複製到其中,例如cp ~/Downloads/mksdcard .(將我們創建的mksdcard二進制文件複製到當前目錄.,即Android SDK Tools文件夾中。)
  9. 回到您的Android Studio安裝程序。在對話中抱怨mksdcard失敗,打到重試並且應該繼續安裝。完成後,請確保應用環境推薦的所有更新。請享用!
0

對於較新的版本,例如。 3.1在ARM32上使用Ubuntu運行的Android Studio的C4您還需要將mksdcard放置在〜/ Downloads/Android/Sdk/模擬器(引用類似於Alext T.的路徑)。