본문으로 바로가기

Eclipse로 Android 개발 환경을 구축해보신 분들은 한 번 쯤은 AVD라는 것을 사용해봤을 것입니다. 오래 전부터 필자는 AVD가 너무 느리고 안정화가 되지 않은 듯하여 안드로이드 개발을 꺼려했지만 Windows 환경에서는 ADT의 추가 플러그인인 Intel x86 Accelator를 설치하면 조금 완화된 환경을 제공받는다고 얘기를 들은 바 있습니다.


하지만 필자가 사용하는 OS는 Ubuntu Linux이며 아직 Ubuntu에서는 이를 지원하지 않는 것으로 보입니다. 그렇다고 최신 환경을 제공해달라는 것도 아닙니다. AVD는 Android의 새 버전이 나올 때마다 바로바로 SDK가 나오지요. 그래서 저는 안드로이드 개발/디버깅을 해야한다고 한다면, 제가 쓰는 안드로이드폰으로 디버깅을 했습니다. 하지만 이제 그것도 안되는 실정까지 와버렸지요;;


그래서 우연히 발견한 것이 Genymotion이라는 가상 환경이었습니다. Genymotion은 VirtualBox의 모듈 환경을 이용해 Android의 가상 머신을 만들어줍니다. 물론 Eclipse에서의 개발 환경과 연동되어 있어서 더없이 좋은 프로그램이지요. 속도도 AVD와는 비교가 안될 정도로 빠릅니다. 


Genymotion Features


Genymotion은 무료입니다. 단, 다운로드 받아 사용하고자 한다면 회원 가입을 해야합니다. 가입 절차는 간단하며 위 홈페이지 링크에서 사용할 수 있는 기능을 체크한 후 사용하시는 것을 권장합니다. 


그럼 환경 구축을 시작해보도록 합시다.


제가 사용할 환경은 다음과 같습니다.


OS : Ubuntu Linux 13.04

Eclipse Version : KEPLER


먼저 Eclipse를 설치하지 않으신 분이라면, 설치부터 해야겠지요?


Eclipse Downloads


위 버튼을 클릭해 들어가자마자 나오는 Eclipse는 4.3 KEPLER 버전입니다. 이전 버전을 다운로드 받고싶다면 링크 오른쪽에 Juno 등이 포함되어 있으니 참고하시기 바랍니다.


제가 사용하는 환경이 Ubuntu Linux다보니 Windows에서 설치하는 방법을 자세히 설명하지 못합니다. Windows에서 설치하는 방법을 먼저 글로 간단히 적어보도록 하지요.


Windows에서 설치

1. Eclipse 압축 파일을 풀고 사용하는데, 일반적으로 사용하고 싶다면 C:\Program Files (x86) 경로에 압축을 푸는 것이 좋습니다.

2. 반대로 관리자 계정에 영향을 되도록 받고 싶지 않다거나 자주 사용하는 곳에 놓는 것이 좋다면 바탕 화면 혹은 문서, 다운로드, 등 계정 홈 디렉토리 내에 압축을 푸는 것이 좋습니다.


Ubuntu Linux에서 설치

1. Unity나 GUI 환경에서 바탕화면에 아이콘을 노출하며 사용하고 싶다면 다음 지침을 따릅니다.

- 다운로드 받은 압축 파일을 원하는 경로에 압축을 풉니다. 추천 경로는 /opt/ 경로를 추천합니다.

- Unity의 경우, 터미널을 열어 /usr/share/applications/에 eclipse.desktop 이라는 파일을 생성합니다.


username@localhost:~$ cd /usr/share/applications/

username@localhost:/usr/share/applications$ sudo vim eclipse.desktop


