从源代码构建mongodb的错误

时间:2016-03-10 22:40:42

标签: mongodb

我正在尝试从他们的github仓库中的主分支中提取mongod,但是当我按these instructions运行scons all时几乎立即出现错误:

IndexError: list index out of range:
  File "/home/sdause/Downloads/mongo-master/SConstruct", line 2580:
    env.SConscript('src/SConscript', variant_dir='$BUILD_DIR', duplicate=False)
  File "/usr/lib/scons/SCons/Script/SConscript.py", line 546:
    return _SConscript(self.fs, *files, **subst_kw)
  File "/usr/lib/scons/SCons/Script/SConscript.py", line 260:
    exec _file_ in call_stack[-1].globals
  File "/home/sdause/Downloads/mongo-master/src/SConscript", line 14:
    ] + module_sconscripts
  File "/usr/lib/scons/SCons/Script/SConscript.py", line 546:
    return _SConscript(self.fs, *files, **subst_kw)
  File "/usr/lib/scons/SCons/Script/SConscript.py", line 260:
    exec _file_ in call_stack[-1].globals
  File "/home/sdause/Downloads/mongo-master/src/mongo/SConscript", line 40:
    'util',
  File "/usr/lib/scons/SCons/Script/SConscript.py", line 546:
    return _SConscript(self.fs, *files, **subst_kw)
  File "/usr/lib/scons/SCons/Script/SConscript.py", line 260:
    exec _file_ in call_stack[-1].globals
  File "/home/sdause/Downloads/mongo-master/src/mongo/installer/SConscript", line 7:
    'msi',
  File "/usr/lib/scons/SCons/Script/SConscript.py", line 546:
    return _SConscript(self.fs, *files, **subst_kw)
  File "/usr/lib/scons/SCons/Script/SConscript.py", line 260:
    exec _file_ in call_stack[-1].globals
  File "/home/sdause/Downloads/mongo-master/src/mongo/installer/msi/SConscript", line 89:
    major_version = "%s.%s" % (mv[0], mv[1])

运行scons mongo时会打印出类似的错误。

1 个答案:

答案 0 :(得分:5)

这可能会帮助你

https://groups.google.com/forum/#!msg/mongodb-user/noH__CkufmU/1MjlHo5cCAAJ

当您从github下载zip文件时,它没有提供存储库元数据,这是构建系统用来派生版本号的内容。

如果您想从源代码构建,我建议:

  • 制作存储库的完整git克隆并查看您有兴趣构建的版本,或
  • 下载源存档,其中包含预插补的版本号。

最后,如果以上都不是您的选项,您可以通过将SCons变量MONGO_VERSION和MONGO_GITHASH传递给SCons调用来显式传递要为构建设置的版本和git哈希:

if "opened" in line:
            print "You just received some mail! Wow!"
            data = json.dumps({"url":"awesome url", "data":"awesome data"})
            req = urllib2.Request("http://1.2.3.4:8080/", data, {'Content-Type':'application/json'})
            f = urllib2.urlopen(req)
            response = f.read()
            print (response)
            f.close()