All posts by RSR

vmware 한영키 사용

/etc/vmare/config 에다가
xkeymap.keysym.Hangul = 0x0f2
xkeymap.keysym.Hangul_Hanja = 0x0f1

직접수정 또는
echo "xkeymap.keysym.Hangul = 0x0f2" >> /etc/vmware/config
echo "xkeymap.keysym.Hangul_Hanja = 0x0f1" >> /etc/vmware/config

sudo service vmware restart

그러면 vmware 에서도 한영키 사용 가능
쓰고보니 둘다 직접수정이네 -_-;

iPhone non official SDK aka ToolChain finally setup

iPhone non official SDK aka ToolChain finally setup

Woo.. after doing the process almost ten times, downloading the fullxodetools.dmg(~924mb) i finally have the iPhone toolchain working.. ihave setup the non official iPhone SDK ,, untill the official by Applecomes out in Feb'08 .
Start developing native iPhone apps today, no more web 2.0…
There are many guides out there, i am just telling my expierience, hope it works for you..
It uses the GC++, GCC compiler in linux..
I used Fedore 7 on VMware(virtual machine, you can grab both of them for free) to build the toolchain. I recomd.linux for good performance..
Content from –http://code.google.com/p/iphone-dev/wiki/Building,with my tips inBOLD.

HOWTO build the toolchain
Run terminal…

  • Ensure that you have a copy ofbisonandflexinstalled on your system. All major systems should have these tools installed or available in package management systems.Most linux flavours have the packages, you can skip this..
  • $ bison--version
    GNU
    Bisonversion1.28
    $ flex
    --version
    flex version
    2.5.4
  • Check out a copy of LLVMSVN, and build areleasebuild (as opposed to a debug one). Currently, due toIssue 70, we are limited to revision 42498.it will take some time while files are being downloaded to your PC from internet, probably no errors here
  • $ svn co http://llvm.org/svn/llvm-project/llvm/trunkllvm-svn -r 42498
    $ pushd llvm
    -svn
    $ .
    /configure --enable-optimized
    $ make ENABLE_OPTIMIZED=1
    $ sudo make install
    $ LLVMOBJDIR=`pwd`
    $ popd
  • Check out a copy of the iphone-dev SVN repository.(it will take large amount of time, the longest step of all)
  • $ svn checkout http://iphone-dev.googlecode.com/svn/trunk/iphone-dev
    $ pushd iphone
    -dev
  • Make a directory to hold the toolchain.
  • $ sudo mkdir/usr/local/arm-apple-darwin
  • Build odcctools. (you will get some error if you are using CYGWIN on windows here, refer to there site for details)
  • $ mkdir-p build/odcctools
    $ pushd build
    /odcctools
    $
    ../../odcctools/configure--target=arm-apple-darwin--disable-ld64
    $ make
    $ sudo make install
    $ popd
  • Geta copy of the iPhone root filesystem. This is usually obtained bydecrypting and extracting the iPhone restore software usingthese tools, but there are many other methods to obtain this, including simply usingscpto download all the files from the iPhone over Wi-Fi. (Scroll below for a download link of ready to use iPhone 1.0.2 image) Unpack the root filesystem somewhere, and set the environment variable$HEAVENLYto its path. (set this again if you restart system or terminal)
  • $ HEAVENLY=/usr/local/share/iphone-filesystem
  • Install the iPhone headers to the appropriate place. If you aren't on Mac OS X, replace the/Developer/SDKs/MacOSX10.4u.sdkpath with the full path to the unpacked Mac OS X 10.4 Universal SDK(ie.MacOSX10.4u.sdk). If you don't have a copy of this,scroll below..
  • $ pushd include
    $
    ./configure --with-macosx-sdk=/Developer/SDKs/MacOSX10.4u.sdk
    $ sudo bash install
    -headers.sh
    $ popd
  • Install csu, which includescrt1.o,dylib1.o, andbundle1.o.Don't rebuild them from source, as this requires a working cross-GCC,which you don't have yet (and the build-from-source process for csu isbroken right now anyway). Binaries are provided for this reason.
  • $ mkdir-p build/csu
    $ pushd build
    /csu
    $
    ../../csu/configure--host=arm-apple-darwin
    $ sudo make install
    $ popd
  • Onlyif you are compiling onleopard10.5. This is an ugly workaround and compiling with the resulting toolchain will give you a warning.
  • $ mv llvm-gcc-4.0-iphone/configure llvm-gcc-4.0-iphone/configure.old
    $ sed
    's/^FLAGS_FOR_TARGET=$/FLAGS_FOR_TARGET=${FLAGS_FOR_TARGET-}/g'\
    llvm
    -gcc-4.0-iphone/configure.old>llvm-gcc-4.0-iphone/configure
    $
    exportFLAGS_FOR_TARGET="-mmacosx-version-min=10.1"
    $ sudo ln
    -s/usr/local/arm-apple-darwin/lib/crt1.o\
    /usr/local/arm-apple-darwin/lib/crt1.10.5.o
  • Configure and make LLVM-GCC. Make sure that$LLVMOBJDIRand$HEAVENLYare set per the instructions above.(igot the errors like error 1, error 2 more than 5 times, i solved thisproblem by changing lots of files,symlinks in /usr/lib folder of iphoneimage hence i have uploaded my modified working iphone image. see belowfor errors).
  • $ mkdir-p build/llvm-gcc-4.0-iphone
    $ pushd build
    /llvm-gcc-4.0-iphone
    $
    ../../llvm-gcc-4.0-iphone/configure--enable-llvm=`llvm-config --obj-root`\
    --enable-languages=c,c++,objc,obj-c++--target=arm-apple-darwin--enable-sjlj-exceptions\
    --with-heavenly=$HEAVENLY--with-as=/usr/local/bin/arm-apple-darwin-as\
    --with-ld=/usr/local/bin/arm-apple-darwin-ld
    $ make LLVM_VERSION_INFO
    =2.0-svn-iphone-dev-0.3-svn
    $ sudo make install
    $ popd
    $ popd