- 다음과 같이 입력해줍니다.


  [Desktop Entry]

  Name=Eclipse                        ; Unity에서 표시될 프로그램 이름

  Type=Application

  Exec=/opt/eclipse/eclipse    ; 해당 프로그램의 경로 (필자는 추천 경로를 사용함)

  Terminal=false

  Icon=/opt/eclipse/icon.xpm    ; Unity에서 표시될 아이콘 파일

  Comment=Integrated Development Environment

  NoDisplay=false

  Categories=Development;IDE    ; Unity에 들어갈 카테고리 항목

  Name[en]=eclipse.desktop


- 입력하시고, 저장을 하도록 합시다.

Unity에 들어가면 Eclipse의 프로그램이 있는 것을 확인하고 설치가 완료됩니다.


2. 그냥 단순하게 저런 절차없이 그냥 프로그램 실행만을 원하신다면 아무런 경로에 압축을 풀고 그 압축을 푼 경로를 직접 들어가셔서 Eclipse를 실행하셔도 됩니다.


최대한 초보자 여러분들도 쉽게 접할 수 있는 방법이 될 수 있도록 적어봤습니다만 지루할지도 모르겠군요;; 하지만 이런 과정 속에서 자신의 성장을 느껴보실 수도 있을 것입니다 ^^


이제 Eclipse를 실행해봅시다.



Eclipse를 실행하면 자신의 구역을 정하라는 메시지가 뜰 것입니다. 이 부분은 Windows와 공통된 부분입니다. 하지만 적혀 있는 Workspace는 Windows와 다릅니다. 원하는 경로를 적어주시면 됩니다. 해당 경로에 자신이 만든 소스들이 저장됩니다.


Eclipse를 실행하면 위에 메뉴 중 Help라는 메뉴가 있을 것입니다. Help 메뉴에서 Install New Software를 클릭합니다.



이런 화면이 나타난다면 Add 버튼을 클릭합니다.



위와 같이 입력하고, OK 버튼을 클릭해줍니다.



먼저 설명을 해드리도록 하겠습니다.


Developer Tools는 말그대로 개발툴킷입니다. Android 개발과 관련한 DDMS, TraceView, 기본적인 Development Tools가 있습니다. 우리는 이 것을 설치할 것입니다.


NDK Plugins는 Native Development Kit Plugins 의 약자로 Java가 아닌 C 소스 코드를 ARM Binary로 컴파일할 때 사용합니다. 주로 C언어로 만든 소스 코드를 Android Terminal Shell에서 실행한다거나 C 기반의 Local root exploit을 Android에서 구동하고자 할 때 사용하는데, 좀 더 쉽게 얘기하자면 리눅스의 Kernel과 같이 Low Level에서 Android Programming 할 때 사용하는 Eclipse Plugin입니다.


충분한 설명이 되었다면, 원하는 항목에 체크를 하신 후 Next > 버튼을 클릭하시면 됩니다. 



Details에 정확한 정보가 나와있습니다. 필자는 이미 설치한 내용이 있기 때문에 저런 문장이 나오지만 처음 사용하는 유저들은 저런 메시지가 나타나지 않을 것입니다. Next > 버튼을 클릭합시다.



Apache License 및 BSD License의 동의서입니다.  간단하게 I Accept.... 버튼 눌러주시고, Finish 버튼 클릭해주시면 설치가 시작됩니다.


설치가 끝나면 Eclipse를 재시작 요구하는 메시지가 나타날 것입니다. Eclipse 재시작까지 정상적으로 완료되셨다면 다음 단계로 넘어가도록 합시다.


이제 Genymotion을 설치할 것입니다. Genymotion을 설치하기 전, 먼저 Genymotion의 구동을 위한 VirtualBox를 설치해보도록 합시다. (단, Windows 유저분들은 이 과정을 생략하셔도 상관없습니다만 일단 방법은 적도록 하겠습니다.)


* Windows에서 설치

https://www.virtualbox.org/wiki/Downloads 에 접속합니다.

- VirtualBox *.*.* Windows hosts를 클릭하여 다운로드 받고 설치합니다.


* Ubuntu Linux에서 설치

1. VirtualBox 홈페이지에서 패키지 다운로드 후 설치

