`
openstudy
  • 浏览: 236169 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

qt eclipse 动态链接库

阅读更多
1)eclipse c++可以集成eclipse的svn插件subclipse
到http://subclipse.tigris.org/servlets/ProjectDocumentList?folderID=2240&expandFolder=2240&folderID=0下载site-1.6.16.zip,解压缩后将features和plugins两个目录复制到eclipse c++目录下即可

2)qt,eclipse c++开发动态链接库
下面的开发内容是参照Qt\4.7.1\examples\tools\echoplugin完成的
项目名为test-service,包括test-service.pro,UserInterface.h,TestUser.h和TestUser.cpp四个文件
项目文件test-service.pro,内容如下
# ! [0]
TEMPLATE = lib
CONFIG += test-service
HEADERS = TestUser.h
SOURCES = TestUser.cpp
TARGET = test-service
DESTDIR = ../lib

接口UserInterface.h内容如下
/*
* UserInterface.h
*
*  Created on: 2011-1-5
*      Author: bruce
*/

#ifndef USERINTERFACE_H_
#define USERINTERFACE_H_

#include <QString>

//! [0]
class UserInterface
{
public:
    virtual ~UserInterface() {}
    virtual QString hello(const QString &message) = 0;
};


QT_BEGIN_NAMESPACE
Q_DECLARE_INTERFACE(UserInterface,
                    "com.openstudy.test.plugin.UserInterface/1.0");
QT_END_NAMESPACE

//! [0]

#endif /* USERINTERFACE_H_ */

头文件TestUser.h,内容如下
/*
* TestUser.h
*
*  Created on: 2011-1-5
*      Author: bruce
*/

#ifndef TESTUSER_H_
#define TESTUSER_H_

#include <QObject>
#include "UserInterface.h"

//! [0]
class TestUser : public QObject, UserInterface
{
    Q_OBJECT
    Q_INTERFACES(UserInterface)

public:
    QString hello(const QString &message);
};
//! [0]

#endif /* TESTUSER_H_ */


cpp文件TestUser.cpp,内容如下
/*
* TestUser.cpp
*
*  Created on: 2011-1-5
*      Author: bruce
*/

#include <QtGui>

#include "TestUser.h"

//! [0]
QString TestUser::hello(const QString &message)
{
    return "hello," + message;
}
//! [0]

//! [1]
Q_EXPORT_PLUGIN2(testuser, TestUser);
//! [1]


只要这4个文件就可以了,然后到项目路径下分别执行qmake和make release两条命令即可。

dll调用,请参照附件中的test-cs部分,需要注意的地方是在test-cs.pro文件中第一行INCLUDEPATH += ../test-service,qmake文档对INCLUDEPATH的解释是应用程序所需的额外的包含路径的列表

qt中文乱码
-Dfile.encoding=UTF-8加入到eclipse.ini,并将以下代码放到main函数的最前面
QTextCodec *codec = QTextCodec::codecForName("UTF8");
QTextCodec::setCodecForTr(codec);
QTextCodec::setCodecForLocale(codec);
QTextCodec::setCodecForCStrings(codec);

qt读取文件用QSettings
分享到:
评论

相关推荐

    eclipse-cpp-2023-09-R-win32-x86-64.zip

    用户可以轻松地创建新项目,选择模板(如控制台应用、静态或动态库等),以及导入已有的源代码。此外,支持版本控制系统如Git,便于团队协作。 4. **构建系统**:Eclipse C++ IDE集成了Makefile工具,可以自动编译...

    qwt-5.1.0.zip安装帮助文档

    将编译生成的动态链接库和库文件分别复制到Qt的相应目录: - 将`qwt.dll`和`qwt.lib`复制到`D:\qt\4.3.2\bin`和`D:\qt\4.3.2\lib`。 - 将`qwtplugin.dll`和`qwtplugin.lib`复制到`D:\Qt\4.3.2\plugins\designer`。 ...

    Javacallqt.zip

    使用Qt的构建系统(如qmake或CMake)编译C++代码为动态链接库(.dll或.dylib),并确保该库与Java项目一起分发。 9. **测试与运行**: 在Java项目中,实例化`QtBridge`类并调用`callQtFunction()`,运行程序,...

    QT210开发板led驱动以及在anroid应用程序控件led

    开发者需要编写JNI头文件定义函数原型,然后在C/C++代码中实现这些函数,最后在Java代码中通过System.loadLibrary加载动态链接库,即可调用到这些原生方法。 在"QT210_android_led"压缩包中,可能包含以下文件和...

    qwtpolar-1.1.1编译包sdk

    2. **lib**:这是存放库文件的地方,包含了编译好的QwtPolar动态链接库(dll)或静态链接库(lib),根据操作系统和编译设置可能有所不同。这些库文件是你的程序在运行时需要调用的,以便实现QwtPolar的功能。 3. *...

    全国职业院校技能大赛——中职组B卷

    - 动态链接库(lib-SmartHomeGateway-X86.so、lib-SmartHomeGateway-ARM.so):用于智能家居网关的开发。 #### 总结 通过本次“全国职业院校技能大赛——中职组B卷”的赛题解析可以看出,该比赛不仅考察了参赛者...

    lib40.zip

    在开发过程中,库经常被集成到IDE(Integrated Development Environment)中,如Visual Studio、Eclipse或Code::Blocks,这些工具可以帮助自动管理库的引用和链接过程。 综上所述,“lib40.zip”可能是一个包含...

    AUBO机器人linux+C+++sdk学习资料1

    1. 库文件(.so):这是C++动态链接库,用于在运行时提供接口功能。 2. 头文件(.h/.hpp):包含了C++函数声明,供开发者在源代码中调用。 3. 示例代码:演示如何使用SDK功能的示例程序。 4. 文档:详细说明了接口...

    QGis1.8开发包

    2. **设置环境变量**: 添加QGIS库路径到系统PATH环境变量中,以便在编译时能够找到相关的动态链接库。 3. **获取开发包**: 这里提供的"qgis1.8vs2008"可能是一个Visual Studio 2008的项目文件或库,需要在Visual ...

    mingw64.rar

    5. **静态与动态链接**:你可以选择静态链接库(生成的可执行文件包含所有依赖),或者动态链接库(运行时依赖系统库文件)。 6. **多文件项目**:在较大的项目中,可能有多个源文件,此时需要通过`make`或`mingw32-...

    mingwrt-3.15.1-mingw32

    - **lib**: 存放库文件,如动态链接库(.dll)和静态链接库(.a),这些库文件在编译和运行时被程序加载以提供特定的功能。 6. **应用领域**:MingWRT广泛应用于跨平台开发,例如,开发能在Windows和Linux等不同...

    mingw32.zip

    3. **MinGW32 runtime**:这是运行MingW32编译的程序所必需的运行时库,包括动态链接库(DLLs)和静态库。这些库文件实现了C标准库、C++标准库以及其他必要的运行时功能。 4. **MSYS**:MingW32通常与MSYS(Minimal...

    gcc-g++-3.4.5-20060117-3.tar.gz

    4. **lib**:这个目录通常存放编译器需要的库文件,如动态链接库(.dll或.so),以及用于链接阶段的其他辅助文件。这些库文件在程序运行时会被加载,以提供特定的功能支持。 5. **libexec**:这个目录可能包含一些...

    MinGW-5.1.4

    2. **兼容性**: MinGW编译出的程序是原生的Windows可执行文件,不需要依赖任何DLL(动态链接库),因此可以方便地在没有MinGW的系统上运行。 3. **GCC支持**: MinGW集成了GCC,这是一个强大的、广泛使用的编译器,...

    cmake-3.2.3-win32-x86.zip

    6. `bin`和`lib`目录:可能包含运行CMake工具所需的动态链接库和其他支持文件。 7. `share`目录:可能包含CMake的配置文件和数据。 CMake的使用流程通常包括以下步骤: 1. **配置(Configure)**:在项目根目录下...

    gdb完全手册.pdf.zip_GDB pdf_GDB中文手册_gdb_linux_linux gdb pdf

    11. **调试动态链接库**:介绍如何处理动态加载的库和它们的调试问题。 12. **性能分析**:虽然GDB主要用于调试,但也能提供一些基本的性能分析工具,如时间戳和采样。 13. **与IDE集成**:讲解如何将GDB与Eclipse...

    mingw32 v7.5

    使用Mingw32 v7.5,开发者可以编写C或C++程序,创建动态链接库或静态库,使用Makefile进行自动化构建,甚至进行单元测试和调试。其文件列表中仅包含"mingw32"这一项,可能是指该版本的安装包或者解压后的根目录,...

Global site tag (gtag.js) - Google Analytics