我正在用C编写一个应用程序,它使用pcre3.dll进行正则表达。
问题是该程序需要在我尝试运行程序的每台客户端计算机上使用pcre3.dll。
如何从pcre3.dll中删除我的应用程序的依赖项?
答案 0 :(得分:3)
您需要静态链接到pcre3,而不是像现在一样动态链接。
如果从源代码编译pcre,那么就像NON-UNIX-USE文件所述:
在WINDOWS环境中链接程序
如果要将程序静态链接到PCRE库中 非dll .a文件的形式,您必须先定义PCRE_STATIC 包括pcre.h或pcrecpp.h,否则包括pcre_malloc()和 pcre_free()导出的函数将被声明为__declspec(dllimport), 结果不理想。