- https://www.virtualbox.org/wiki/Downloads 에 접속합니다.

- VirtualBox *.*.* Linux hosts를 클릭합니다.

- 원하는 버전과 아키텍쳐를 선택하시고, 다운로드 받습니다.

- 다운받은 *.deb를 실행하면 우분투 소프트웨어 센터가 실행되고, 지침에 따라 설치합니다.


2. Ubuntu Linux sources.lst에 담겨진 목록에서 설치

- 터미널을 실행합니다.

- sudo apt-get install virtualbox 를 입력합니다.

- 동의를 요구하면 Y를 누르거나 혹은 그냥 엔터를 누릅니다.

- 설치가 완료됩니다.


VirtualBox의 설치가 끝나셨다면, 이제 Genymotion을 설치해도록 합시다.


Genymotion Downloads



이 페이지에 접속하시려면 위에 적어놓은 대로 회원 가입이 필요합니다. 로그인 후 위 페이지에 접속하시면 사진과 같이 나타나는데, 여기서 만약 Windows 사용자의 경우, 위에 VirtualBox 설치 과정을 생략하셨다면 맨 위에 있는 Windows 32bit/64bit with VirtualBox를 다운로드 받아 설치하시면 됩니다. 

Linux 사용자의 경우, 사용하시는 아키텍쳐와 사용하는 Linux의 종류에 맞춰 선택합니다. 저는 Ubuntu Linux를 사용 중이므로 Ubuntu, Fedora, RedHat에 선택을 하도록 하겠습니다.


다운로드 받으셨다면, Windows 사용자는 실행 후 지침에 따르면 쉽게 설치가 가능합니다. 

하지만 Linux 사용자는 여기서부터 잘 따라오셔야합니다.


먼저 터미널을 실행합니다.

터미널을 실행하시고, Genymotion을 다운로드 받은 경로로 이동합니다.



경로로 이동할 때는 cd 명령어를 사용한 후 해당 경로를 입력해줍니다. 어디에 다운로드 된 것인지 모르겠다면, Firefox 사용자, Chrome 사용자 공통으로 기본 경로는 ~/다운로드/ 경로를 사용합니다.



ls -l 명령어를 이용해서 다운로드 받은 파일이 있는지 확인합니다. 파일이 있다면 빨간색 표시와 함께 결과를 표시해줍니다. 하지만 파일이 없다면 아무런 결과도 없이 나타나게 될 것입니다.



다운받은 파일에 실행 권한을 부여해줍니다. 



해당 프로그램을 실행하면 설치할 경로를 입력해주고 확인을 요구합니다. 여기서 n을 누르면, 경로를 바꾸는 메시지를 요구하지 않고, 바로 설치가 취소됩니다. 다른 경로에 설치하고자 한다면 다운받은 파일을 다른 곳으로 옮기고 터미널에서 권한 설정없이 그냥 실행만 해주시면 됩니다.



genymotion의 설치가 끝났으면 이렇게 genymotion 폴더가 생기고, 프로그램들이 있는 것을 확인할 수 있습니다.


자 이제 마지막 과정만이 남았습니다. 이제 Eclipse에 genymotion plugin만 설치해주면 모든 개발 환경 구축이 끝나게 됩니다.

Eclipse를 실행하여 위에서 Install New Software 과정까지 오도록 합시다.



Add 버튼을 클릭하여, 위와 같이 입력한 후 OK를 클릭해줍니다.



위와 같이 화면이 나오면, Genymobile에 체크 버튼을 클릭하고, Next > 버튼을 클릭한 다음, 동의서에 I Accept.... 를 클릭하고 Finish 버튼을 클릭하시면 Eclipse 재구동을 요구하는 메시지가 나올 것입니다..



재구동을 요구하면 Yes를 클릭하여 재구동까지 완료합니다. 재구동이 끝나면, 다음과 같은 화면에 아이콘이 생길 것입니다.