You're done. Have fun!

Gotchas

  • Makesure that there are no spaces in any of the directory names that youuse. GCC does not build if there are spaces in the directory names, andthe shell scripts will not work. This is most often a problem onWindows.
  • Make sure that/usr/local/binis in yourPATH.This is not the case out of the box on Mac OS X, although chances areif you've installed things from source before you've added it already.
  • If LLVM failed to compile because of missingbisonand/orflex(evidence that this was the case is a failed compile onutils/TableGen/FileLexer.l), you mustmake cleananddeleteutils/TableGen/FileParser.hbefore trying again withbisonandflexinstalled. LLVM'smake cleanscript does not always properly clean up after a failed build.
  • Make sure that$HEAVENLYpoints to a copy of the full iPhone root filesystem, not just theunpacked update DMG. If you get errors about being unable to find-lc, then your$HEAVENLYis set incorrectly, you mistyped the--with-heavenlyoption toconfigure, or your copy of the root partition is incomplete. Your copy of the iPhone root filesystemmustinclude ausr/lib/libc.dylibfile.

HOWTO obtain the Mac OS X headers on Linux or Windows

=Install thecpioutility using your distribution's standard package management system.All the major Linux distributions, as well as Cygwin, should have thisutility.
=No needtodownload the whole xcode tools dmg (~924mb). I extracted thepackage,uploaded it for you :), download the needed file from here-http://rapidshare.com/files/66764258/MacOSX10.4u.sdk.rar
=Extract RAR, then thepaxarchive by creating a new dir and using the following command in terminal

gunzip-c MacOSX10.4u.sdk.pax.gz|cpio-i

=FindMacOSX10.4u.sdkfolder in extracted contents and link it toolchain install procedure.

LOGIN as root to avoid weird errors, password prompts again and again..

–The envirnoment variables should be set properly to check there use this command in terminal- echo $VARIABLENAME, eg. –echo $HEAVENLYif it returns blank line set it again. the envirno. variable has aliftime till the terminal runs, if you close it, you have to set itagain

