노트북을 항상 들고 다닐 수 없는 상황이 생겨서 USB에 독립적인 개발환경을 구성하려 한다.

Netbeans로도 구성해보고, eclipse로도 구성해 봤는데, 가볍고 쓸만한 건 netbeans이다.
하지만, Msys Path등 설정하려면 컴퓨터속성을 건드려줘야 하는 문제가 있어서 완벽한 USB 포터블 환경이라 할 수 없다.

만약 eclipse처럼 netbeans의 프로그램 내에 path 설정하는 부분이 있는데 못찾았다면 그 또한 문제다.
구글을 검색해도 좀처럼 답을 얻기 힘들다는 것은 그만큼 레퍼런스(?)가 부족하다는 얘기일테니...

아무래도 많이 사용하고 Community가 왕성한 도구를 사용하는것이 정신건강에 더 좋은것 같다.
다만 netbeans보다 다소(?) 또는 많이 무겁다고 느끼지만, 튜닝후에 사용해보니 그럭저럭 괜찮은것 같다.

<참고 : 개발환경 디렉토리 구조>

1. eclipse 다운로드

https://eclipse.org/downloads/eclipse-packages/

- 개발하고자 하는 용도에 맞는 패키지와 Windows architecture를 선택.
- C, C++, JAVA, HTML5까지 공부를 해야해서, Java EE와 C/C++ 버전 두개를 받았음.
- 먼저 CDT 버전을 USB에 압축을 풀고, Java EE 버전을 같은 폴더에 압축을 푼다.
(같은 파일은 [건너뛰기]로 설치)

 

2. JDK 설치

- 개발환경에 1.7버전과 1.8버전을 사용해야 해서 두버전을 설치했다.

http://www.oracle.com/technetwork/java/javase/archive-139210.html

- 설치디렉토리 참조

 

3. msys 설치

https://sourceforge.net/projects/mingwbuilds/files/external-binary-packages/

- 설치디렉토리 참조
- 가장 최근 버전의 압축파일을 받아서 USB경로에 압축해제 함.

 

4. MingW 설치

https://sourceforge.net/projects/mingwbuilds/files/mingw-builds-install

* Threads : MinGW-w64에서는 win32와 posix라는 두 스레드 API를 지원합니다.
win32는 윈도 API의 스레드 API, posix는 winpthreads로 구현된 pthread API
MinGW-w64에서는 C++ 표준 라이브러리로 libstdc++를 사용함. libstdc++의 C++11 thread 구현은 pthread 기반으로 작성되어 있기에, C++11 thread를 사용하기 위해서는 posix thread 를 선택해야 함.

* Exception : 64bit 환경에서 특허 이슈나 오버헤드도 없는 seh를 선택

다른 선택사항은 Default로 설치

- 설치디렉토리는 Msys 디렉토리에 설치(주의 : msys 디렉토리 하위에 mingw 디렉토리를 생성하는것이 아님)

 

5. eclipse 환결설정

USB:\Programming\eclipse\eclipse.ini 파일 편집

 

USB: P:\Programming\eclipse\configuration\.settings\org.eclipse.ui.ide.prefs 파일 편집

* 추후에 개발하다가 workspace switch를 하신다면

위 처럼 드라이브 문자를 제거한 상태로 사용하셔야, 다른 컴퓨터에서

!SESSION 2016-07-12 18:43:08.621 -----------------------------------------------

eclipse.buildId=4.6.0.I20160606-1100

java.version=1.8.0_92

java.vendor=Oracle Corporation

BootLoader constants: OS=win32, ARCH=x86_64, WS=win32, NL=ko_KR

Framework arguments: -product org.eclipse.epp.package.jee.product

Command-line arguments: -os win32 -ws win32 -arch x86_64 -product org.eclipse.epp.package.jee.product

 

!ENTRY org.eclipse.osgi 4 0 2016-07-12 18:43:13.457

!MESSAGE Application error

!STACK 1

java.lang.ArrayIndexOutOfBoundsException

    at java.lang.System.arraycopy(Native Method)

    at java.util.Arrays.copyOfRange(Arrays.java:3485)

    at java.util.Arrays.copyOfRange(Arrays.java:3441)

    at org.eclipse.ui.internal.ide.ChooseWorkspaceDialog.lambda$7(ChooseWorkspaceDialog.java:380)

    at java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:193)

    at java.util.ArrayList$ArrayListSpliterator.forEachRemaining(ArrayList.java:1374)

이런 에러를 안 만납니다.

- eclipse PATH 및 환경설정

: Window -> Preferences 에서 C/C++/Build/Environment에 위의 값을 넣어줌.

만약 잘 안되면

이 부분도 체크해 봐야함.

eclipse로 C/C++ 프로그램을 작성한 뒤 [Ctrl + B]를 눌러서 빌드해야 함.
왜인지는 모르겠으나 원인을 계속 찾아 보겠음.

반응형

+ Recent posts