메뉴 건너뛰기

조회 수 7890 추천 수 0 댓글 0
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄 첨부
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄 첨부

안드로이드는 자바기반으로 만들어져 있습니다.

소형 임베디드 기기에서 자바를 기반으로 만들기란 속도면에서 많은 단점이 있지만,

안드로이드를 개발한 앤디 루빈의 말에 따르면, 

"안드로이드를 개발할 때부터 성능이 떨어지는 스크립트와 같은 언어들은 처음부터 고려 대상에서 제외하였고, Object-C 언어나 C# 언어와 같이 애플과 마이크로소프트사에서 사용하는 언어들을 배제하였을 때 안드로이드 입장에서 자바를 고를 수 밖에 없었다 "

라고 합니다.


결과적으로 이러한 전략은 성공하였지만, 안드로이드 역시 C/C++ 언어를 제공해야 할 필요성이 발생하게 됩니다따라서 NDK를 통해 자바에서 C/C++을 통해 구현된 라이브러리를 사용할 수 있게 되었습니다.


이번 포스팅에서는 NDK를 사용하는 기본적인 과정을 알아보고, 이클립스에서 NDK 프로젝트를 설정하는 방법을 알아보겠습니다.


이클립스와 JDK, 안드로이드 SDK는 설치되어 있다고 가정하고 시작합니다.



(1) 시그윈 설치


윈도우에서 개발한다면 시그윈을 설치해야 합니다.

안드로이드는 NDK는 리눅스에서 사용하는 Make 명령어와 쉘-스크립트를 이용해 컴파일 작업을 수행합니다.

따라서 해당 명령어가 동작하도록 가상환경을 만들어 줄 필요가 있으며, 그러한 역할을 하는 것이 시그윈입니다.


시그윈 다운로드 : http://cygwin.com/install.html


Install from Internet 을 선택하고 주~욱 진행하다가 Select Your Internet Connection에서 Direct Connection을 선택


▼ 그럼 아래와 같이 Download Site를 선택하게 되는데 아무대나 상관은 없지만 

혹시라도 더 빠를까 하여 jp로 끝나는 일본 사이트를 선택합니다



그다음 설치할 패키지를 선택하는 창이 나오는데, Devel 항목에 개발에 필요한 모든 패키지들이 있습니다.

다 설치해도 상관없지만 시간이 오래걸리므로 필요한 것만 받도록 합니다.


- binutils: 링커와 빌드 도구

- gcc-core, gcc-g++: C/C++ 컴파일러

- gdb: GNU 디버그

- make: 프로그램을 빌드하는데 사용하는 make 패키지


또한 vim을 사용할 수도 있을것 같다라고 생각하시면 Editor항목에서 vim과 vim-common을 받습니다

(난 vim이 편해서 vim쓸꺼야, 이게아니면 안받아도 상관없습니당) 

자, 이제 환경변수를 설정하여 make, gcc등의 명령어가 동작하도록 합니다 

- '시작프로그램 -> 컴퓨터 우클릭 -> 속성 -> 고급 시스템 설정 -> 환경변수 -> 새 시스템 변수' 에 CYGWIN_HOME 추가


 


'시작프로그램 -> 컴퓨터 우클릭 -> 속성 -> 고급 시스템 설정 -> 환경변수 -> PATH 변수'에 %CYGWIN_HOME%\bin 추가


 



(2) 안드로이드 NDK 설치


C/C++ 코드를 안드로이드에서 돌아가도록 크로스 컴파일 하려면

해당 플랫폼에 맞는 라이브러리들이 필요합니다

안드로이드 NDK는 이러한 라이브러리들을 제공해줍니다


안드로이드 NDK 다운로드: https://developer.android.com/tools/sdk/ndk/index.html

여기서 자신의 운영체제에 맞는 NDK를 다운받습니다

그리고 압축을 풀고 마찬가지로 환경변수를 추가합니다

- ANDROID_NDK_HOME, C:\Android\android-ndk-r9b

- Path에 %ANDROID_NDK_HOME% 추가


(3) 이클립스에서 NDK 경로 추가


- 'Window -> Preference -> Android -> NDK -> NDK Location' 에 NDK가 설치된 경로를 입력해주세요


 


혹시 NDK 항목이 없으면 'Help->Install New Software' 에서

 https://dl.google.com/android/eclipse/에 접속한 뒤, 

Android Native Development Tools 를 다운받아 주세요


List of Articles
번호 제목 날짜 조회 수
217 안드로이드 - 커스텀 폰트(Custom Font) 적용하기 file 2021.04.02 344
216 Volley 로 웹요청하고 응답받기1 - Get방식 file 2020.12.14 348
215 Volley 이용시에 한글 깨질때 UTF-8로 변경 2020.12.14 348
214 안드로이드 - 인텐트(Intent)를 활용한 액티비티(Activity)간 데이터 전달하기 file 2021.03.31 349
213 Fragment에서 Toast 사용하기 2020.12.14 376
212 Volley 로 웹요청하고 응답받기3 - Get방식 , json 읽기 (php,mysql) file 2020.12.14 378
211 안드로이드 - 리사이클러 뷰(RecyclerView) 구현 file 2021.04.01 390
210 안드로이드 - SharedPreferences에 앱 정보 저장하기 file 2021.04.02 395
209 안드로이드 스튜디오 - 코드 자동 들여쓰기 file 2021.03.29 420
208 안드로이드 - 프로그레스바(ProgressBar) 구현하기 file 2021.04.01 451
207 안드로이드 - 툴바(ToolBar)를 사용하여 앱바(App Bar) 구현하기 file 2021.04.01 455
206 안드로이드 입문 연습문제 3문항 - CheckBox, RadioButton, EditText, Spinner, 이벤트연습 file 2020.12.14 480
205 구글맵 snippet을 두줄이상으로 구현하기 file 2020.12.14 481
204 안드로이드 - 액티비티(Activity)로부터 결과 데이터 받아오기 file 2021.03.31 483
203 안드로이드 - 프래그먼트 (Fragment) 사용하기 file 2021.04.02 486
202 안드로이드 - 리스트뷰(ListView) 구현 file 2021.04.01 490
201 안드로이드 - RecyclerView 안에 RecyclerView 구현하기 file 2021.04.02 502
200 안드로이드 - 프레임레이아웃 (FrameLayout) file 2021.03.29 517
199 안드로이드 - 색상 리소스 (Color Resource) 추가 </color> file 2021.03.31 551
198 안드로이드 - Text 입력 이벤트 처리 - TextWatcher file 2021.04.02 557
Board Pagination Prev 1 2 3 4 5 6 7 8 9 10 ... 13 Next
/ 13

하단 정보를 입력할 수 있습니다

© k2s0o1d4e0s2i1g5n. All Rights Reserved