오류 : Android 에뮬레이터를 실행하려고 할 때 32 비트 Linux Android 에뮬레이터 바이너리가 더 이상 사용되지 않습니다


14

우분투 10.10, 32 비트에서 안드로이드 개발 환경을 설정했습니다. 에뮬레이터를 시작할 때 AVD를 만든 후 다음 오류가 발생했습니다.

오류 : 32 비트 Linux Android 에뮬레이터 바이너리는 더 이상 사용되지
않으며이를
사용하려면 다음 중 하나 이상을 수행해야합니다.- '에뮬레이터'를 호출 할 때 '-force-32bit'옵션을 사용하십시오.
-사용자 환경에서 ANDROID_EMULATOR_FORCE_32BIT를 'true'로 설정하십시오.
둘 중 하나를 사용하면 32 비트 바이너리를 사용할 수 있지만 향후 Android SDK 릴리스에서는 사라질 것입니다.
발생하기 전에 64 비트 Linux 시스템으로 이동하십시오.

사용중인 ADT 버전은 23.0.3.1327240입니다. 사용중인 SDK 라이브러리는 32 비트입니다. 친절하게 도와주세요. 감사.


1
새 버전으로 업그레이드하여 64 비트로 전환하십시오.
Mateo

4
지원되는 Ubuntu 릴리스로 업그레이드해야합니다. 일반적으로 우리는 이것을 지원되지 않는 것으로 닫을 것이지만,이 문제는 실제로 이전 릴리스가 아니기 때문에 다른 사람들이 지원되는 릴리스 에서이 문제가 발생할 수 있다고 생각합니다. 그러나 나는 매우 당신이 적어도 12.04로 업그레이드하는 것이 좋습니다.
Seth

3
동의합니다 : 이것은 (a) 답변이 릴리스와 무관하다는 것을 알고, (b) 질문과 답변 모두 (일반적인 활동과 관련되어 있기 때문에) 명확하지 않은 함정)은 다른 사람들에게 특히 가치가 높은 것 같습니다. 모든 릴리즈로 일반화하기 위해 편집 할 수 있지만 열어 두어야합니다. @MohanrajMani 그러나 10.10을 계속 사용하지 마십시오. 오랫동안 지원되지 않았으며 그 의미의 일부는 새로 발견 된 보안 취약점을 해결하기 위해 업데이트되지 않았다는 것입니다. 사용하기에 위험합니다.
Eliah Kagan

1
이것은 Ubuntu 10.10과 관련이 없지만 64 비트 용으로 설계된 32 비트 Linux 배포판에서 Android 에뮬레이터를 사용하려고했기 때문입니다. 인텔 386 배포판을 사용하는 경우 Ubuntu 12.xx 및 14.xx에서도 마찬가지입니다. 또한 마지막으로 64 비트로 전환 할 수 없음을 확인했습니다. 64 비트는 AMD에서만 지원되고 32 비트는 인텔에서만 지원됩니다.
JSON

1
@JSON 64 비트 버전의 Ubuntu는 64 비트 AMD 및 64 비트 Intel 프로세서에서 모두 실행됩니다. "amd64"의 "amd"는 AMD 전용이라는 의미는 아닙니다. 마찬가지로 32 비트 버전은 (32 비트 및 -64 비트) AMD 및 (32 비트 및 -64 비트) Intel 프로세서 모두에서 실행됩니다. "i386"의 "i"가 인텔 전용이라는 의미는 아닙니다. . 참조는 AMD의 CPU와 호환 우분투의 64 비트 버전인가? 의 i386 다운로드 및 AMD64의 차이? 자세한 내용은. (이 질문은하지만, 우분투 10.10 릴리스 특정하지 않습니다 동의합니다.)
엘리야 케이건

답변:


15

32 비트 시스템에서 실행되고 Android 에뮬레이터가 64 비트 환경에서 가장 잘 작동하도록 설계 되었기 때문에이 오류가 발생합니다. 유일한 실제 솔루션은 64 비트 운영 체제를 설치하는 것입니다.

