기존에는 우분투에서 vim만 사용하다가, 최근 들어 불편함을 느끼고 에디터를 찾아보던 와중에 Visual Studio(VS) Code를 찾게 되었습니다. VS Code의 가장 큰 장점은 마이크로소프트라는 것과 무료라는 것입니다. 


최근 에디터 트렌드처럼 깔끔하고, 에디터 내부에서 터미널을 호출해 사용할 수 있는 것이 편한듯합니다. 그리고 C, C#, Python, Ruby과 같이 다양한 언어에 대해 빌드를 할 수 있습니다. 물론 서브라임이나 아톰도 추가 패키지를 설치해서 컴파일을 진행할 수 있지만, 원래의 용도가 빌드보다는 에디팅에 가까우므로(?) 제가 느끼기에는 어느 정도 기능적(디버깅 등) 한계가 있는 듯 합니다.


VS Code는 https://code.visualstudio.com/ 에서 다운받을 수 있습니다.

지원 플랫폼은 아래와 같이 윈도우 7, 8, 10과 Debian, Ubuntu, Red Hat, Redora, SUSE, 그리고 macOS 10.9입니다.



윈도우에서 VS Code를 사용하고자 하신다면 추가적으로 MinGW와 같은 소프트웨어를 설치해야 할 듯 합니다.


저는 우분투 17.10 64bit를 사용하고 있기 때문에, .deb 파일을 다운받았습니다.


설치는 아래의 명령어로 진행하면 됩니다.
$ sudo dpkg -i code_1.20.0-1518023506_amd64.deb 



하지만, 보통의 경우에서는 위와 같이 libconf-2-4 에러(Package libconf-24 is not installed.)가 발생하는데, libconf-2-4만 설치하려 하신다면 아래와 같이 설치가 안 되는 것을 볼 수 있습니다.


" libgconf-2-4: Depends: gconf2-common (= 3.2.6-4ubuntu1) but it is not going to be installed Recommends: gconf-service "


그렇다고, gconf-service를 설치하면 똑같은 문제가 다시 발생합니다. 결론은 의존적인 패키지를 모두 설치해 주어야 합니다.

의존적인 패키지들의 설치는 아래 명령어로 가능합니다.


$ sudo apt-get install gconf-service-backend gconf-service gconf2-common libgconf-2-4


다시, VS code의 설치로 돌아와 dpkg로 설치를 진행하면 아래와 같이 잘 되는 것을 볼 수 있습니다.



VS Code의 실행은 터미널에서 "code"를 입력하거나, 패키지 검색에서 vs code를 찾아서 실행하면 됩니다.



실행이 완료되었다면, 저는 C를 사용할 것이기 때문에 Extensions 탭에서 C를 위한 기능들을 설치해줍니다.



이상 VS Code 설치 방법 포스팅을 마치겠습니다.



최근 파일을 빌드하는 도중, gcc 버전이 6보다 낮아서 진행되지 않아 업데이트를 진행하였습니다.


apt-get update와 apt-get install gcc-6를 하면 된다고 많은 글에서 이야기하였으나, 실제로는 동작하지 않았습니다.

그래서 방법을 찾아보다가 아래의 글을 찾게 되었고, 성공적으로 업데이트를 진행하였습니다.


링크: https://gist.github.com/application2000/73fd6f4bf1be6600a2cf9f56315a2d91


업데이트 이전 gcc-v



업데이트 이후 gcc-v



업데이트 시간은 약 10분 정도 걸렸습니다.



강글리아(Ganglia)를 설치하고 엑셀(csv) 파일로 export하고 나서, 파일을 확인해보니 모든 Timestamp가 1970-01-01T09:00:00+09:00로 표시되는 문제가 발생했습니다. 


참고로, 강글리아의 설치는 apt-get으로 아래 명령을 통해 진행하였습니다.

$ sudo apt-get install -y ganglia-monitor rrdtool gmetad ganglia-webfrontend


그리고 설치된 강글리아 버전은 web으로 확인했을 때 아래와 같았습니다.


Ganglia Web Frontend version 3.6.1 Check for Updates.

Ganglia Web Backend (gmetad) version 3.6.0 Check for Updates.

Downloading and parsing ganglia's XML tree took 0.0052s.

Images created with RRDtool version 1.5.4.

Powered by Dwoo 1.1.1.



다시 본론으로 와서, 문제의 해결책을 찾아서 여러 곳을 살펴보았는데 그래프 db 툴인 RRDtool의 문제로 밝혀졌습니다.

쉘로 rrdtool의 timestamp를 고쳐보려 했지만, 특정 파일에 대해서 update 하는 기능만 있는 것 같아서 아무것도 하지 못했습니다.


