苏陌衍 2023-03-01 15:00 采纳率: 0%
浏览 49
已结题

关于#python2的安装#的问题,如何解决?

最近在使用python2软件包的过程中,发现python2.7.18版本是集成了bsddb模块,这个模块通过libdb基础库来链接berkeley-db作为基础数据库。但因为libdb退环境了,我想要解耦掉libdb,在configure文件中却没找到相关的disable方法。一般来讲作为模块化安装的东西应该是可以在configure阶段进行设定是否使用的呀,有没有知道的朋友说一下该怎么去处理。

操作环境rehl8,python版本2.7.18,libdb版本5.3.28.

尝试过通过configure配置--without-libdb或 --without-bsddb都提示未定义指令。

正确的解耦结果应该是在python2软件安装时不需要libdb的动态库依赖。去除掉bsddb模块。

  • 写回答

7条回答 默认 最新

  • CodeBytes 2023-03-01 15:09
    关注

    该回答引用ChatGPT

    打开Python源代码的Modules/Setup文件。
    找到以下行:

    # bsddb (requires bdb >= 4.3)
    #_bsddb _bsddb.c \
    #        -I$(srcdir)/Modules/_bsddb \
    #        -I$(srcdir)/Modules/_bsddb/include \
    #        -ldb \
    #        $(BDB_LIBS)
    
    

    这是用于构建bsddb模块的Makefile规则。注意,前面的行是注释掉的。

    将这些行注释掉,以禁用bsddb模块的构建:

    
    # bsddb (requires bdb >= 4.3)
    #_bsddb _bsddb.c \
    #        -I$(srcdir)/Modules/_bsddb \
    #        -I$(srcdir)/Modules/_bsddb/include \
    #        -ldb \
    #        $(BDB_LIBS)
    
    

    保存文件并退出。
    构建Python并进行安装,这将不包括bsddb模块和对libdb的依赖:

    
    ./configure --prefix=/usr/local/python2.7.18
    make
    sudo make install
    
    

    这样您应该可以成功构建没有bsddb模块和libdb依赖的Python 2.7.18。请注意,禁用bsddb模块可能会影响您的应用程序,具体取决于您的代码是否使用bsddb模块。

    评论

报告相同问题?

问题事件

  • 系统已结题 3月9日
  • 赞助了问题酬金15元 3月1日
  • 创建了问题 3月1日

悬赏问题

  • ¥30 基于信创PC发布的QT应用如何跨用户启动后输入中文
  • ¥20 非root手机,如何精准控制手机流量消耗的大小,如20M
  • ¥15 远程安装一下vasp
  • ¥15 自己做的代码上传图片时,报错
  • ¥15 Lingo线性规划模型怎么搭建
  • ¥15 关于#python#的问题,请各位专家解答!区间型正向化
  • ¥15 unity从3D升级到urp管线,打包ab包后,材质全部变紫色
  • ¥50 comsol温度场仿真无法模拟微米级激光光斑
  • ¥15 上传图片时提交的存储类型
  • ¥15 VB.NET如何绘制倾斜的椭圆