【问题标题】:Use CPAN BerkeleyDB module on Windows 7 (64 bit)在 Windows 7(64 位)上使用 CPAN BerkeleyDB 模块
【发布时间】:2012-04-19 06:49:38
【问题描述】:

我一直在尝试在我的 Windows 7 (x86_64) PC 上安装 BerkeleyDB CPAN 模块,但没有成功(我需要的是 BerkeleyDB::Hash)。我安装了 64 位 ActivePerl 和 Oracle Berkeley DB 11gR2 5.3.15。首先我尝试使用命令安装:

*cpan install BerkeleyDB*

返回错误:

*It looks like the installation of dmake and MinGW has failed.  You will not be
able to run Makefile commands or compile C extension code.  Please check your
internet connection and your proxy settings!*

所以我为 Windows 7 和 .NET Framework 4 安装了 Microsoft Windows SDK。

然后我安装了cpanm

*cpan App::cpanminus*

当我尝试跑步时:

*cpanm BerkeleyDB*

我得到了错误:

*Note (probably harmless): No library found for -llibdb
Note (probably harmless): No library found for bufferoverflowU.lib*

所以我编辑了 config.in 文件并将 lib 和包含路径更改为:

*INCLUDE    =  C:\PROGRA~2\Oracle\BERKEL~1.15\include
LIB =  C:\PROGRA~2\Oracle\BERKEL~1.15\lib*

现在当我运行 perl makefile.pl 时,关于 -llibdb 的警告消失了。

当我尝试跑步时:

 *nmake* 

我遇到了错误:

  *Creating library blib\arch\auto\BerkeleyDB\BerkeleyDB.lib and object blib\arc
h\auto\BerkeleyDB\BerkeleyDB.exp
BerkeleyDB.obj : error LNK2001: unresolved external symbol __heap_exist
BerkeleyDB.obj : error LNK2001: unresolved external symbol db_version
BerkeleyDB.obj : error LNK2001: unresolved external symbol db_strerror
BerkeleyDB.obj : error LNK2001: unresolved external symbol db_env_create
BerkeleyDB.obj : error LNK2001: unresolved external symbol db_create
BerkeleyDB.obj : error LNK2001: unresolved external symbol db_sequence_create
blib\arch\auto\BerkeleyDB\BerkeleyDB.dll : fatal error LNK1120: 6 unresolved ext
ernals
NMAKE : fatal error U1077: '"C:\Program Files (x86)\Microsoft Visual Studio 10.0
\VC\Bin\amd64\link.EXE"' : return code '0x460'
Stop.*

我几乎失去了在我的 PC 上成功构建此模块的所有希望。有人幸运吗?

非常感谢,

序列号

【问题讨论】:

    标签: perl windows-7 x86-64 berkeley-db


    【解决方案1】:

    以下所有声明未经测试/未经验证。可以从 MagNET 上的#win32 irc://irc.perl.org/win32> (Web chat) 获得有效的建议。

    libdb 需要patching for 64-bit。在安装依赖库及其头文件之前安装一个全新的编译器工具链会使问题变得更糟。如果您在应用补丁后仍然存在链接问题,请卸载 MS 工具并使用 MinGW 重试。

    【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-12-31
    • 2012-07-29
    • 2016-11-30
    • 1970-01-01
    • 2012-10-06
    • 2011-05-17
    • 2011-09-05
    相关资源
    最近更新 更多