그러던 와중 스택오버플로우에 있는 글을 보게 되었고 문제가 해결되었습니다.



결국 RRDtool 1.5.4 버전의 버그였고, 1.4.7로 다운그레이드 하고 export 해보니 현재 시각이 정상적으로 나오는 것을 볼 수 있었습니다.

  1. 2017.10.06 18:51

    비밀댓글입니다



ARM CPU를 사용하는 보드에서 MXNet을 컴파일하려고 하면 ps-lite를 컴파일하는 과정에서 오류가 발생합니다.


ps-lite(https://github.com/dmlc/ps-lite)는 라이트웨이트 파라미터 서버 프레임워크인데 기본 컴파일 설정이 데스크톱, 서버를 대상으로(x86/x64) 되어있기 때문에 ARM에서는 호환이 되지 않는 옵션이 포함되어있습니다.


발생하는 에러는 아래와 같은 -msse2 인식 불가인데 해당 부분을 수정해주어야 컴파일이 정상적으로 진행됩니다.


g++ -I./src -I./include -I/home/odroid/mxnet/deps/include -std=c++0x -MM -MT build/customer.o src/customer.cc >build/customer.d

g++ -std=c++11 -msse2 -fPIC -O3 -ggdb -Wall -finline-functions -I./src -I./include -I/home/odroid/mxnet/deps/include  -c src/customer.cc -o build/customer.o

g++: error: unrecognized command line option ‘-msse2’

Makefile:41: recipe for target 'build/customer.o' failed

make[1]: *** [build/customer.o] Error 1


ps-lite는 MXNet 루트 디렉터리에 존재하고, 수정해야 할 파일은 "mxnet/ps-lite/Makefile" 입니다.


nano나 vi를 통해 해당 파일을 열 면 CFLAGS가 아래와 같이 작성되어있는데, -msse2 를 지우고 -mfpu=neon으로 수정합니다(neon이 없는 코어라면 아예 삭제를 하면 됩니다.)


혹시 모르니 줄을 복사한 다음 #으로 주석처리 해놓는 것을 추천합니다.


CFLAGS = -std=c++11 -msse2 -fPIC -O3 -ggdb -Wall -finline-functions $(INCPATH) $(ADD_CFLAGS)


▼▼▼


CFLAGS = -std=c++11 -mfpu=neon -fPIC -O3 -ggdb -Wall -finline-functions $(INCPATH) $(ADD_CFLAGS)



저장을 하고 빌드를 하면 정상적으로 빌드가 진행됩니다.

'IT > Odroid' 카테고리의 다른 글

ARM 계열 MXNet 설치 오류(ps-lite 오류)  (0) 2017.06.16
Odroid-XU4 리눅스 16.04 설치  (0) 2017.02.27
Odroid-XU4 스펙  (0) 2017.02.27


Ubuntu 15.04 i386(Vivid Vervet, kernel version 3.19)를 사용하고 있었는데 커널 업데이트를 해야하는 일이 생겨서 최신 안정화 버전으로 업데이트하기로 하였습니다. (현재 안정화 버전은 4.10.3 입니다)


그리고 GCC는 4.9.2(Ubuntu 4.9.2-10ubuntu13)를 사용하였습니다.


리눅스 커널 빌드를 위해 libssl과 같은 라이브러리의 설치가 필요한데 라이브러리의 설치는 아래의 명령어를 통해 가능합니다.


$ sudo apt-get install -y build-essential libqt4-dev libncurses5-dev git git-core pkg-config libssl-dev


커널은 https://www.kernel.org/에서 다운로드 받을 수 있으며 아래의 명령어를 통해서도 가능합니다.


$ wget https://cdn.kernel.org/pub/linux/kernel/v4.x/linux-4.10.4.tar.xz


커널 빌드는 아래의 병령어를 통해 빌드 설정, 빌드, 모듈 설치, 적용의 과정을 거치는데 아래의 명령어들을 통해 가능합니다.


만약 지금 사용하는 커널의 설정을 그대로 사용하고 싶으시면 make mrproper 대신에 /boot/config-xx 파일을 커널 빌드 디렉터리의 .config 파일에 덮어씌우면 됩니다.


$ make mrproper

$ make menuconfig

$ make -j4

$ sudo make modules_install

$ sudo cp .config /boot/config-`make kernelrelease`

$ sudo make install

$ sudo reboot


중간에 make menuconfig를 입력하면 아래와 같은 화면이 나오는데, 혹시 개인적으로 수정할 것이 있으면 해당 항목을 enable 해주고, 없으면 Save를 눌러 .config 파일로 저장하고 Exit를 누르면 됩니다.




마지막 명령어인 reboot을 하고 나서 'uname -a' 명령어를 통해 커널 버전을 확인할 수 있습니다.



정상적으로 4.10.3 버전으로 업데이트 되었습니다.



Odroid-XU4 보드에서 리눅스 설치는 간단하게 프리빌드된 이미지 파일을 eMMC 혹은 SD 카드에 작성하면 끝이 납니다.


이미지 파일을 쓰기 위해서는 "Win32DiskImager"라는 프로그램이 필요합니다.

다운로드는 아래의 사이트에서 가능합니다.

https://sourceforge.net/projects/win32diskimager/


그리고 우분투 이미지는 아래의 사이트에서 버전별로 다운로드 가능합니다.

http://odroid.com/dokuwiki/doku.php?id=en:xu3_release_linux_ubuntu


아래의 홈페이지에서 필요한 버전의 Download from Main server or Mirror server를 클릭합니다.



이후 아래의 페이지에서 xu3 버전의 mate(gui) 혹은 minimal 버전 중 img.xz 확장자 파일을 클릭해 다운로드 합니다. 



다운로드가 끝나면, img.xz파일을 압축을 풀고 Win32 Disk Image를 실행합니다.

그리고 폴더 버튼을 눌러서 압축을 푼 .img 파일을 선택합니다.



이후 Device에서 SD 카드 혹은 eMMC를 선택하고 Write 버튼을 누릅니다.



이미지 쓰기가 완료되면 Progress에 녹색 게이지가 다 차고 Successful 이라는 팝업창이 나옵니다.


만약 HDMI 혹은 DVI를 통해 모니터와 연결을 하려면 아래와 같이 boot.ini파일을 수정해야 합니다.

파일의 수정을 위해서는 odroid 보드가 아닌 컴퓨터에 연결을 해야 합니다.


컴퓨터에 연결하면 boot 폴더가 나타나는데 아래와 같이 4개의 파일로 구성되어있습니다. 여기서 boot.ini를 메모장과 같은 에디터 프로그램을 통해 불러옵니다.



수정해야할 부분은 해상도(# --- Screen Configuration for HDMI --- # )와  HDMI/DVI 설정(# --- HDMI / DVI Mode Selection ---) 입니다.


만약 HDMI를 사용하고자 하면 hdmi 앞의 주석(#)을 지우면 됩니다.



마찬가지로 자신이 사용하려는 해상도 앞의 주석(#)을 지우면 됩니다.



수정이 끝나면 저장을 하고 오드로이드에 꽂아서 부팅을 하면 됩니다.

'IT > Odroid' 카테고리의 다른 글

ARM 계열 MXNet 설치 오류(ps-lite 오류)  (0) 2017.06.16
Odroid-XU4 리눅스 16.04 설치  (0) 2017.02.27
Odroid-XU4 스펙  (0) 2017.02.27



http://www.hardkernel.com/main/products/prdt_info.php?g_code=G143452239825



Hardkernel 사의 Odroid-XU4는 Odroid-XU3와 호환되는 보드로 USB 포트의 개수 차이(XU4는 3.0이 2개, 2.0이 1개)와 쿨링팬 등의 설계가 변경되었습니다. 기타 커널이나 드라이버는 XU3용을 사용 가능합니다.


상세스펙은 아래와 같습니다(하드커널 홈페이지에서 발췌).


* Samsung Exynos5422 Cortex™-A15 2Ghz and Cortex™-A7 Octa core CPUs

* Mali-T628 MP6(OpenGL ES 3.0/2.0/1.1 and OpenCL 1.1 Full profile)

* 2Gbyte LPDDR3 RAM PoP stacked

* eMMC5.0 HS400 Flash Storage

* 2 x USB 3.0 Host, 1 x USB 2.0 Host

* Gigabit Ethernet port

* HDMI 1.4a for display

* Size : 83 x 58 x 22 mm approx.(including cooling fan)

* Linux Kernel 4.9 LTS


XU3와 XU4의 다른 점은 XU4는 4.2 버전의 커널을 빌드할 수 있습니다.


그리고 하드커널에서 파는 Vu7+와 같은 터치스크린 모니터를 사용할 수 있지만, 기본 파워 서플라이보다는 높은 수준의 파워를 연결해야 합니다. 기본 서플라이로 사용할 시 모니터가 켜졌다 꺼지거나 잘 작동하지 않습니다. 

'IT > Odroid' 카테고리의 다른 글

ARM 계열 MXNet 설치 오류(ps-lite 오류)  (0) 2017.06.16
Odroid-XU4 리눅스 16.04 설치  (0) 2017.02.27
Odroid-XU4 스펙  (0) 2017.02.27



리얼포스를 영입하고 나서 스페이스 바가 ABS 재질이라 앞으로 번들거림을 피하고자 스페이스 바를 샀습니다.


PBT 스페이스 바는 중고 장터 혹은 매스트랍(https://www.massdrop.com)등을 통해 구매할 수 있는데 중고는 보통 개당 20,000원 정도였고 매물도 많이 없었습니다.


그리고 매스드랍 PBT 스페이스 바를 가장 많이 사용하시던데 구매를 아무 때나 할 수 있는 게 아니라 거래가 뜰 때 까지 기다렸다가 사야 하고, 배송에도 시간이 오래 걸려서 포기하였습니다.


그래서 찾다 보니 중국의 알리 익스프레스(https://www.aliexpress.com), 타오바오 등에서 구매가 가능하다는 것을 알게 되었습니다.


알리 익스프레스는 영어페이지를 제공하고 대부분의 판매자가 한국으로 배송해주기 때문에 알리 익스프레스로 결정하였습니다.


저는 아래의 판매자에게 검은색 1개를 구매하였고 스페이스 가격 6.9달러 + 배송비 7.26달러 총 14.16달러를 주었는데, 현재는 배송비 1달러에 살 수 있는듯합니다. 판매자 등급도 높고 대부분 판매자가 같은 제품을 파는 것 같습니다.


https://www.aliexpress.com/item/Topre-realforce-hhkb-capacitor-keyboard-keycaps-multicolour-cap-pbt-material/32680577961.html



배송은 아래와 같이 약 10일 걸렸습니다. 뽁뽁이에 쌓여 배송 와서 부러지거나 상처 나지 않았습니다.



아래는 제품 사진인데 생각보다 색이 조금 진해서 기존의 먹색과는 차이가 발생하지만, 그렇게 거슬릴 정도는 아닌 것 같습니다.

(먼지는 양해 부탁드립니다.)




기존의 ABS 스페이스 바보다는 약간 소리가 큰듯하고 리얼포스의 다른 키캡 보다는 약간 매끄러운 질감입니다.


체결은 바로 맞춰 누르면 들어갈 정도로 생각보다 잘 맞았습니다.


생각보다 만족스러워서 다음에는 다른 색을 사볼 계획입니다.


Ubuntu 14.04 이후 버전을 사용하면서부터 부팅 시 아래와 같은 'System program problem detected' 에러가 발생하였습니다.



Report problem을 클릭하면 'com.ubuntu.apport.apport-gtk-root' 를 실행할 때 문제가 발생했다고 합니다.



gtk는 리눅스에서 X윈도우를 위한 툴인데 이러한 문제는 apport 파일 수정을 통해 해결 가능합니다.



1. apport 수정


apport 파일 수정을 아래의 명령을 터미널에 입력해서 수정할 수 있습니다.

$ sudo vi /etc/default/apport


파일을 열면 아래와 같이 enabled=1로 설정되어 있습니다. 



그러면 1로 되어있는 부분을 아래와 같이 0(enabled=0)으로 수정해 줍니다.



그리고나서 esc 키를 누르고 shift+zz 혹은 :wq! 로 vi를 종료합니다.



2. 재부팅


아래의 명령어를 통해 재부팅을 하고 나면 에러가 해결된 것을 볼 수 있습니다.

$ sudo reboot



ANTLR를 사용하는 방법 중에 이클립스를 사용하는 방법이 있습니다. 그 중 가장 간단한 방법으로는 이클립스의 MarketPlace를 이용하는 것 입니다.

다만 ANTLR v4 기준으로 현재 이클립스 최신버전(LEON)에서는 실행을 할 수 없기때문에 LUNA 이하의 버전을 사용해야 합니다.


저는 이클립스 LUNA를 사용해서 진행하였습니다.

 

1. 이클립스 MarketPlace 실행

MarketPlace는 이클립스의 메뉴 'Help-Eclipse Marketplace'로 실행이 가능합니다.



2. ANTLR IDE 설치하기

Marketplace의 Find에서 ANTLR을 입력해 검색합니다.



검색 결과 중에서 ANTLR 4 IDE x.x.x(버전) Install 버튼을 누르면 ANTLR의 설치가 됩니다.




'IT > Eclipse' 카테고리의 다른 글

이클립스(Eclipse)에서 ANTLR 설치하기  (0) 2016.12.16
이클립스(Eclipse) 실행 오류 해결하기  (2) 2016.12.16