— errors i got ,when i do"make LLVM_VERSION_INFO=2.0-svn-iphone-dev-0.3-svn" its runs for a long time and then results in this error */usr/local/bin/arm-apple-darwin-ld:/home/Aakash/iphone/iphone-image/usr/lib/libc.dylib truncated ormalformed object (mach header extends past the end of the file)collect2: ld returned 1 exit status make2 [libgcc_s.dylib] Error 1make2 Leaving directory`/root/iphone-dev/build/llvm-gcc-4.0-iphone/gcc' make1 [stmp-multilib]Error 2 make1: Leaving directory`/root/iphone-dev/build/llvm-gcc-4.0-iphone/gcc' make: [all-gcc] Error 2*
i did this to get off the error"openall .dylib files (<=1 k) one by one in folder/iphone-image/usr/lib/, rename it – and for example libc.dylib showspath to libSystem and libSystem – path to libSystem.B.dylib. Just copylibSystem.B.dylib twice and rename 2 new files to libc.dylib andlibSystem.dylib. do this for all <=1kb .dylib files".
The iPhone image i uploaded here contains these changes, no need to do again.


Passwordfor all my rapidshare uploadsif neededin this post isaksblog.co.nr

Usefull links-

Post toolchain install–

Need any help, post as comment…

ubuntu beryl install guide

우분투 에지에 베릴을 설치해 보았다.
베릴이란 말이 좀 이상하게 느껴지지만 KLDP에 올라온 여러 desktop환경이나
동영상을 보고 설치해 보기로 했다.

가장 중요한 것은 그래픽카드의 Direct 가속이 가능해야 한다.
그걸 알아보려면 터미널 상에서 아래의 명령을 내려본다.

    glxinfo | grep rendering

결과가 "Yes" 라고 나와야 하는데 "No"라고 나오면 그래픽 드라이버를 새로 설치하여야 한다.

내가 가지고 있는 그래픽 카드의 모델을 살펴보니 nVidia Quadro4 380 XGL 64MB 이었다.
nVidia 홈에서 관련된 드라이버를 찾아보니 NVIDIA-Linux-x86-1.0-9626-pkg1.run 베타버전 이란다.
위 파일을 받아 설치하기 위해 아래와 같이 수행한다.

컴파일 환경 설정
sudo apt-get install linux-headers-`uname -r` build-essential gcc gcc-3.4 xserver-xorg-dev

기존 nVidia 드라이버 삭제 및 X 재설정
sudo rm /etc/init.d/nvidia-*
sudo apt-get –purge remove nvidia-glx nvidia-kernel-common nvidia-settings
sudo dpkg-reconfigure -phigh xserver-xorg

gdm stop 상태에서 콘솔로 간 후 nVidia 드라이버 설치
sudo /etc/init.d/gdm stop
sudo sh NVIDIA-Linux-x86-1.0-9626-pkg1.run

Reboot후 모듈 설정을 바꾸고, xorg.conf 파일도 수정한다.

/etc/default/linux-restricted-modules-common 파일 수정
DISABLED_MODULES="nv"

xorg.conf내 Device Section에 옵션 추가
Option "AddARGBGLXVisuals" "True"
Option "DisableGLXRootClipping" "True"


다시 Reboot후 베릴을 설치한다.
우선 /etc/apt/sources.list에 아래의 저장소를 추가 후 update 및 베릴 설치

저장소 추가
deb http://ubuntu.beryl-project.org/ edgy main

gpg key 설치
wget http://ubuntu.beryl-project.org/root@lupine.me.uk.gpg -O- | sudo apt-key add –

저장소 update
sudo apt-get update

베릴 설치
sudo apt-get install beryl emerald-themes

베릴 실행
beryl-manager


beryl을 수행하면 어떻게 이런 동작이 빠르게 수행될까 할 정도로 화려하고 멋지다.
Qt library를 다운받아 Qt Demo를 수행하면 Vector rendering 처리에서 보면 이러한 동작들이 있는데
실제 application에 이런 기능들을 구현했다는게 같은 프로그래머로서 놀라울 정도이다.

다만 내 베릴 환경에서는 2가지 문제가 발견되었다.
우선 rdesktop을 수행하면 이유없이 투명하게 나온다.
왜 redesktop에서만 그러는지 잘 모르겠고, 인터넷에서 서핑하여 여러 답안을 찾았지만 다 무용지물이다.
또, 가끔 black window bug가 발생한다. 이건 그래픽카드의 메모리가 모자라서 생겼으며,
nVidia 드라이버의 버그라고도 한다.

어쨌든 오랜만에 훌륭한 프로그램을 접해보니 기분이 좋다.

http://thisrule.egloos.com/2995248