- 论坛徽章:
- 8
|
在Linux通过终端与ARM开发板通信:
#minicom -s
对终端进行配置
Serial port setup下:
A - Serial Device : /dev/ttyS0 ;串口号
E - Bps/par/Bits : 115200 8N1 ;波特率
F - Hardware Flow Control :NO
Modem and dialing下:
去掉A , B ,K 三个选项
Save as df1 : 对修改后的配置进行保存
退出,重启即可。
qt-embedded-free-3.1.1的下载以及安装:
qt-embedded-free-3.1.1的下载网址:
ftp://ftp.trolltech.com/qt/source/qt-embedded-free-3.1.1.tar.gz
可以在终端下使用Ftp方式下载 。
build文件内容:
export QTEDIR=$PWD/qt-embedded-free-3.1.1
export QTDIR=$QTEDIR
#export QMAKESPEC=qws/linux-arm-g++
export PATH=$QTEDIR/bin:$PATH
export LD_LIBRARY_PATH=$QTEDIR/lib:$LD_LIBRARY_PATH
#cp /friendly-arm/qt-embeded3.1/qtopia-free-2.1.1/src/qt/qconfig-qpe.h src/tools/
cd $QTEDIR
(echo yes) | ./configure -embedded arm -xplatform qws/linux-arm-g++ -no-cups -depths 8,16,24,32 -thread -qconfig full -qt-mouse-pc -qt-mouse-bus -qt-kbd-tty -qt-kbd-usb
#-qconfig qpe -embedded arm -no-qvfb
#-qvfb
#make -C $QTEDIR/src
#修改~/qt-embedded-free-3.1.1/src/embedded/qkbdusb_qws.cpp, 在78行最后添加":"
build文件与qt-embedded-free-3.1.1放于同一等级目录下。
执行命令:
#./build ;build同一等级目录下 。
#gmake ;qt-embedded-free-3.1.1目录下 。
QT所开发界面的交叉编译:
我所开发的QT界面文件存于/home/application目录下 。
删除目录下的.o文件 。 即:application.o , main.o , moc_application.o .
修改Makefile :
将全部的 QTDIR 替换成 QTEDIR 。
并在文件开头添加一行 :
QTEDIR=/public/qt-embedded-free-3.1.1 ;我的qt-embedded-free-3.1.1安装在/public/qt-embedded-free-3.1.1目录下 。
Makefile内容 :
Makefile for building: application
# Generated by qmake (1.04a) (Qt 3.1.1) on: Wed Dec 19 13:02:34 2007
# Project: application.pro
# Template: app
# Command: $(QMAKE) -o Makefile application.pro
#############################################################################
####### Compiler, tools and options
QTEDIR=/public/qt-embedded-free-3.1.1
CC = arm-linux-gcc
CXX = arm-linux-g++
LEX = flex
YACC = yacc
CFLAGS = -pipe -Wall -W -O2 -g -DGLX_GLXEXT_LEGACY -fno-exceptions -DQT_NO_DEBUG
CXXFLAGS = -pipe -Wall -W -O2 -g -DGLX_GLXEXT_LEGACY -fno-exceptions -DQT_NO_DEBUG -fno-rtti -DQWS
LEXFLAGS =
YACCFLAGS= -d
INCPATH = -I$(QTEDIR)/mkspecs/default -I. -I. -I$(QTEDIR)/include
LINK = arm-linux-g++
LFLAGS =
LIBS = $(SUBLIBS) -L$(QTEDIR)/lib -lqte-mt -lm -DQWS
AR = arm-linux-ar cqs
RANLIB =
MOC = $(QTEDIR)/bin/moc
UIC = $(QTEDIR)/bin/uic
QMAKE = qmake
TAR = tar -cf
GZIP = gzip -9f
COPY = cp -f
COPY_FILE= $(COPY) -p
COPY_DIR = $(COPY) -pR
DEL_FILE = rm -f
SYMLINK = ln -sf
DEL_DIR = rmdir
MOVE = mv -f
CHK_DIR_EXISTS= test -d
MKDIR = mkdir -p
####### Output directory
OBJECTS_DIR = ./
####### Files
HEADERS = application.h
SOURCES = application.cpp \
main.cpp
OBJECTS = application.o \
main.o
FORMS =
UICDECLS =
UICIMPLS =
SRCMOC = moc_application.cpp
OBJMOC = moc_application.o
DIST = application.pro
QMAKE_TARGET = application
DESTDIR =
TARGET = application
first: all
####### Implicit rules
.SUFFIXES: .c .cpp .cc .cxx .C
.cpp.o:
$(CXX) -c $(CXXFLAGS) $(INCPATH) -o $@ $
.cc.o:
$(CXX) -c $(CXXFLAGS) $(INCPATH) -o $@ $
.cxx.o:
$(CXX) -c $(CXXFLAGS) $(INCPATH) -o $@ $
.C.o:
$(CXX) -c $(CXXFLAGS) $(INCPATH) -o $@ $
.c.o:
$(CC) -c $(CFLAGS) $(INCPATH) -o $@ $
####### Build rules
all: Makefile $(TARGET)
$(TARGET): $(UICDECLS) $(OBJECTS) $(OBJMOC)
$(LINK) $(LFLAGS) -o $(TARGET) $(OBJECTS) $(OBJMOC) $(LIBS)
mocables: $(SRCMOC)
$(MOC):
( cd $(QTEDIR)/src/moc ; $(MAKE) )
Makefile: application.pro $(QTEDIR)/mkspecs/default/qmake.conf
$(QMAKE) -o Makefile application.pro
qmake:
@$(QMAKE) -o Makefile application.pro
dist:
@mkdir -p .tmp/application && $(COPY_FILE) --parents $(SOURCES) $(HEADERS) $(FORMS) $(DIST) .tmp/application/ && ( cd `dirname .tmp/application` && $(TAR) application.tar application && $(GZIP) application.tar ) && $(MOVE) `dirname .tmp/application`/application.tar.gz . && $(DEL_FILE) -r .tmp/application
mocclean:
-$(DEL_FILE) $(OBJMOC)
-$(DEL_FILE) $(SRCMOC)
uiclean:
yaccclean:
lexclean:
clean: mocclean
-$(DEL_FILE) $(OBJECTS)
-$(DEL_FILE) *~ core *.core
####### Sub-libraries
distclean: clean
-$(DEL_FILE) $(TARGET) $(TARGET)
FORCE:
####### Compile
application.o: application.cpp application.h
main.o: main.cpp application.h
moc_application.o: moc_application.cpp application.h
moc_application.cpp: $(MOC) application.h
$(MOC) application.h -o moc_application.cpp
####### Install
install: all
uninstall:
修改好Makefile后 , 对所开发的QT界面进行重新
#make
完成交叉编译 。
因为已经修改Makefile中的编译设置 , 所以#make 即可 。
本文来自ChinaUnix博客,如果查看原文请点:http://blog.chinaunix.net/u1/54642/showart_446801.html |
|