'빵꾸똥꾸 개발자/Linux'에 해당되는 글 7건

  1. 2011.10.26 Install VMware tools in Ubuntu server 10.04 (2)
  2. 2011.05.13 printk
  3. 2011.05.02 mib2c 사용법
  4. 2010.03.19 ctags & cscope 설치 및 사용하기
  5. 2010.03.17 How to install GUI in Ubuntu 9.10 (Karmic) Server
  6. 2010.03.02 ubuntu 한글설정
  7. 2007.10.27 kdevelop로 리눅스에서 C 코딩 하기

출처: http://ubuntuforums.org/showthread.php?t=1561822

"
VMware can't find kernel header  " problem...


  
To install VMware Tools on a Ubuntu 10.04 Guest, from a Windows 7 Host (running VMware server 2.0.2) this documentation article (https://help.ubuntu.com/community/VMware/Tools) instructs you to use the following commands:
Code:
sudo apt-get install build-essential linux-headers-`uname -r` psmisc
then later
Code:
sudo ./vmware-install.pl
However, like others have posted before, this results in compilation errors:


Quote:
you can install the driver by running vmware-config-tools.pl again after making sure that gcc, binutils, make and the kernel sources for your running kernel are installed on your machine.
a) are there instructions available that will allow me to fulfill these requirements?
b) can said instructions be added to the documentation?

There are numerous threads regarding similar issues with VMware Tools. But many of them are unclearly stated, I hope that I have avoided that pitfall.
신고

'빵꾸똥꾸 개발자 > Linux' 카테고리의 다른 글

Install VMware tools in Ubuntu server 10.04  (2) 2011.10.26
printk  (0) 2011.05.13
mib2c 사용법  (0) 2011.05.02
ctags & cscope 설치 및 사용하기  (0) 2010.03.19
How to install GUI in Ubuntu 9.10 (Karmic) Server  (0) 2010.03.17
ubuntu 한글설정  (0) 2010.03.02
Posted by 나마스떼

댓글을 달아 주세요

  1. comment maigrir 2011.12.15 18:00 신고  댓글주소  수정/삭제  댓글쓰기

    웹사이트 나는 후회 당신이 게시 할 쓴거야 더 보통 !

  2. Marlin 2011.12.19 21:10 신고  댓글주소  수정/삭제  댓글쓰기

    블로그 !처럼 우리는 이것이 정말 내 중 하나입니다 입니다 친절 에 읽기 !


As a kernel developer you'll probably find yourself treating the 'printk' function as a drop-in replacement for the 'printf' function provided by any useful C library such as uclibc or glibc - After all, it's usage is virtually the same. It was for this reason that I found my self naively surprised when reading the source for the kernel's implementation - I was surprised because it offers many more features than the typical C libraries' implementation. As I was unable to find any useful documentation on this - I thought I'd provide a brief overview.

Let's start with the typical '%p' type format specifier - we usually use it for printing the address of a pointer. However if you take a peek at the 'pointer' function in lib/vsprintf.c you'll notice that you can further specify the pointer type to print additional information. We'll look at some examples.

printk("%pf %pF\n", ptr, ptr) will print:
module_start module_start+0x0/0x62 [hello] 
So where ptr is a function pointer, the %pF and %pf format specifiers will print the symbolic name of the function with or without an offset. In order to make use of this you need to ensure your kernel is compiled with support for CONFIG_KALLSYMS - This adds a symbol table to the kernel.

How about this one:

printk("%pM %pm\n", mac, mac) will print:
2c:00:1d:00:1b:00 2c001d001b00 

So where mac refers to a MAC address, the %pM and %pm format specifiers will nicely print the MAC address with or without colons between bytes.

And finally:

printk("%pI4 %pi64\n", ip, ip) will print:
127.0.0.1 127.000.000.001

So where ip refers to an IP address, the %pI and %pi format specifiers will nicely print the IP address. The 4 suffix specifies the address is an IPv4 address - the 6 suffix for IPv6 address could also be used instead. In the case of IPv4 addresses the difference between an upper and lower case 'I' determines if leading zeros should be used (only in the most recent of kernels). In the case of IPv6 addresses the capitalization determines if colons are used or not.

