2013년 6월 18일 화요일

ncurses 설치

zedboard를 위한 petalinux를 설치하려니 또 ncurses를 설치하라고 나왔다.
이에 ncurses가 뭔지 위키를 봐봤다.
ncurses는 프로그래머가 텍스트 사용자 인터페이스를 터미널 독립방식으로 기록할 수 있도록 API를 제공하는 프로그래밍 라이브러리. 라고 위키피디아 한글판에 나와있다.
아래는 해당 URL
http://http://ko.wikipedia.org/wiki/Ncurses

ncurses의 설치는 간단하다.
처음 5.9버전을 설치하려 했더니 이런저런 에러가 계속 발생되 그냥 5.7로 설치.

먼저 터미널을 열고
$ sudo wget http://ftp.gnu.org/pub/gnu/ncurses/ncurses-5.7.tar.gz
이것은 ftp에서 ncurses-5.7.tar.gz를 다운받으라는 명령.
$ sudo tar zxf ncurses-5.7.tar.gz
압축풀기.
$ cd ncurses-5.7
$ sudo ./configure
$ sudo make
$ sudo make install

이러면 설치 완료.

2014.01.16 추가.
요래요래 해도 되더라.
1. sudo apt-get install build-essential
2. sudo apt-get install libncurses5-dev

참고합시다.


Zlib 설치

Zlib는 C로 작성된 데이터 압축라이브러리.
ZedBoard의 petalinux를 설치하려면 필요하다.
Zlib를 설치하기 위해서는 gcc & make가 필요.
$ sudo apt-get install gcc
$ sudo apt-get install make

단, Ubuntu의 경우 이미 gcc & make가 설치되어 있으므로 설치할 필요없음.
명령 실행해도 이미 최신의 버전이 설치되어 있다고 나옴.

Zlib 설치 과정.
다음의 URL에서 다운받기.
URL: http://zlib.net
필자는 파폭을 이용해 다운받았더니 /home/유저명/Downloads 폴더에 있더군.

Terminal 에서
$ cd /home/유저명/Downloads
$ cp zlib-1.2.8.tar.gz /작업디렉토리명/
$ cd /작업디렉토리명/
$ tar zxf zlib-1.2.8.tar.gz
$ cd zlib-1.2.8
$ sudo ./configure -s
$ sudo make
$ sudo ./configure
$ sudo make test
이것을 하면 test결과가 터미널 창에 나옴.
$ sudo make install
인스톨 됨.
이제 기존 파일 대체하기.
$ ls -al libz.so*
$ cp libz.so* /usr/local/lib
$ cd /usr/local/lib
$ ls -al libz.so*
$ sudo rm -rf libz.so
$ sudo rm -rf libz.so.1
$ sudo ln -s libz.so.1.2.8 libz.so
$ sudo ln -s libz.so.1.2.8 libz.so.1
기존의 파일을 새로운 zlib파일로 대체.
이제 설정정보를 추가한다.
$ cd /etc
$ sudo vim ld.so.conf

/usr/local/lib 를 삽입

#sudo ldconfig

ZedBoard Linux HostPC 연결.

ZedBoard의 Linux HostPC와 연결을 해보자.

우선 본인은 ISE Webpack과 vivado를 설치해 놓은 후 진행했다.
아마도 상위의 것들을 설치하지 않아도 ZedBoard에 SD카드를 꽂고 연결 한다면 될것으로 생각된다.

1. Ubuntu 10.04 설치.
2. minicom 설치.
3. ZedBoard연결.
  1) usb to uart는 Cypress의 CY7C64225 칩을 사용하는데 윈도우 같은경우 설치파일로 드라이버를 설치해줘야하지만 Linux에서는 특별히 설치할 필요를 못 느낌.
  2) SD카드 꽂기.
  3) 전원연결 켜기.

4. terminal 열기.
  1) $ dmesg | grep tty 입력
     상위 명령을 입력하면 보드의 usb to uart가 연결된 것을 볼 수 있다.

  2) $ minicom -D /dev/ttyACM0 -b 115200 -8 -o
     상위 명령으로 미니컴을 실행시킨다.
     아래 그림과 같이 zynq> 대기화면이 나오면 된다.


5. 이렇게까지만 해도 일단 host linux와 zedboard의 연결은 된 것임.



VirtualBox 화면 크기조정 및 hostkey

VirtualBox를 쓰다보면 호스트키(hostkey)의 사용이 간혹 필요할때가 있다.
화면 설정이나 등등에 이때 호스트키어쩌고저쩌고 내용이 나오긴 하는데
간혹 노트북을 쓰다보면 안먹을 때가 있다.
이런때는 호스트키를 F가 붙은 펑션키 같은것으로 바꾸고 쓰면 편하다.
다음은 호스트키를 사용 조합해 쓰는 기능을 간략히 나타낸다.

1. 전체화면모드: hostkey + F
2. 심리스모드: hostkey + L
3. 크기조정보드: hostkey + C
4. 게스트 디스플레이 크기 자동조절: hostkey + G
5. 창 크기조정: hostkey + A

그럼 hostkey는 어떻게 설정하고 변경하는가?
아래 그림을 보도록.
빨간 두번째 그림 빨간 박스친곳에 Right Control이라 적힌부분을 바꾸면 된다.



2013년 6월 17일 월요일

VirtualBox 공유폴더설정

VirtualBox Ubuntu 사용 공유폴더 설정에 대해 적어본다.
공유폴더 설정을 위해서는 먼저 게스트 확장이 필요하다.

1. 그림과 같이 Ubuntu가 실행되는 창에서 게스트 확장을 누른다.


    게스트 확장을 누른 후 터미널에 들어가서 다음과같이 치면된다.
    
    $ cd /
    $ cd media
    $ cd 게스트확장을 눌렀을때 생긴 CD명
    $ ./VBoxLinuxAdditions.run 


