2011년 5월 19일 목요일

Upgrade qt 4.6.2 to > qt 4.6.2 on Ubuntu 10.04


sudo vi /etc/apt/sources.list
:%s/lucid/maverick/g
:wq

sudo apt-get update
sudo apt-get install qt4-qmake qt4-dev-tools

done!!!


2011년 5월 15일 일요일

about android app dev


1. jre and jdk download
1.1 sudo apt-get install sun-java6-jre sun-java6-jdk (may be)
2. eclipse download
2.1 classic or rcp version
3. android sdk download
4. android development tools plugin download
5. adding Platforms and other components
5.1 download platform
5.2 create AVD
5.3 create project
6. done

non gui

jni + NDK + TOOLCHAIN(native code build)
android create project ... (android code build)

android
ant
command line

android-cmake reference

아래 사이트는 http://android-cmake.googlecode.com/hg/documentation.html를 보고 리포팅 수준의 포스트 이다.
http://www.srombauts.fr/2011/03/15/cmake-for-android/


아래 사이트는 Ubuntu에서 apt-get 으로 Java JDK, JRE 설치에 관한 내용이다.

2011년 5월 14일 토요일

boost for android

1. googling "boost on android"
아래 정보를 이용해서 patch를 하고

userconfig.jam을 아래와 같이 바꾼후 boost를 컴파일 한다.
http://permalink.gmane.org/gmane.comp.handhelds.android.ndk/7553

컴파일이 완료 되었으면 2번을 이용해서 boost를 테스트해보자(아직 안해봤음)

2. googling "android-cmake"
아래 정보를 이용해서 Cmake로 안드로이드 app를 컴파일하고 테스트해본다.
common-libs/boost를 Cmake를 이용해서 컴파일 해본다. serialization은 안되는를 알것이다.
http://android-cmake.googlecode.com/hg/documentation.html

몇몇개의 인터넷정보는 신뢰감이 떨어진다.
아래는 boost를 arm으로 컴파일 하는것인다. 위의 1번을 수행하면 arm7으로 elf가 생성된다.
http://tom87416.blogspot.com/2011/02/compiling-boost-library-on-android.html
참고 정보
아래 사이트는 1번은 이용해서 컴파일하고 Cmake를 이용하지 않고 android.mk문법을 이용해서 makefile를 작성 해보고 실행 했지만 링크에러가 난 것에 대한 질문이다.
리플중에 중요한 것을 발견했다.
NDK compiler is gcc and the logs above clearly indicate correct compiler is used. Crystax NDK is no longer necessary; since release 5, gnu stdlibc++ is part of the standard SDK. – Jan Hudec Mar 1 at 14:05
Crystax NDK가 더이상 필요하지 않다는 것인데 나도 동감한다.
boost를 적당히 android 용으로 patch해주고 cmake_toolchain_file를 이용해서 컴파일하면 될것 같다.
http://stackoverflow.com/questions/5119201/how-link-with-static-boost-libraries-for-android
아래 사이트는 r4, r3 crystax version에서 boost 1.39.0의 user-config.jam와 boost.patch이다. 이전 정보지만 참고하기 좋을것같다.
http://www.crystax.net/trac/ticket/6


결론
위의 정보를 가지고 전체적인 테스트는 해보지 않았지만 미뤄 짐작해 볼때 oce compile and using cmake that is complete는 가능성이 있다.
boost library를 컴파일 하고 boost를 이용해서 oce/cdl를 cmake를 이용해서 빌드하고 JNI를 이용해서 android 응용으로 실행 한다.

xoom device 에서 ... using rs232 or spp with ROMEO mobile platform

2011년 4월 30일 토요일

아이폰과 갤럭시 탭 블루투스 통신

결론

아이폰은 btstack 라이브러리를 이용해서 HID 방식으로 통신하면되고
갤럭시 탭은 SPP 방식으로 통신하면 된다.
HID방식도 지원한다.

물론 동글은 HID or SPP 프로파일을 지원하는 걸로 구매한다.
현재 진행 중인 시리얼 통신으로 로봇제어하기는 serial2bluetooth 모듈을 이용해서 원격으로 로봇을 제어 하는 방법이 있을 수 있겠다.

갤럭시 탭으로 로봇을 제어하기 위해서는 위 방법대로 serial2bluetooth 모듈을 이용해서 SPP 방식으로 원격에서 로봇을 제어할 수 있을 것 같다.

문제는 serial2bluetooth 전원 공급과 갤럭시 탭에 루팅이 필요하냐 이다.

2011년 4월 25일 월요일

buid ace for iphone

http://www.dre.vanderbilt.edu/~schmidt/DOC_ROOT/ACE/ACE-INSTALL.html
공식 문서를 보면 iphone 관련 빌드 방법이 나온다.

1. ACE_ROOT 설정
2. IPHONE_TARGET 설정
3. config.h 설정
4. platform_macros.GNU 설정
5. configure 설정
6. make; make install

위와 같은 순서로 진행 하겠다.
1. ACE_ROOT 설정
export ACE_ROOT=~/path/ACE_wrappers/
2. IPHONE_TARGET 설정
export IPHONE_TARGET=HARDWARE
3. config.h 설정
vi ACE_wrappers/ace/config.h
#include "config-macosx-iphone-hardware.h"
4.platform_macros.GNU 설정
vi ACE_wrappers/include/makeinclude/platform_macros.GNU
include $(ACE_ROOT)/include/makeinclude/platform_macosx_iphone.GNU
5. configure 설정
cd ACE_wrappers
mkdir build
cd build
../configure --enable-static --disable-shared --disable-ssl --prefix=/path
6. make; make install
make
sudo make install

완성!!

2011년 4월 18일 월요일

ios cross compile done!!!

드디어 컴파일이 된다. 물론 C++ 관련 파일들도 같이 된다.
문제는 flag였다. 명시적으로 flag를 설정하니 된다.
처음부터 됐어야 하는데... 이것 때문에 많은 시간을 허비했다. 아니 많이 알았다.

내 방법을 설명하겠다.

참고 사항으로 첨부한 iphone_cmake.sh를 보기 바란다.
사용 방법은
기존의 cmakelist.txt가 있다면
mkdir build
cd build
../iphone_cmake.sh device ../ --> device arm
../iphone_cmake.sh simulator ../ --> simulator intel

물론 하위 폴더에 iphone_cmake.sh를 둬야 한다.
현재는 ios 4.2로 되어 있다.
4.3으로 하려면 파일에서 고치면 된다.

현재 포팅된 라이브러리는

boost 1.38.0
ace 6.0.1
opros 1.5.6
dlib
rcf

앞으로 계속 포팅할 것이다.
그때 까지 화이팅!!!

다음 할일은 UIKit를 Cmake로 빌드해서 크로스 컴파일 하는 것이다.