So if you find yourself writing a network driver, debugging something with function pointers or wondering why stack traces don't contain symbols then these format specifiers may come in useful. For more information, and the full extent of the extended format specifiers (there are more), the best place to look is the code. Happy Coding.

신고

'빵꾸똥꾸 개발자 > Linux' 카테고리의 다른 글

Install VMware tools in Ubuntu server 10.04  (2) 2011.10.26
printk  (0) 2011.05.13
mib2c 사용법  (0) 2011.05.02
ctags & cscope 설치 및 사용하기  (0) 2010.03.19
How to install GUI in Ubuntu 9.10 (Karmic) Server  (0) 2010.03.17
ubuntu 한글설정  (0) 2010.03.02
Posted by 나마스떼

댓글을 달아 주세요

1. cp MY-MIB net-snmp/local
2. 환경변수 설정  - export MIBS="./MY-MIB"
3. mib2c -c mib2c.old-api.conf module_name
4. bug 수정 및 compile
신고

'빵꾸똥꾸 개발자 > Linux' 카테고리의 다른 글

Install VMware tools in Ubuntu server 10.04  (2) 2011.10.26
printk  (0) 2011.05.13
mib2c 사용법  (0) 2011.05.02
ctags & cscope 설치 및 사용하기  (0) 2010.03.19
How to install GUI in Ubuntu 9.10 (Karmic) Server  (0) 2010.03.17
ubuntu 한글설정  (0) 2010.03.02
Posted by 나마스떼

댓글을 달아 주세요

출처: http://www.dduri.net/blog/entry/ctags

1. ctags 란 ?
   = >  ctags는 프로그래밍 소스 코드의 태그 (전역변수 선언, 함수 정의, 메크로 정의)들의
          데이터 베이스(tags파일)을 생성하는 명령어입니다.
          커널 소스 분석등 작업에서 탁월한 성능을 발휘합니다

2. ctags 버전 확인하기
    = > (쉘에서)  $ctags --version 이라고 입력한다 설치 돼어 있는경우 버전 정보가 나옵니다
    cannat commond find  => 깔려 있지 않을시 에러 출력
    ( 대부분 기본리눅스에서 디폴트로 깔려 있지 않을것이다 처음 설치시 전체 설치 또는..
      선택 설치로 ctags를 설치 한경우라면 몰라도 디폴트로는 거의 안깔려 있습니다.
      특히 ubuntu 의 경우 원래 데스크탑용으로 개발 돼고 있어서.. 개발 툴이 하나도 안깔려 있기
      때문에 별또 설치를 필요로 합니다 )

3. ctags 설치하기
    => ubuntu 의 경우 레드헷 이나 페도라 등 다른 리눅스에 비해 비교적 쉽게 설치할수 있습니다
        레드헷일 경우 rpm 버전을 따로 다운 받아 설치 해야 하는 방면 데비안 계열 명령어
        apt-get으로 간편하게 설치가 가능합니다

    ubuntu 설치 하기
       (쉘에서) $apt-get install  ctags  (자동으로 최신 버전으로 설치 됩니다 )

    redhat 설치하기 http://sourceforge.net/projects/ctags (rpm 버전을 다운 받은후)
        (쉘에서) $rpm -ivf 다운받은 rpm 파일명 (으로 설치 하실수 있습니다)

    설치 완료 후 2번 과정 버전을 확인 하면 버전 정보가 재대로 나오면 재대로 설치가 되었습니다.
    레드헷 일 경우 lib.so 에러가 발생할수 있는데 버전이 안맞는 것을 깔면.. 설치가 재대로
    돼지 않는 문제점이 발생합니다 위 링크에서 최신버전 5.6.1 의 경우 페도라 5 용 이므로
    레드헷일 경우 5.0 버전 이나 찾아보시고 하위 지원 돼는 버전을 설치 해야 합니다..
    확인 결과 5.0.1 은 재대로 설치가 가능하더라고요..

