기본 콘텐츠로 건너뛰기

Yocto Project에 대해서 지난해부터 관심을 가져서 오픈소스 공개세미나도 주말에 찾아가보고 했었지만, 막상 실무와 연결이 안되어 있어 진행이 되지 않음. 이제 다시 Yocto를 차@아보는데, RaspberryPi2에 올려보는 걸로 시작합니다. 출발은 http://git.yoctoproject.org/ 이전에 기본적인 문서는 대충 살펴보고 시작합니다. yocto project 구조 openembbeded , poky , bitbake 의 역활에 대해서 시간을 내서 document를 읽어볼 필요가 있음. 1) 14.04 이상 Linux PC를 준비합니다. 문서에 소개되어 있는 빌드에 필요한 다른 툴을 미리 설치합니다. $ sudo apt-get install gawk wget git-core diffstat unzip texinfo gcc-multilib \ build-essential chrpath socat libsdl1.2-dev xterm 2) git clone -b jethro git://git.yoctoproject.org/poky cd poky git clone -b jethro git://git.yoctoproject.org/meta-raspberrypi 앞으로 소개되는 다운로드 주소는 http://git.yoctoproject.org/cgit/cgit.cgi/poky/ 참고합니다. 하위에는 http://git.yoctoproject.org/cgit/cgit.cgi/meta-raspberrypi/ 도 있습니다. 상위 서로 다른 branch를 가져오면 빌드가 안되는 경우가 있음. krogoth 조합에서는 성공해보지 못했다 .-> krogoth 조합에서도 성공 3) 빌드 환경변수를 설정합니다. 이때 source ./oe_init-build-env 형태로 실행해야 환경변수가 현재 console shell에 유지가 합니다. ./oe_init-build-env 식으로 하면 ...

Wifi Dongle Driver Porting RTL8188CUS to embedded Linux

여러가지를 고려하여 kernel 에서 제공되는 Wifi Dongle을 선정했으나 kernel source에서 제공되는 driver로는 driver로딩은 되었지만 wlan0가 보이지 않음. realtek site를에서 linux driver를 받아서 http://www.realtek.com.tw/downloads/downloadsView.aspx?Langid=1&PNid=48&PFid=48&Level=5&Conn=4&DownTypeID=3&GetDown=false&Downloads=true#RTL8192CU nvs3320 kernel device driver 빌드조건을 추가수정하여 Makefile 73 CONFIG_PLATFORM_ARM_NVS3320 = y .. 513 ifeq ($(CONFIG_PLATFORM_ARM_NVS3320), y) 514 EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN EXTRA_CFLAGS += -DCONFIG_IOCTL_CFG80211 -DRTW_USE_CFG80211_STA_EVENT 515 ARCH := arm 516 CROSS_COMPILE := arm-cortex_a9-linux-gnueabi- 517 KVER := 3.4.39 518 KSRC:= ~/git_local/myproject/kernel/kernel-3.4.39/ 519 endif 빌드하여 kernel driver를 생성한후 보드에 복사한 후 insmod를 통해서 device driver를 로딩하면 wlan 이 보임. # insmod 8192cu.ko [ 26.500000] rtl8192cu driver version=v4.0.2_9000.20130911 [ 26.500000] build time: Jan 18 2016 16:18:46 [ 26.510000] [ 26.510000] usb_endpoint_descriptor(0): [ 26.5...

python 에서 Network으로 전송된 Byte 데이타 처리예

Pythonjc서 제공하는 기본적인것만 가지고 간단한 GUI 를 가진 모니터링 프로그램을 구현하려고 하는데 Tk로 해보려고 생각중 인데 Network 으로 전송받은 데이타는 어떻게 unpack 하는지 몰라서 검색을 좀 했는데   string 문자열처럼 format이라는것을 이용해서 Byte를 분리해내다니 Python 참 신기한것 같다. http://stackoverflow.com/questions/15596118/parsing-c-structs-in-python 수신부         data = client.recv(data_payload)         if data:             #             data_size, data_process, data_buf  = unpack('             #print "Data: %s" % data             print "size %d %d %s" % (data_size, data_process, data_buf)             sent_data_size = client.send(data) 송신부 struct _pd_info {     int size;     int cou...

Python GUI + Echo (Recv) Server Simple Sample

GUI 와 echo server (thread)로 동작하는 예제 import tkinter as tk import tkinter.ttk as ttk import threading import echo_server as myserver import datetime def run_echo_server(port=1234):     myserver.echo_server(port)         class workclass(threading.Thread):     def run(self):         run_echo_server()     class Window(ttk.Frame):     def __init__(self, master=None):         super().__init__(master)         hellolabel = ttk.Button(self, text="헬로" )         quitButton =ttk.Button(self, text="Quit", command=self.quit)         hellolabel.pack()         quitButton.pack()         self.pack() if __name__ == '__main__':     th1 = workclass()  ...

우분투에서 성가신 자동 실행 처리

우분투운서비스는 종료된지 예전인데 script에 남아 있어서 항상 실행된다 apt-get 패키지가 제거되어도 etc/xdg/autostart 폴더에서 삭제해야 실행되지 않는다. /etc/xdg/autostart$ ls at-spi-dbus-bus.desktop              gnome-settings-daemon.desktop                print-applet.desktop bluetooth-applet-unity.desktop       gnome-sound-applet.desktop                   pulseaudio-kde.desktop bluetooth-applet.desktop             gnome-user-share.desktop                     pulseaudio.desktop deja-dup-monitor.desktop             gsettings-data-convert.desktop               telepathy-indicator.desktop gdu-notification-daemon.desktop      gwibber.desktop                             ...

bash test 명령 인자..

  shell 에서 test condition parameter 종류   -d  dir file exist and dir ? -e file exist -f file exist and  regular file ? -r readable file -s file exist or size not zero -w writable -w excutable   if test $# –eq 0     then     echo “supply one argument “     exit 1 fi   if test –f “$1”     then         echo “$1 is file”     else         echo “$1 is not a oridnary  file” fi   $> bash example.sh or $> . example.sh or chmod u+x example.sh ./example.sh Technorati 태그: bash , linux , ubuntu