gpt4 book ai didi

mongodb - 使用 SSL 编译 MongoDB 的文件结束/伪操作错误

转载 作者:可可西里 更新时间:2023-11-01 09:44:44 28 4
gpt4 key购买 nike

我目前在 Ubuntu 13.10 x64 上使用 MongoDB,具有跨 3 个站点的副本集功能,并且已经到了需要启用 SSL 的阶段。这需要自己编译,遗憾的是我之前没有这方面的经验,这让我有些头疼。

我正在尝试按照此处概述的过程编译 r2.4.9:http://www.mongodb.org/about/tutorial/build-mongodb-on-linux/

根据我在网上搜索相关文章时发现的内容,我已经安装了大量的软件包:

git-core build-essential scons devscripts lintian dh-make libpcre3 libpcre3-dev libboost-dev libboost-date-time-dev libboost-filesystem-dev libboost-program-options-dev libboost-system-dev libboost -thread-dev libpcap-dev libreadline-dev libssl-dev rng-tools

我还更改了 SConstruct 文件以删除 CCFLAG -Werror 以阻止它立即因这么多 [-Werror=unused-local-typedefs] 而失败,如中所述this question .

编译过程似乎进行得很远,但总是在同一个文件 dbclient_rs.cpp 处失败:

g++ -o build/linux2/ssl/mongo/client/dbclient_rs.o -c -Wnon-virtual-dtor -Woverloaded-virtual -fPIC -fno-strict-aliasing -ggdb -pthread -Wall -Wsign-compare -Wno-unknown-pragmas -Winvalid-pch -pipe -fno-builtin-memcmp -O3 -DBOOST_ALL_NO_LIB -D_SCONS -DMONGO_EXPOSE_MACROS -DSUPPORT_UTF8 -D_FILE_OFFSET_BITS=64 -DMONGO_SSL -DMONGO_HAVE_HEADER_UNISTD_H -DMONGO_HAVE_EXECINFO_BACKTRACE -Ibuild/linux2/ssl/third_party/libstemmer_c/include -Isrc/third_party/libstemmer_c/include -Ibuild/linux2/ssl/third_party/s2 -Isrc/third_party/s2 -Ibuild/linux2/ssl/third_party/boost -Isrc/third_party/boost -Ibuild/linux2/ssl/third_party/pcre-8.30 -Isrc/third_party/pcre-8.30 -Ibuild/linux2/ssl -Isrc -Ibuild/linux2/ssl/mongo -Isrc/mongo -Ibuild/linux2/ssl/third_party/s2 -Isrc/third_party/s2 -Ibuild/linux2/ssl/third_party/snappy -Isrc/third_party/snappy -Ibuild/linux2/ssl/third_party/v8/include -Isrc/third_party/v8/include src/mongo/client/dbclient_rs.cpp

(已删除警告垃圾邮件)

{standard input}: Assembler messages:
{standard input}:73382: Warning: end of file not at end of a line; newline inserted
{standard input}: Error: open CFI at the end of file; missing .cfi_endproc directive
g++: internal compiler error: Killed (program cc1plus)
Please submit a full bug report,
with preprocessed source if appropriate.
See <file:///usr/share/doc/gcc-4.8/README.Bugs> for instructions.
scons: *** [build/linux2/ssl/mongo/client/dbclient_rs.o] Error 4
scons: building terminated because of errors.

注意:我也在同一个地方看到了伪操作错误,但是当我删除 CCFLAG -w 以支持删除 Werror< 时,它们被上面的错误所取代 代替。

还刚刚注意到它在启动时检查行 Checking for C library rt... no - 这可能是个问题吗?

g++版本为4.8.1,scons版本为2.3.0

我是不是在做一些令人难以置信的蠢事?

非常感谢。

最佳答案

好的,经过更多搜索,我找到了问题的解释 here .

似乎与编译过程没有足够的内存有关。我在 512MB VPS 上运行。升级到 4GB 后工作正常(还按照建议删除了 -pipe CCFLAG)。

关于mongodb - 使用 SSL 编译 MongoDB 的文件结束/伪操作错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21506593/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com