4. tags 파일 만들기
    = > 우선 커널이 있는 폴더로 이동 합니다
           $cd /usr/src/linux/  <== ( 전 linux로 심볼릭 링크가 돼어 있습니다 안돼어 있다면
           심볼릭 링크를 만드셔도 돼고 직접 경로를 다 입력 하셔도 상관없습니다)
           심볼릭 링크 만들기 -> ln -s  /usr/src/커널폴더명 linux
           커널 폴더로 이동했으면 ctags -R 을 입력하여 tags 파일을 생성합니다
           시간이 좀 걸리는데 ls로  tags 파일이 생성 된걸 확인 합니다

          $cd /usr/include 폴더로 이동 합니다
           마찬가지로 ctags -R 명령으로 include 폴더도 tags 파일을 생성 합니다
           정상적으로 파일이 생성 되었다면 다음 단계로 넘어갑니다

5. ctags 설정 하기
    = > 설치 가 완료 되고 tags파일이 생성 되었다면 작업이 거의 끝난거나 마찬 가지 입니다.
           매번 vi 에서 ex모드 에서 입력하는거도 한계가 있으므로 .vimrc 파일에
           tags 를 설정 해두는게 편합니다
           vimrc 파일에 다음 라인을 입력 한후 저장합니다
           set tags=./tags,/usr/src/linux/tags,/usr/include/tags
           (linux 의 경우 심볼릭 링크 한경우)  직접 폴더를 입력 하신분은 경롱에 맞게 설정 합니다


사용하기          
=====================================================
여기 까지 했다면 설치 및 설정은 완료 되었습니다..

이제 사용 하는거만 남았는데
복잡하게 책에는 여러 옵션이 많지만 보통 잘안쓰는 옵션들은.. 거의 쓸일이 없고..
자주 쓰는 것만 다루겠습니다.

ex 모드 -> vi 에서 : 을 눌러서 명령을 입력 하는 모드를 말합니다
ex 모드에서 :tj 함수명 이나 구조체명 (왜 tj 인가 ?  tags jump 약어)
(찾고자 하는 함수명이나 구조체 이름등을 입력 하면 관력 이름 함수나 구조제..정보가 나타 납니다 )
보통 한두가개 아닌경우 스페이스바를 누르면 목록이 더나오며 d 를 누를 경우 한페이지씩..
보여 줍니다 나갈때는 q로 나갈수 있습니다 그럼 <CR> 이 나오는데 여기서 찾은 함수나 구조체
번호를 입력 하면 자동으로 점프합니다

다른 방법으로 가는 방법은 커널 소스를 vi열어서 분석하다가 함수 원형이나 구조체 이름에서
ctrl + ] 를 누르면 자동으로 태그를 찾아 갑니다
이전으로 다시 돌아 올때는 ctrl + t 를 사용 해서 돌아 올수 있습니다

ex모드 : sts 함수명 , 구조체명
위에서 설명한 tj와 비슷 하지만 한가지 다른점이 수평창분활을 해서 결과를 보여 줍니다

이외 명령이 더 있지만 실제 이거만 알아도 충분 합니다 나머지 이전으로 돌아가기 이런건..
거의 실제 사용 되지도 않습니다 위에 설명한 4가지 방법이 주로 쓰는 방법입니다.

[tip] 헤더 파일 바로 읽어 오기

#include <linux/kernel.h> <- 헤더파일 이름에 커서를 위치 한후

Ctrl + wf 를 누르면 창이 수평 분할되어 헤더파일이 열립니다

====================================================
cscope 를 이용한 2%로 채우기
    ctags만으로도 커널소스와 소규모 프로젝트롤 분석하는데 부족함은 없지만..
    2%로 부족한게 있다 ctags만으로는 지역변수나 전역변수가 사용된곳 은 찾기가 힘들다
    이때 cscope 사용하면 됩니다

