飛凌TE 6410開発Qt/E 4.4.3インタフェースプログラム手順


1、使う
/joe/4.4.3/builddir/sdk/qtopiacore/target/bin/qmake
ツール作成したプログラムをコンパイルし、Makefileファイルを生成する
2、Makefileファイルを修正し、
CFLASS =  -fno-rtti 
CXXFLAGS = -fno-rtti
/usr/local/arm/4.4.1/bin/
3.クロスコンパイルツールexport PATH=/usr/local/arm/4.4.1/bin/:$PATHの設定
3、makeは実行可能ファイルを生成する
4、開発ボード環境変数ファイルenvを作成する.sh、内容は以下の通りです.
Qt 4.4.3の環境変数:
	export PATH='/opt/Qtopia4.4.3/bin:/sbin:/usr/sbin:/bin:/usr/bin'
	export QPEDIR='/opt/Qtopia4.4.3'
	export QTDIR='/opt/Qtopia4.4.3'
	export QT_QWS_FONTDIR='/opt/Qtopia4.4.3/lib/fonts/'//     
	export QWS_DISPLAY='LinuxFb:mmWidth76:mmHeight44:1'//       
	export QWS_MOUSE_PROTO='Tslib:/dev/input/event1'
	export TSLIB_CALIBFILE='/etc/pointercal'    //       , ts_calibrate      
	export TSLIB_CONFFILE='/usr/local/tslib/etc/ts.conf'    //     
	export TSLIB_CONSOLEDEVICE='none'           //        
	export TSLIB_FBDEVICE='/dev/fb0'            //   
	export TSLIB_PLUGINDIR='/usr/local/tslib/lib/ts'    //    
	export TSLIB_ROOT='/usr/local/tslib'
	export TSLIB_TSDEVICE='/dev/input/event1'  //        
	export TSLIB_TSEVENTTYPE='H3600'
	export QT_PLUGIN_PATH='/opt/Qtopia4.4.3/plugins:/opt/Qtopia4.4.3/qt_plugins/'
	export LD_LIBRARY_PATH='/opt/Qtopia4.4.3/lib'

Qt 4.7.1の環境変数設定:
#export PATH='/opt/Qtopia4.4.3/bin:/sbin:/usr/sbin:/bin:/usr/bin'
#export QPEDIR='/opt/Qtopia4.4.3'
#export QTDIR='/opt/Qtopia4.4.3'
export QT_QWS_FONTDIR='/opt/Qtopia4.4.3/lib/fonts/'
export QWS_DISPLAY='LinuxFb:mmWidth160:mmHeight120:1'
export QWS_SIZE='800x480'//7      
export QWS_MOUSE_PROTO='Tslib:/dev/input/event2'
export TSLIB_CALIBFILE='/etc/pointercal'
export TSLIB_CONFFILE='/usr/local/tslib/etc/ts.conf'
export TSLIB_CONSOLEDEVICE='none'
export TSLIB_FBDEVICE='/dev/fb0'
export TSLIB_PLUGINDIR='/usr/local/tslib/lib/ts'
export TSLIB_ROOT='/usr/local/tslib'
export TSLIB_TSDEVICE='/dev/input/event2'
export TSLIB_TSEVENTTYPE='H3600'
export QT_PLUGIN_PATH='/opt/qt-4.7.1/plugins:/opt/qt-4.7.1/plugins'
export LD_LIBRARY_PATH='/opt/qt-4.7.1/lib'

5、実行可能ファイルとshファイルを/joe/root/FileSystem-Yaffs 2/optディレクトリの下に入れる
6、source/opt/env.sh
7、./helloworld -qws &
注意:/etc/init.d/rcSの最後の行の説明:1)/bin/qopia&qtopia 2を表す.2.0
2)/bin/qtopia 4&qtopia 4を表す.4.3
3)/bin/qt 4&qt/e 4を表す.7
注意:
1、実際にデバッグするときは、nfsでマウントする形式です.ts_を実行するとcalibrateの場合、/etcディレクトリの下にpointercalファイルが生成されます.ディレクトリをマウントする権限が足りないため、Pointercalファイルを生成できない場合があります.このときchmod 777 etcで権限を加えることができます.
2、クロスコンパイルツールの2つが正しく指定されていないため、不正な命令が発生したり、「line 1:syntax error:unexpected"(」というエラーが発生する場合があります.file ts_calibrateが現在のプラットフォームで実行するプログラムであるかどうか、readelf-ats_calibrateで前の命令セットを表示することができます.
3. export QWS_DISPLAY=「LinuxFb:mmWidth 100:mmHeight 130:0」という言葉は、後のQtプログラムの国際化で得られ、移植のすべての作業が完了した後、LCD屏山のフォントが非常に小さいことに気づいた.その後、多くの質問を経て、この言葉を修正する必要があることを知った.私たちがその中の数字の値を半分に変更すると、画面のフォントが大きくなります.具体的な原因は検討する必要がある.
PS:このコードはカーネルとマルチメディアドライバを切り取るときに発生するエラーで、arch/arm/mach_s3c64XX/mach_smdk6410.cの関連声明を消せばいいです.
arch/arm/mach-s3c64xx/built-in.o:(.init.data+0x274): undefined reference to `s3c_device_vpp'
arch/arm/mach-s3c64xx/built-in.o:(.init.data+0x278): undefined reference to `s3c_device_mfc'
arch/arm/mach-s3c64xx/built-in.o:(.init.data+0x27c): undefined reference to `s3c_device_tvenc'
arch/arm/mach-s3c64xx/built-in.o:(.init.data+0x280): undefined reference to `s3c_device_tvscaler'
arch/arm/mach-s3c64xx/built-in.o:(.init.data+0x284): undefined reference to `s3c_device_rotator'
arch/arm/mach-s3c64xx/built-in.o:(.init.data+0x288): undefined reference to `s3c_device_jpeg'
arch/arm/mach-s3c64xx/built-in.o:(.init.data+0x28c): undefined reference to `s3c_device_g2d'
arch/arm/mach-s3c64xx/built-in.o:(.init.data+0x290): undefined reference to `s3c_device_g3d'