위 사진처럼 아이콘이 생겨야 정상적으로 설치가된 것입니다.


그러면 설치 경로를 묻는 메시지가 나타날 것입니다. 아까 genymotion을 설치했던 경로, Windows는 C:\Program Files\ 쪽일 것이라 추측됩니다. Linux는 ~/다운로드/ 가 기본 경로이고, 자기가 설치했던 경로를 적어주시면 됩니다. genymotion을 처음 실행했을 때 가상 머신을 생성하려면 아까 등록했던 genymotion ID와 PW를 입력하시고, 생성해주셔야합니다.


생성이 모두 끝나면 아래와 같은 화면이 나타날 것입니다.



자기가 생성한 가상 머신의 목록을 불러오면 이렇게 표시됩니다. 원하는 가상 머신을 클릭한 후 Start를 클릭해주시면 해당 가상 머신이 실행됩니다.



정상적으로 처음 구동시에는 시간이 조금 소요됩니다. 정상적으로 구동을 마치면 위에 화면처럼 표시될 것입니다. 


이제 자신이 만든 소스를 구동하거나 디버깅할 때 하는 방법을 적고, 이 포스트를 마치도록 하겠습니다.



Ctrl + F11 혹은 F11을 누르면 다음과 같이 디바이스 선택화면이 뜹니다. Genymotion의 경우 AVD와 달리 구동되어 있는 디바이스만 리스트에 나타납니다. 디버깅/실행 전에는 반드시 가상 머신 구동 후 이클립스를 띄워 디버깅/실행 바랍니다. 원하는 디바이스를 선택하신 후 OK를 클릭하시면 됩니다.


필자도 Genymotion을 사용한지 얼마 되지는 않았습니다. AVD에 비해 빠른면이 있어 작업할 때 답답한 면을 해소하는 면이 좋아 사용 중입니다만 사용해보니 몇 가지 버그들도 있었고, 최신 버전에 바로 맞춰 나오지 않는다는 단점이 있는 것 빼고는 사용하는 데 큰 지장은 없어보입니다.



참고사항

만약 Windows에 설치하신 유저분들 중 Genymotion 실행시 '작동이 중지되었습니다' 라는 문구와 함께 오류가 나타나시는 분은 아래의 링크를 참조바랍니다.


http://huhspunk.tistory.com/132

저작자 표시 동일 조건 변경 허락
신고