하드웨어가 64 비트를 지원하지 않거나 당신이 할 수없는 재설치 지금 당장 할 수 있습니다 일시적으로 전달하여 문제를 우회 -force-32bit하면 명령 줄에서 에뮬레이터를 시작할 때 또는 설정하여 ANDROID_EMULATOR_FORCE_32BITtrue(오류가 말한대로) 환경에서. 다음을 실행하여이 작업을 수행 할 수 있습니다.

gedit .profile  

터미널에서. 텍스트를 추가하십시오.

export ANDROID_EMULATOR_FORCE_32BIT=true  

파일 끝까지 저장하고 닫습니다. 지금은 테스트 할 수 없지만 source .profile변경 내용을 적용하려면 터미널에서 실행 하거나 다시 시작해야합니다.

에뮬레이터를 시작하십시오.

Google은 결국 32 비트 바이너리를 제거하여 에뮬레이터의 작동을 중지하므로 Android 개발을 계속하려면 64 비트 운영 체제를 설치하는 것이 좋습니다. 안드로이드 자체도 x64 아키텍처로 전환하고 있으므로 32 비트를 유지하면 곧 뒤쳐 질 것입니다.


4

하나의 훌륭한 해결책이 있습니다. 당신은 일식이나 넷빈으로 시작할 수 있습니다. 시도 :

  1. Eclipse에서 Android 프로젝트 폴더를 클릭 한 후 실행> 구성 실행 ...을 선택하십시오.

  2. 실행 구성 대화 상자의 왼쪽 패널에서 Android 프로젝트 실행 구성을 선택하거나 새 구성을 작성하십시오.

  3. 대상 탭을 클릭하십시오.

추가 에뮬레이터 명령 행 옵션 필드에 다음을 입력하십시오.

-force-32bit

이 실행 구성을 사용하여 Android 프로젝트를 실행하십시오.

netbeans에서 : 1. 디버거를 선택할 때 사용자 정의를 선택했습니다 ...

  1. 에뮬레이터 옵션 쓰기 -force-32bit
  2. 확인을 클릭하십시오. 그리고 응용 프로그램을 실행

1

이 파일을 편집하십시오 :

우분투에서 열린 터미널

gedit .bashrc

이 텍스트를 붙여 넣습니다.

export ANDROID_EMULATOR_FORCE_32BIT=true

새로 고침 소스 :

source ~/.bashrc

3
~/.bashrc루트로 편집 할 필요 가 없으므로 사용할 이유가 없습니다 sudo. (나는에 해당 환경 변수를 넣는 게 좋을 것하지만 그 외에도,이 합리적이고 도움이 대답은입니다 ~/.profile대신 세스에서 알 수 있듯이 , 심지어 할당 퍼팅 아마도 나 -하지 않고 즉, export. ~ / .pam_environment`.. 이대로)
엘리야 케이건

@EliahKagan 이 Q / A에 비추어 볼 때 아마도 ~/.profile최고의 장소는 아닐까요? 위키 구체적으로 환경 변수를 배치 제안 때문에 다소 혼란 스러워요 ~/.profile..
세스

1

쉘 스크립트를 작성하십시오.

#!/bin/bash
#
#   set export ANDROID_EMULATOR_FORCE_32BIT=true

export ANDROID_EMULATOR_FORCE_32BIT=true
/opt/adt-bundle-linux-x86-20140702/eclipse/eclipse

쉘 스크립트를 실행 파일로 변경하고 실행하여 Eclipse를 시작하십시오.

/opt/adt-bundle-linux-x86-20140702/eclipse/eclipse 이클립스 실행 파일의 경로입니다.


이것은 티타늄을 사용할 때 효과적이지만 SH 파일을 편집하면됩니다. 그래서 이것은 작동합니다.
jfreak53

1

Android 스튜디오에서 에뮬레이터 구성을 다음과 같이 업데이트 하여이 문제를 해결했습니다.

  1. Android Studio에서 실행-> 구성 편집 메뉴로 이동하십시오.
  2. 왼쪽 창의 Android 애플리케이션 에서 앱 이름을 선택하십시오.
  3. 오른쪽 창에서 에뮬레이터 탭을 선택하십시오
  4. "추가 명령 줄 옵션 :"을 선택하고 옆에있는 텍스트 상자에 -force-32bit 를 입력하십시오.
  5. "확인"을 선택하고 앱을 다시 실행하십시오.
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.