0
点赞
收藏
分享

微信扫一扫

Windows使用mingw64编译生成dll动态库

归零者245号 2022-01-21 阅读 152

mingw版本:8.1.0

dll函数查看器:dllexp.exe(点击下载 提取码:s7tu)

导出函数要以extern “C”进行声明,否则导出函数名头部、尾部有下划线及其他特殊字符标识。

DLL编译命令:

g++ -shared -o project.dll project.cpp -include 具体引用文件

mingw编译生成动态库或可执行程序摆脱对libgcc-****.dll、libstdc++-*.dll动态库依赖需要在编译时添加命令-static-libgcc、-static-libstdc++(功能:编译时使用静态库连接)。

导出示例无extern “C”声明:

dll.h

#ifdef BUILD_DLL
#define EXPORT __declspec(dllexport)
#else
#define EXPORT __declspec(dllimport)
#endif

extern "C" {
EXPORT int test();
EXPORT const char* add(int x, int y);
}

dll.cpp

#include "dll_robot.h"

int test(){
    return 20220118;
}

const char* add(int x, int y){
    return "不会做";
}

 

举报

相关推荐

0 条评论