comments powered by Disqus
  1. kalen 신고">2013.08.08 11:04 신고

    왜그러는지 모르겠지만.. 윈도우7에서 실행할경우 작동중지 에러가 뜨내요...
    버츄얼박스로 실행했을경우는 잘됩니다...
    이클립스 연동도 안되구요..

    • BlogIcon N.K Neon K.I.D 신고">2013.08.08 17:19 신고

      음, 제가 직접 쓰는 윈도우8.1에 설치해보니 동작은 잘 됩니다. 혹여 계속 그런 현상이 있으시면, 제어판에서 이벤트 뷰어에 들어가보시면 정확한 원인을 알 수 있을 거에요.

    • BlogIcon 구속영장 신고">2013.10.11 10:34 신고

      혹시 문제 해결하셨다면 이메일로 알려주실수 있으십니까 juooy@navre.com

  2. hapyo 신고">2013.09.09 17:43 신고

    이클립스에서 아이콘 누르면 아래와 같은 메세지가 출력되는데요. ID/PW 넣는 창이 따로 있는지 궁금합니다
    Genymotion directory: /home/genymotion
    Trying to initialize engine
    Initialize Engine: failed

    • BlogIcon N.K Neon K.I.D 신고">2013.09.09 19:37 신고

      Genymotion을 넣은 디렉토리가 초기화하는데 실패하였다는 메시지네요. 권한을 주지 않아 생긴 문제 같습니다. Genymotion 설치 경로를 자기 집 안으로 설정해야 권한에 문제가 생기지 않습니다. 기본 경로 사용을 추천드립니다.
      ID/PW 적는 창은 가상 머신을 추가할 때 나타납니다.

  3. hapyo 신고">2013.09.10 13:36 신고

    답변감사합니다. 사용자 계정에서 환경설정을 하다보니 권한문제로 그런것 같군요. 이것은 해결했는데요. 그럼 아이콘을 클릭했을때 주인장님 처럼 Galaxy Nexus... 이 부분이 보여야 하는데 아무 리스트도 나오지 않습니다. 제 /root 디렉토리 밑에 genymotion, android-sdks, workspace 이렇게 기본경로로 해놓았는데 이렇게 genymotion만 설치하면 끝인것인지 아니면 버추얼 박스 설치 후 아무것도 해놓지 않은 상태입니다만 버추얼 박스에도 무언가 해놓아야 하는건지 궁금합니다. 두서 없이 질문만 드려 죄송합니다.

    • BlogIcon N.K Neon K.I.D 신고">2013.09.10 18:51 신고

      Galaxy Nexus 라고 써있는 부분의 창에 보시면 'New' 버튼이 보일 것입니다. 그 버튼을 클릭하셔서 새로운 가상 머신을 생성하려고 하면, Genymotion 홈페이지에서 가입하셨던 ID와 PW를 요구합니다. 그 ID와 PW를 입력하시고, 로그인하시면 새로운 가상 머신을 만드실 수 있습니다. 과정을 따르시게 되면, Galaxy Nexus 항목을 선택하실 수 있는 리스트박스를 보게 될 것입니다. 그렇게 가상 머신을 생성하시게 되면, Galaxy Nexus 목록이 나오는 것을 확인하실 수 있습니다. 위 과정을 거치면, VirtualBox에도 동일하게 생성되니, 둘 중 한 군데라도 머신을 삭제하게 되면, 리스트에 나타나지 않으므로 참고바랍니다. 현재 유저분께서는 처음 설정하시는 것이기 때문에 아무것도 나타나지 않는 것이 정상이십니다 ^^

  4. dsa 신고">2013.11.15 04:12 신고

    터미널이먼지 모르겟어요 ㅠㅠ

    • BlogIcon N.K Neon K.I.D 신고">2013.11.15 14:05 신고

      터미널은 쉘이라고 불리우는 윈도우의 명령 프롬포트와 같아요 (물론 기반이라던가 내용은 다르고 실질적인 단어만 ㅎㅎ) 리눅스와 맥에서는 이 프롬포트를 터미널 이라고 부르고 있습니다

  5. 2013.11.16 16:41

    비밀댓글입니다

    • BlogIcon N.K Neon K.I.D 신고">2013.11.17 22:18 신고

      포스트랑 전혀 성격이 맞지 않는 댓글을 달으셨습니다만.
      일단 카카오 게임을 포함한 대부분의 게임들은 VM에서 구동되지 않도록 구성되어 있다는 것을 들은 바 있습니다. 뭐 이유는 말씀 안드려도 아실거라 생각하구... 실제로 저 부분은 블루스택이 나왔던 시절부터 그랬었구요. 지금 Genymotion은 많이 피해간다고는 하지만 VM에서 실질상 게임 구동은 무리라고 보시면 됩니다 설령 OpenGL ES 2.0으로 제공해주는 Genymotion이라고 할지라도요.

  6. 문제 신고">2014.03.28 15:33 신고

    문제가 있던데... 지니모션 플러그인을 설치후에는 지니모션이 생성하는 가상디바이스만 인식하고 실제 디바이스는 인식을 못하던데... 로그켓도 안되고 원래는 실기기로 잘쓰고있었거든요.

    • BlogIcon N.K Neon K.I.D 신고">2014.04.05 19:19 신고

      Windows에서라면 잘 모르겠는데, Ubuntu에서는 문제 없이 잘 되는 것을 확인할 수 있네요. Windows User가 아니라 정확한 답변을 못해드리겠네요 ㅠㅠ;

티스토리 툴바