求ace或QT的库怎么用
ACE的库还有QT的库是不是可以跨平台使用的,应该怎么用呀?能详细点介绍吗
[解决办法]
eclipse下的Qt编程
安装MinGW, Qt, Eclipse, CDT。网上有很多教程。
我用的是MinGW-5.0.2.exe,qt-win-opensource-src-4.1.4.zip,eclipse-3.1.0和org.eclipse.cdt-3.0.2-win32.x86。
以下是我的配置步骤,仅供参考:
1、拷贝 build.bat 到 QTDIR/bin 下,build.bat 的内容如下(其中的路径改成你自己的):
@echo off
rem Setting up a MinGW/Qt only environment...
set QTDIR=D:\Qt\4.1.4
set PATH=D:\Qt\4.1.4\bin
set PATH=%PATH%;D:\MinGW\bin
set PATH=%PATH%;%SystemRoot%\System32
set QMAKESPEC=win32-g++
qmake -project
qmake
mingw32-make -s %1 %2
2、菜单Window-> Preferences...-> C/C++-> Make-> New Make Projects-> Make Builder
Build command设为:${env_var:QTDIR}/bin/build.bat,勾选Build on resource save。
Build on resource save、Build(Incremental Build)、Rebuild(Full Build)后面框中的内容按如下设置:
如果要生成Debug版,分别设为:空白或debug、空白或debug、clean debug。
如果要生成Release版,分别设为:release、release、clean release。
如果要生成Debug和Release两个版,分别设为:all、all、clean all。
Clean后面的框中的内容为:clean。
注意:如果要生成某种版本,要先将Qt配置好才行。比如Windows下带MingW的Qt安装后默认是不支持Debug版的,要先将Qt配置为支持Debug才行。
切换选项卡到Binary Parse,将Elf Parser改为PE Window Parser
菜单Window-> Preferences...-> C/C++-> Editor-> Code Assist
Search current project,把能勾的全勾上。
3、建立一个工程 hello。新建文件hello.cpp:
#include <QtGui/QApplication>
#include <QtGui/QPushButton>
int main(int argc, char *argv[])
{
QApplication app(argc, argv);
QPushButton hello( "Hello world! ");
hello.resize(100, 30);
hello.show();
return app.exec();
}
4、菜单Run-> Run...-> Main
Project内容为:hello(否则在左边的C/C++ Local Application中新建),C/C++ Application设为:debug/hello.exe
切换选项卡到Debugger,将Debugger设为:GDB Debugger(因为我用MinGW)。确定gdb.exe所在路径已经加入环境变量path。
5、至此,只要保存工程中的任何文件或者改变了工程设置,就会自动编译链接生成可运行的.exe文件。也可以运行、调试、清除和重建程序了。如果编译链接正确,Console里没有输出,否则Console里输出错误信息。
此方法可以编译带.ui文件的工程,通用性非常好。
6、如果打开C++工程后eclipse反应会变慢,并且eclipse状态栏右边显示Indexing...:
菜单Window-> Preferences...-> C/C++-> Indexer,选择No Indexer
[解决办法]
什么是ACE?
ACE自适配通信环境(ADAPTIVE Communication Environment)是可以自由使用、开放源码的面向对象(OO)框架(Framework),在其中实现了许多用于并发通信软件的核心模式。ACE提供了一组丰富的可复用C++ Wrapper Facade(包装外观)和框架组件,可跨越多种平台完成通用的通信软件任务。据推测在新的C++Builder中,将有可能支持和采用该FrameWork。
ACE的目标用户是高性能和实时通信服务和应用的开发者。它简化了使用进程间通信、事件多路分离、显式动态链接和并发的OO网络应用和服务的开发。此外,通过服务在运行时与应用的动态链接,ACE还使系统的配置和重配置得以自动化。
ACE的好处
在ACE组件的帮助下,很容易在一种OS平台上编写并发网络应用,然后快速地将它们移植到各种其他的OS平台上。ACE的设计使用了许多可提高软件质量的关键模式,这些质量因素包括通信软件灵活性、可扩展性、可复用性和模块性。ACE经仔细设计,支持广泛的应用服务质量(QoS)需求,包括延迟敏感应用的低响应等待时间、高带宽应用的高性能,以及实时应用的可预测性。ACE和TAO被设计为能良好地协同工作,以提供全面的中间件解决方案,是CORBA的开发源码、遵循标准的实现。
ACE的安装:
笔者只在C++builder下功能安装,在VC下没有使用过!不过我想和CB下差不多。在CB下:
1、将下载的ACE包解压到:c:\ace_warappers,在c:\ace_warappers\ace目录下建立一个config.h文件,在文件里加入:#include "ace/config-win32.h "
(如果在98/me下安装,要加上#define ACE_HAS_WINNT4 0)
2、开一个Dos窗口,设置环境变量:
set ACE_ROOT=C:\ACE_wrappers
set BCBVER=6
笔者使用的的BCB 6.0,所以设置为BCBVER=6
3、在console中进入:C:\ACE_wrappers\ace
键入:make -f Makefile.bor 编译ACE,如果不出错的话,你就可以在CB下使用ACE了,当然,在CB下编译时可能不能找开相应的Dll,你将ACE.b.lib加入到工程时里就可以了。
4、编译tests,不是必要的: 进入:ACE_ROOT\tests
make -f Makefile.bor
成功的话,你就可以:run_tests.bat bor来运行网才编译的tests了。
使用时记得在CB的option/directory里设置相应的头文件路径!然后在工程中就可以加入头文件,使用ACE的库了!你也可以先看看它息带的examples.相信它的跨平台及高性能会吸引你的!
在VC下的安装我就不多说了,ACE的解压目录里有个ACE_install.htm文件,里面有详细说明(在其它操作系统及开发平台的介绍都有,你可以参考),相信难不到你!
ACE发展已经有多年了,如些优秀的东西在国内很少有人知道,真是....
相关资料及链接:
http://www.cs.wustl.edu/~schmidt/ACE.html
www.flyingdonkey.com