cscope 설치 하기
    ubuntu = > $apt-get install cscope 로 간단히 설치 할수 있다 (데비안 계열의 강점)
    redhat
    (다운 로드)
    wget
http://belnet.dl.sourceforge.net/sourceforge/cscope/cscope-15.3-1.i386.rpm
    설치 하기
    $rpm -ivf cscope-15.3-1.i386.rpm

cscope 설정 하기
   cscope 설정은 좀 손이 많이 갑니다 (ctags에 비해...)
    우선 mkcscope.sh 파일을 만들어야 합니다
   ============ mkcscope.sh 파일 내용 ================
    #!/bin/sh
    rm -rf cscope.files cscope.files

    find . \ ( -name '*.c' -o -name '*.cpp' -o -name '*.cc' -o -name '*.h'
    -o -name '*.s' -o -name '*.S' \ ) - print > cscope.files

    cscope -i cscope.files
    ============================================
    파일 생성 후 파일 퍼미션 설정
    $chmod 755 mkcscope.sh
    $mv mkcscope.sh /usr/bin
    디렉토리 이동
    $cd /usr/src/linux (심볼릭 링크 아닐시 전체 경로)
    mkcscope.sh 실행  하면 빌드 돼면서 데이터가 만들어 집니다
    빌드 종료시 값을 입력 하는게 나오는데 ctrl + d를 눌러서 종료 합니다.
   
    이후 .vimrc 파일에 다음 내용을 추가 합니다
    =============================================
    set csprg=/usr/bin/cscope
    set csto=0(숫자 0)
    set cst
    set nocsverb

    if filereadable("./cscope.out")
       cs add cscope.out
    else
       cs add /usr/src/linux/cscope.out
    endif
    set csverb
   ==============================================
   이제  설정은 끝이 났습니다

   사용하기 ( cscope 의 명령 형식 )
    :cs find {질의종류} {심벌}
    ex) cs find s start_kernel

   cscope 의 질의 종류
    0 or s  - > Find this C symbol
    1 or g  - > Find this definition
    2 or d  - > Find functions called by this function
    3 or c  - > Find functions calling this function
    4 or t  - > Find assignments to
    6 or e  - > Find this egrep pattern
    7 or f   - > Find this File
    8 or i   - > Find files #including this file
신고

'빵꾸똥꾸 개발자 > Linux' 카테고리의 다른 글

printk  (0) 2011.05.13
mib2c 사용법  (0) 2011.05.02
ctags & cscope 설치 및 사용하기  (0) 2010.03.19
How to install GUI in Ubuntu 9.10 (Karmic) Server  (0) 2010.03.17
ubuntu 한글설정  (0) 2010.03.02
kdevelop로 리눅스에서 C 코딩 하기  (0) 2007.10.27
Posted by 나마스떼

댓글을 달아 주세요


요즘 작업을 우분투 <-> 리눅스 왔다리 갔다리 하면서 하고 있다.
지금 내 작업 PC에는  ubuntu desktop 9.10을 설치하여 사용하고 있는데.
공용 서버로 오늘 우분투 서버를 깔아봤다.

석사이후론 애들만 시켜버릇해서. 리눅스를 깔아본게 몇년만인지.ㅋ
암튼 우분투 데스크탑만 깔다가 올만에 서버깔고 콘솔뜨니 당황스럽더라.ㅋ

암튼, Ubuntu 서버를 깔면 콘솔이 뜬다.
이럴경우 우분투 데스크탑을 쓰는 방법은 아래와 같다..

$sudo apt-get update
$sudo apt-get dist-update

$sudo apt-get install ubuntu-desktop

$sudo /etc/init.d/gdm start

The above command will install GNOME desktop

If you wan to install a graphical desktop manager without some of the desktop addons like Evolution and OpenOffice, but continue to use the server flavor kernel use the following command

$sudo aptitude install --no-install-recommends ubuntu-desktop

If you want to install light weight desktop install xfce using the following command

$sudo apt-get install xubuntu-desktop

If you want to install KDE desktop use the following command

$sudo apt-get install kubuntu-desktop