2.Window 상에서 공유폴더로 쓸 폴더를 하나 생성한다.
  ex) win7 내컴퓨터-> 새로만들기->새폴더 (name: Shared)

3. VirtualBox 장치->공유폴더 선택.
4. 머신폴더에서 경로설정 이때 자동마운트, 항상사용하기 체크.
    * 폴더 이름은 자동으로 생성된다.

5. Ubuntu 터미널 실행.
6. 공유폴더에 엮을 폴더하나 생성.
   ex) 본인의 경우 /mnt/Shared폴더를 사용.
         $mkdir /mnt/Shared

7. 폴더마운트
   $sudo mount -t vboxsf Share( 이곳은 2번에서 자동으로 설정된 이름을 쓴다.) /mnt/Shared (엮어줄 폴더경로를 쓴다.)

8. 간혹 vboxsf가 없다는 오류가 발생되는데 이때는 vbox Addtion을 설치하면 된다.

Xilinx Zynq ZedBoard Linux 개발환경 셋팅

참조 URL: http://www.wiki.xilinx.com/Getting+Started

1. PetaLinux
   PetaLinux에 포함된 것 들.
    1) pre-configured binary bootable images.
    2) fully customizable Linux for the Xilinx device.
    3) tools that automate the configuration, build and deployment process.
 
   PetaLinux 제공.
    1) Quick-start LInux images.
    2) Board Support Packages.
    3) Host Development Tools.

2. PetaLinux 다운.
    1) http://www.xilinx.com/support/download/index.htm 에서 다운.
    2) ISE Design Tools 버전 선택 및 다운받을 파일 선택.
      (1) PetaLinux 12.12 installation archive for Zynq, Microblaze and PPC440.
      (2) PetaLinux 12.12 Board Support Package for Avnet ZedBoard.

3. PetaLinux 최소 사양.
    1) 2GB RAM (recommended minimum for Xilinx tools)
    2) Pentium 4 2GHz CPU clock or equivalent
    3) 5GB free HDD space
    4) Recommended OS: CentOS RHEL 5 (32-bit), or Ubuntu 10.04 (32-bit or 64-bit)

4. Extract the PetaLinux Package
    $ tar zxf petalinux-v12.12-final-full.tar.gz
    petalinux-v12.12-final-full 폴더로 설치됨.
    일반적으로 /home/user/petalinux-v12.12-final-full에 설치됨.
    경로는 옮길 수 있음.

5. Setup PetaLinux Working Environment
    1) PetaLinux 설치 폴더로 이동.
       ex) $ cd /home/user/petalinux-v12.12-final-full
    2) Source the appropriate PetaLinux setup script by running this command on the command console
       For Bash:
        $ source settings.sh

       For C Shell:
        $ . settings.csh

6. 보드 bsp설치.
        $ petalinux-install-bsp <Path-to-BSP>

설치 완료되면 마지막에
INFO: BSP successfully iinstalled.
라고 나옴.


처음 할 때 라이센스의 문제였었는지 5번까지는 잘 됐는데 6번에서 계속 오류가 발생했었음.
라이센스새로 받아서 다시 하니까 됨.
이럴수가...

*중요.
1. Only run one of these scripts - whichever is appropriate for your command shell.
2. You must run the settings script each time you open a new terminal window or shell. PetaLinux SDK will not operate correctly otherwise.
3. You must be within the PetaLinux root directory (e.g. /home/user/petalinux-v12.12-final-full) to source the settings files.



2013년 6월 9일 일요일

Xilinx Design Tools 14.4 오류 해결 문제 (Cannot compile ARM application on Windows 7 64bit)

Zynq를 가지고 Hello World를 띄우기위해 단계를 밟아가는 중 문제에 봉착했다.

문제의 발생은 하드웨어 메모리 설정 후 "PlanAhead의 "Design Sources 밑의 system"을 Create top HDL 하고나서 export할때 발생했다.
export를 시키면 Xilinx SDK 가 실행되는데 이때, 실행 후 "Board Support Package"를 만들고 나서 빌드할때 다음과 같은 오류가 발생되는 것이다.

Running libs - 'make -s libs "COMPILER=arm-xilinx-eabi-gcc"
"ARCHIVER=arm-xilinx-eabi-ar" "COMPILER_FLAGS= -O2 -c"
"EXTRA_COMPILER_FLAGS=-g"'.
"Compiling common"
process_begin: CreateProcess(NULL, arm-xilinx-eabi-gcc -O2 -c -g -I../../../include *.c, ...) failed.
make (e=2): The system cannot find the file specified.

이 문제의 해결법은 다음의 URL (http://www.xilinx.com/support/answers/53955.html) 에서 찾았다. 이미 알려진 이슈라고 이야기를 하며 몇가지 해결 옵션을 제공한다.

해결책을 보면.
1. SDK의 실행을 인스톨된 폴더에서 직접하라.
-> <install_dir>\14.4\ISDE_DS\EDK\bin\nt64\xdsk.exe
2. SDK를 바탕화면 바로가기 버튼을 사용하라.
3. SDK를 환경설정을 다시하고 나서 하라.
-> Command Prompt 열기.
-> <install_dir>\14.4\ISE_DS\settings64.bat
->xsdk 명령 사용해서 실행.
4. <install_dir>\14.4\ISE_DS\EDK\gnu\arm\nt 폴더를 복사 붙여넣기 한다.
이때, nt64폴더가 없다면 생성해서 붙여넣기 하면 된다.

필자의 경우 4번의 해결책으로 빌드를 성공시켰다.

끝.