使用libpq-fe.h在带有代码块的64位窗口上构建,无法正确启动

时间:2015-11-16 11:24:53

标签: c++ gcc codeblocks

在Windows 64位上编译和运行带有代码块的程序,连接postgresql,遇到了一些麻烦。 Postgresql也是64位。

我已经在linux下使用了 libpq-fe.h ,在64或32位上没有问题。现在,在窗户上,我被困住了。

我在windows机器上安装了最新版本的code :: blocks,并使用了GNU GCC编译器。然后开始编码,一切都很好,直到我包括libpq-fe.h。

所以,32位与64位对战(Libpq.dll:文件无法识别),所以我在codeblocks下安装并配置了它。

在遇到TIMESPEC的一些麻烦之后最终编译了。但是没有开始。

第一个错误:

The program can't start because SSLEAY32.dll is missing from yout computer. Try reinstalling the program to fix this problem.

为了解决这个问题,我将dll从postgresql安装复制到了exe路径。与 libeay32.dll 相同的问题。

现在,当我开始我的exe时,我获得了:

The application was unable to start correctly (0xc000007b). Click OK to close the application.

我认为以这种方式应对dll并不是一件好事。但是......我怎么能解决这个错误呢?怎么检查?

1 个答案:

答案 0 :(得分:0)

找到了诀窍。 安装了Windows的Openssl,这里找到的最后64位版本:http://slproweb.com/products/Win32OpenSSL.html

现在运行正常。