신고

'빵꾸똥꾸 개발자 > Linux' 카테고리의 다른 글

printk  (0) 2011.05.13
mib2c 사용법  (0) 2011.05.02
ctags & cscope 설치 및 사용하기  (0) 2010.03.19
How to install GUI in Ubuntu 9.10 (Karmic) Server  (0) 2010.03.17
ubuntu 한글설정  (0) 2010.03.02
kdevelop로 리눅스에서 C 코딩 하기  (0) 2007.10.27
Posted by 나마스떼

댓글을 달아 주세요

출처: http://tubbies.thoth.kr/?mid=blog&category=365486&document_srl=365554

1. 한글 설정


먼저 본인은 EUC-KR 문자셋을 선호하기 때문에 우분투의 기본인 UTF-8을 버리고
EUC-KR을 선택하는 것 부터 시작한다...윈도우와 어느정도 호환성이나 나비와 같은 입력기 때문에

1) 언어 패키지 설치
먼저 여러 Langauge가 깔리는걸 싫어해서 영어로 깔린 상태로 가정하면 한글팩이 안깔려 있으므로
$ sudo apt-get install language-pack-ko

2) 로케일 생성
한글 팩이 깔려 있다고 해도 한글 로케일이 설치가 되어 있지 않다면 한글  입력을 할 수 없으므로 로케일을 생성한다

$ sudo locale-gen ko_KR.EUC-KR

우분투의 아버지 데비안 경우에는

dpkg-reconfigure locales에서 나오는 목록에서

EUC-KR을 선택하면 된다

3) 나비 설치

한글 입력기로 필자는 nabi라는 프로그램을 선호하므로 이 프로그램을 설정 전에 깔아보면

$ sudo apt-get install nabi

그리고 이후 시작 프로그램으로 등록하도록 설정하면

설정 메뉴를 찾아 Session을 실행해서 Startup Program에 nabi를 등록한다

4) nabi 및 입력 인코딩 설정

gnome을 띄운 상태에서 사용자 계정으로
$ unset LC_ALL

$ export LANG=ko_KR.eucKR 

이렇게 해서 환경변수에 EUC-KR을 올린 후 설정을 하기 위해 나비를 실행시킨다

$ nabi &

이 후 나비가 GNOME의 기본 입력기가 될 수 있도록 해주면

$ export XMODIFIERS="@im=nabi" 

$ export GTK_IM_MODULE=xim

$ im-switch -c 선택 후 nabi 선택
(만일 im-switch가 없다면 $ sudo apt-get install im-switch 를 통해 설치하자)

재부팅 하고 즐겁게 사용하면 된다
신고

'빵꾸똥꾸 개발자 > Linux' 카테고리의 다른 글

printk  (0) 2011.05.13
mib2c 사용법  (0) 2011.05.02
ctags & cscope 설치 및 사용하기  (0) 2010.03.19
How to install GUI in Ubuntu 9.10 (Karmic) Server  (0) 2010.03.17
ubuntu 한글설정  (0) 2010.03.02
kdevelop로 리눅스에서 C 코딩 하기  (0) 2007.10.27
Posted by 나마스떼

댓글을 달아 주세요

참고 사이트: 사용법
참고 사이트: kdevelop 공식 사이트 kdevelop

맨날 linux에서 vi로 코딩하다가
최근에 알게된 c/C++ IDE인 kdevelop
ubuntu, fedora에 설치중이다.
함 써봐야지.ㅋ

신고

'빵꾸똥꾸 개발자 > Linux' 카테고리의 다른 글

printk  (0) 2011.05.13
mib2c 사용법  (0) 2011.05.02
ctags & cscope 설치 및 사용하기  (0) 2010.03.19
How to install GUI in Ubuntu 9.10 (Karmic) Server  (0) 2010.03.17
ubuntu 한글설정  (0) 2010.03.02
kdevelop로 리눅스에서 C 코딩 하기  (0) 2007.10.27
Posted by 나마스떼

댓글을 달아 주세요



티스토리 툴바