`
ttitfly
  • 浏览: 625983 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

java调用dll(Eclipse+CDT+MinGW)

    博客分类:
  • java
阅读更多
第一步:配置环境
需要安装CDT和MinGW.

CDT:因为在Eclipse里做C++/C开发,所以需要下载CDT插件。
MinGW:需要一个 "编译程序" 才能编译程序,因此要下载可在Windows上使用的GNU C、C++编译程序:MinGW。

A:下载CDT(官网:http://www.eclipse.org/cdt/downloads.php),并以插件的形式挂载到eclipse上

B:下载并安装MinGW(下载网址:http://www.mingw.org/download.shtml#hdr6,在下载页中找到 MinGW-版本号.exe)。
备注:GCC,在Windows下面有两种实现:MinGW和Cygwin,因为MinGW是原生的win32移植,不需要另外的POSIX模拟中间层的支持,所以选择MinGW。

C:运行MinGW-版本号.exe,选择MinGW base tools(C编译器),g++编译器,和MinGW Make三个包进行下载。其实安装文件是下载了下面几个文件包:
binutils-2.17.50-20060824-1.tar.gz
gcc-core-3.4.5-20060117-3.tar.gz
gcc-g++-3.4.5-20060117-3.tar.gz
mingw32-make-3.81-20080326-2.tar.gz
mingwrt-3.15.1-mingw32.tar.gz
w32api-3.12-mingw32-dev.tar.gz
这这些下载下来的所有包拷贝到同一个目录下面(建议将这6个保留下来,省得下次还需要下载)。

D:配置环境变量:

  PATH:    C:\MinGWStudio\MinGW\bin  (如果系统已经有其它的C/C++编译器,请把C:\MinGWStudio\MinGW\bin  加在最前面)

  LIBRARY_PATH:  C:\MinGW\lib

  C_INCLUDE_PATH:  C:\MinGW\include

  CPLUS_INCLUDE_PATH:  C:\MinGW\include\c++\3.4.5;C:\MinGW\include\c++\3.4.5\mingw32;C:\MinGW\include\c++\3.4.5\backward;C:\MinGW\include

E:为了使CDT能够取用 MinGW来进行编译的工作, 我们要回到 Eclipse 当中进行设定
Window->Preferences->C/C++->New CDT project wizard->Makefile Project
找到 Binary Parser 取消 Elf Parser 改选 PE Windows Parser.

Project->Properties->C/C++ Build->Environment里的路径配置看是否正确
Project->Properties->C/C++ Build->XL C/C++ Compiler里的路径配置看是否正确
Project->Properties->C/C++ Build->Tool chain editor->Current toolchain选择 MinGW GCC

F:更改make文件名:由于在MinGW目录下的make文件名为“mingw32-make.exe”,而eclipse默认的调用文件名为“make.exe”所以将此目录下的文件名改为“make.exe”。

第二步:创建C++工程和类:
hello.h:
#include "stdio.h"
int main(){
   printf("Hello world!\n");
   return 1;
}



hello.cpp:
#include <iostream>
using namespace std;  
  
int main()  
{  
    cout<<"hello world!!\n";  
    return 1;
} 


右键hello.cpp,Make targets--->Build-->Add-->Target Name随便起个名字,其他都默认,然后选择这个编译。会生成一个.exe 文件。

如果编译时出现类似这种错误:

****   Build   of   configuration   Debug   for   project   ctest   ****

****   Internal   Builder   is   used   for   build                               ****
gcc   -O0   -g3   -Wall   -c   -fmessage-length=0   -osrc\hello.o   ..\src\hello.c
Internal   Builder:   Exec   error:?????????¨?
Build   error   occurred,   build   is   stopped
Time   consumed:   10     ms.   


则说明:Project->Properties->C/C++ Build->Tool chain editor->Current toolchain选择的不是 MinGW GCC

如果编译时出现类似这种错误:
Exec   error   ????????????

主要原因是在装Eclipse的CDT的时候,直接解压缩cdt-master-4.0.3.zip包,或者通过links来安装,如果是这样则需要:
把 plugins\org.eclipse.cdt.core.win32_4.0.0.200802251018.jar 解压为 org.eclipse.cdt.core.win32_4.0.0.200802251018 目录, 同时删除该jar就可以了

备注:还有另一种解决办法:
安装Eclipse的CDT的时候,在线升级地址为:http://download.eclipse.org/tools/cdt/releases/europa
(注意:可以在官方网站上下载cdt-master-4.0.3.zip本地安装,但千万不要使用直接解压缩cdt-master-4.0.3.zip包,或者通过links来安装)


然后打开hello.cpp文件,右键,选择Run As-->Local C/C++ Appication. 会在控制台打印出Hello World
分享到:
评论

相关推荐

    eclpse+cdt+mingw+msys安装文档

    在安装MinGW+MSYS时,通常需要访问官方网站下载最新版本的安装器,例如mingw-get-inst。安装过程中,需要选择必要的组件,如C++编译器和MSYS基本系统。安装完成后,为了使系统识别这些工具,需要配置环境变量。这...

    eclipse直接完成java调用C或C++借鉴.pdf

    本文旨在详细介绍如何在Eclipse平台上实现Java对C/C++的直接调用,避免使用额外的工具如Visual C++来生成DLL文件。这不仅提高了开发效率,还确保了整个开发流程在统一的环境中进行。 #### 二、准备工作 1. **安装...

    JNI技术手册 c/c++调用java

    - **Java调用DLL:** - 将DLL拷贝到Java工程。 - 运行Java程序。 #### 六、C++如何调用Java程序 - **DEMOMAIN.JAVA内容示例:** - Java代码示例。 - **采用VC6++ IDE,采用JNI技术实现。** - 编译时。 - 运行...

    tdm64-gcc-5.1.0

    它与Eclipse + CDT(C/C++ Development Tools)集成,能够帮助开发者创建JNI(Java Native Interface)代码,进而实现Java程序对本地C或C++代码的调用。JNI是一种规范,允许Java代码与其他语言编写的代码进行交互,...

    eclipse 开发c/c++

    CDT 是完全用 Java 实现的开放源码项目(根据 Common Public License 特许的),它作为 Eclipse SDK 平台的一组插件。这些插件将 C/C++ 透视图添加到 Eclipse 工作台(Workbench)中, 现在后者可以用许多视图和向导...

    Windows_下使用Eclipse开发Gtk

    在Windows环境下利用Eclipse进行Gtk+程序开发,涉及到的几个关键知识点包括:MinGW的安装与配置、Gtk和Glade的安装、Eclipse CDT的使用以及如何在Eclipse中配置GTK+开发环境。以下是对这些知识点的详细解析: #### ...

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

    对于开发工作,一个集成开发环境(IDE)如Code::Blocks、Eclipse CDT或Qt Creator可能是有用的,它们可以提供图形化的界面,简化项目的管理、编辑、构建和调试过程。 总的来说,GCC-G++ 3.4.5是一个功能强大的...

Global site tag (gtag.js) - Google Analytics