rethinkdb / docs

RethinkDB documentation
http://rethinkdb.com/docs
Apache License 2.0
117 stars 167 forks source link

Make error on Ubuntu 20.04 on rethinkdb 2.4.1 #1323

Closed tslol closed 2 years ago

tslol commented 3 years ago

Stack currently is Ubuntu 20.04 amd64 RethinkDB 2.4.1

followed the instructions on the RethinkDB website up to the build commands. upon running make

I received this error:

[1/282] CC build/release/obj/clustering/table_manager/table_meta_client.o c++: fatal error: Killed signal terminated program cc1plus compilation terminated. make[1]: *** [src/build.mk:379: build/release/obj/clustering/table_manager/table_meta_client.o] Error 1 make: *** [Makefile:53: make] Error 2

glkemm commented 3 years ago

Having a similar problem

Detailed log: [sudo] Mot de passe de emmanuel : [1/31] CC build/release/obj/perfmon/filter.o [2/31] CC build/release/obj/http/http.o [3/31] CC build/release/obj/clustering/administration/stats/stat_manager.o [4/31] CC build/release/obj/clustering/administration/main/command_line.o [5/31] CC build/release/obj/extproc/http_job.o In file included from src/extproc/http_job.cc:18: ./src/rapidjson/document.h: In instantiation of ‘void rapidjson::GenericValue<Encoding, Allocator>::SetObjectRaw(rapidjson::GenericValue<Encoding, Allocator>::Member, rapidjson::SizeType, Allocator&) [with Encoding = rapidjson::UTF8<>; Allocator = rapidjson::MemoryPoolAllocator<>; rapidjson::GenericValue<Encoding, Allocator>::Member = rapidjson::GenericMember<rapidjson::UTF8<>, rapidjson::MemoryPoolAllocator<> >; rapidjson::SizeType = unsigned int]’: ./src/rapidjson/document.h:1857:55: required from ‘bool rapidjson::GenericDocument<Encoding, Allocator, StackAllocator>::EndObject(rapidjson::SizeType) [with Encoding = rapidjson::UTF8<>; Allocator = rapidjson::MemoryPoolAllocator<>; StackAllocator = rapidjson::RAllocator; rapidjson::SizeType = unsigned int]’ ./src/rapidjson/reader.h:1351:40: required from ‘rapidjson::GenericReader<SourceEncoding, TargetEncoding, StackAllocator>::IterativeParsingState rapidjson::GenericReader<SourceEncoding, TargetEncoding, StackAllocator>::Transit(rapidjson::GenericReader<SourceEncoding, TargetEncoding, StackAllocator>::IterativeParsingState, rapidjson::GenericReader<SourceEncoding, TargetEncoding, StackAllocator>::Token, rapidjson::GenericReader<SourceEncoding, TargetEncoding, StackAllocator>::IterativeParsingState, InputStream&, Handler&) [with unsigned int parseFlags = 16; InputStream = rapidjson::GenericStringStream<rapidjson::UTF8<> >; Handler = rapidjson::GenericDocument<rapidjson::UTF8<> >; SourceEncoding = rapidjson::UTF8<>; TargetEncoding = rapidjson::UTF8<>; StackAllocator = rapidjson::MemoryPoolAllocator<>]’ ./src/rapidjson/reader.h:1431:58: required from ‘rapidjson::ParseResult rapidjson::GenericReader<SourceEncoding, TargetEncoding, StackAllocator>::IterativeParse(InputStream&, Handler&) [with unsigned int parseFlags = 16; InputStream = rapidjson::GenericStringStream<rapidjson::UTF8<> >; Handler = rapidjson::GenericDocument<rapidjson::UTF8<> >; SourceEncoding = rapidjson::UTF8<>; TargetEncoding = rapidjson::UTF8<>; StackAllocator = rapidjson::MemoryPoolAllocator<>]’ ./src/rapidjson/reader.h:414:46: required from ‘rapidjson::ParseResult rapidjson::GenericReader<SourceEncoding, TargetEncoding, StackAllocator>::Parse(InputStream&, Handler&) [with unsigned int parseFlags = 16; InputStream = rapidjson::GenericStringStream<rapidjson::UTF8<> >; Handler = rapidjson::GenericDocument<rapidjson::UTF8<> >; SourceEncoding = rapidjson::UTF8<>; TargetEncoding = rapidjson::UTF8<>; StackAllocator = rapidjson::MemoryPoolAllocator<>]’ ./src/rapidjson/document.h:1703:57: required from ‘rapidjson::GenericDocument<Encoding, Allocator, StackAllocator>& rapidjson::GenericDocument<Encoding, Allocator, StackAllocator>::ParseStream(InputStream&) [with unsigned int parseFlags = 16; SourceEncoding = rapidjson::UTF8<>; InputStream = rapidjson::GenericStringStream<rapidjson::UTF8<> >; Encoding = rapidjson::UTF8<>; Allocator = rapidjson::MemoryPoolAllocator<>; StackAllocator = rapidjson::RAllocator]’ ./src/rapidjson/document.h:1779:55: required from ‘rapidjson::GenericDocument<Encoding, Allocator, StackAllocator>& rapidjson::GenericDocument<Encoding, Allocator, StackAllocator>::Parse(const Ch) [with unsigned int parseFlags = 16; SourceEncoding = rapidjson::UTF8<>; Encoding = rapidjson::UTF8<>; Allocator = rapidjson::MemoryPoolAllocator<>; StackAllocator = rapidjson::RAllocator; rapidjson::GenericDocument<Encoding, Allocator, StackAllocator>::Ch = char]’ ./src/rapidjson/document.h:1788:43: required from ‘rapidjson::GenericDocument<Encoding, Allocator, StackAllocator>& rapidjson::GenericDocument<Encoding, Allocator, StackAllocator>::Parse(const Ch) [with unsigned int parseFlags = 16; Encoding = rapidjson::UTF8<>; Allocator = rapidjson::MemoryPoolAllocator<>; StackAllocator = rapidjson::RAllocator; rapidjson::GenericDocument<Encoding, Allocator, StackAllocator>::Ch = char]’ ./src/rapidjson/document.h:1795:41: required from ‘rapidjson::GenericDocument<Encoding, Allocator, StackAllocator>& rapidjson::GenericDocument<Encoding, Allocator, StackAllocator>::Parse(const Ch) [with Encoding = rapidjson::UTF8<>; Allocator = rapidjson::MemoryPoolAllocator<>; StackAllocator = rapidjson::RAllocator; rapidjson::GenericDocument<Encoding, Allocator, StackAllocator>::Ch = char]’ src/extproc/http_job.cc:873:27: required from here ./src/rapidjson/document.h:1557:20: warning: ‘void memcpy(void, const void, sizet)’ writing to an object of type ‘rapidjson::GenericValue<rapidjson::UTF8<> >::Member’ {aka ‘struct rapidjson::GenericMember<rapidjson::UTF8<>, rapidjson::MemoryPoolAllocator<> >’} with no trivial copy-assignment; use copy-assignment instead [-Wclass-memaccess] 1557 | std::memcpy(data.o.members, members, count sizeof(Member)); | ~~~^~~~~~~~~~~~~~ In file included from src/extproc/http_job.cc:18: ./src/rapidjson/document.h:82:8: note: ‘rapidjson::GenericValue<rapidjson::UTF8<> >::Member’ {aka ‘struct rapidjson::GenericMember<rapidjson::UTF8<>, rapidjson::MemoryPoolAllocator<> >’} declared here 82 | struct GenericMember { | ^~~~~ In file included from src/extproc/http_job.cc:18: ./src/rapidjson/document.h: In instantiation of ‘void rapidjson::GenericValue<Encoding, Allocator>::SetArrayRaw(rapidjson::GenericValue<Encoding, Allocator>, rapidjson::SizeType, Allocator&) [with Encoding = rapidjson::UTF8<>; Allocator = rapidjson::MemoryPoolAllocator<>; rapidjson::SizeType = unsigned int]’: ./src/rapidjson/document.h:1865:54: required from ‘bool rapidjson::GenericDocument<Encoding, Allocator, StackAllocator>::EndArray(rapidjson::SizeType) [with Encoding = rapidjson::UTF8<>; Allocator = rapidjson::MemoryPoolAllocator<>; StackAllocator = rapidjson::RAllocator; rapidjson::SizeType = unsigned int]’ ./src/rapidjson/reader.h:1376:39: required from ‘rapidjson::GenericReader<SourceEncoding, TargetEncoding, StackAllocator>::IterativeParsingState rapidjson::GenericReader<SourceEncoding, TargetEncoding, StackAllocator>::Transit(rapidjson::GenericReader<SourceEncoding, TargetEncoding, StackAllocator>::IterativeParsingState, rapidjson::GenericReader<SourceEncoding, TargetEncoding, StackAllocator>::Token, rapidjson::GenericReader<SourceEncoding, TargetEncoding, StackAllocator>::IterativeParsingState, InputStream&, Handler&) [with unsigned int parseFlags = 16; InputStream = rapidjson::GenericStringStream<rapidjson::UTF8<> >; Handler = rapidjson::GenericDocument<rapidjson::UTF8<> >; SourceEncoding = rapidjson::UTF8<>; TargetEncoding = rapidjson::UTF8<>; StackAllocator = rapidjson::MemoryPoolAllocator<>]’ ./src/rapidjson/reader.h:1431:58: required from ‘rapidjson::ParseResult rapidjson::GenericReader<SourceEncoding, TargetEncoding, StackAllocator>::IterativeParse(InputStream&, Handler&) [with unsigned int parseFlags = 16; InputStream = rapidjson::GenericStringStream<rapidjson::UTF8<> >; Handler = rapidjson::GenericDocument<rapidjson::UTF8<> >; SourceEncoding = rapidjson::UTF8<>; TargetEncoding = rapidjson::UTF8<>; StackAllocator = rapidjson::MemoryPoolAllocator<>]’ ./src/rapidjson/reader.h:414:46: required from ‘rapidjson::ParseResult rapidjson::GenericReader<SourceEncoding, TargetEncoding, StackAllocator>::Parse(InputStream&, Handler&) [with unsigned int parseFlags = 16; InputStream = rapidjson::GenericStringStream<rapidjson::UTF8<> >; Handler = rapidjson::GenericDocument<rapidjson::UTF8<> >; SourceEncoding = rapidjson::UTF8<>; TargetEncoding = rapidjson::UTF8<>; StackAllocator = rapidjson::MemoryPoolAllocator<>]’ ./src/rapidjson/document.h:1703:57: required from ‘rapidjson::GenericDocument<Encoding, Allocator, StackAllocator>& rapidjson::GenericDocument<Encoding, Allocator, StackAllocator>::ParseStream(InputStream&) [with unsigned int parseFlags = 16; SourceEncoding = rapidjson::UTF8<>; InputStream = rapidjson::GenericStringStream<rapidjson::UTF8<> >; Encoding = rapidjson::UTF8<>; Allocator = rapidjson::MemoryPoolAllocator<>; StackAllocator = rapidjson::RAllocator]’ ./src/rapidjson/document.h:1779:55: required from ‘rapidjson::GenericDocument<Encoding, Allocator, StackAllocator>& rapidjson::GenericDocument<Encoding, Allocator, StackAllocator>::Parse(const Ch) [with unsigned int parseFlags = 16; SourceEncoding = rapidjson::UTF8<>; Encoding = rapidjson::UTF8<>; Allocator = rapidjson::MemoryPoolAllocator<>; StackAllocator = rapidjson::RAllocator; rapidjson::GenericDocument<Encoding, Allocator, StackAllocator>::Ch = char]’ ./src/rapidjson/document.h:1788:43: required from ‘rapidjson::GenericDocument<Encoding, Allocator, StackAllocator>& rapidjson::GenericDocument<Encoding, Allocator, StackAllocator>::Parse(const Ch) [with unsigned int parseFlags = 16; Encoding = rapidjson::UTF8<>; Allocator = rapidjson::MemoryPoolAllocator<>; StackAllocator = rapidjson::RAllocator; rapidjson::GenericDocument<Encoding, Allocator, StackAllocator>::Ch = char]’ ./src/rapidjson/document.h:1795:41: required from ‘rapidjson::GenericDocument<Encoding, Allocator, StackAllocator>& rapidjson::GenericDocument<Encoding, Allocator, StackAllocator>::Parse(const Ch) [with Encoding = rapidjson::UTF8<>; Allocator = rapidjson::MemoryPoolAllocator<>; StackAllocator = rapidjson::RAllocator; rapidjson::GenericDocument<Encoding, Allocator, StackAllocator>::Ch = char]’ src/extproc/http_job.cc:873:27: required from here ./src/rapidjson/document.h:1549:20: warning: ‘void memcpy(void, const void, sizet)’ writing to an object of type ‘class rapidjson::GenericValue<rapidjson::UTF8<> >’ with no trivial copy-assignment; use copy-assignment or copy-initialization instead [-Wclass-memaccess] 1549 | std::memcpy(data.a.elements, values, count sizeof(GenericValue)); | ~~~^~~~~~~~~~~~ ./src/rapidjson/document.h:421:7: note: ‘class rapidjson::GenericValue<rapidjson::UTF8<> >’ declared here 421 | class GenericValue { | ^~~~ [6/31] CC build/release/obj/rdb_protocol/terms/string.o [7/31] BUILD v8_3.30.33.16-patched

Full error log: ./build/external/v8_3.30.33.16-patched_install.log make[1]: [mk/support/build.mk:149 : build/external/v8_3.30.33.16-patched/lib/libv8.a] Erreur 1 make: [Makefile:53 : make] Erreur 2

srh commented 3 years ago

Thanks for the report, I'll check it out.

Try http://samuelhughes.com/rethinkdb/build_instructions.html if they differ. For v8 it's probably that you need to specify clang.

Maybe some action items are to either fix the build, fix the website documentation, or make the build system automatically avoid GCC by default.

ferrlen commented 3 years ago

Hi everyone,

Was this issue sorted out? I was going to build it for Ubuntu, since the latest release is old. I tried to build it for Windows first and it's impossible right now, it has a bug and I can't sort it out

Thanks!

srh commented 3 years ago

@ferrlen The issue reported is actually that they're following the website instructions, which are out of date. You need to pass CXX=clang++ to the ./configure line on Linux.

Ubuntu 20.04 compilation does in fact work. The "focal" section at http://samuelhughes.com/rethinkdb/build_instructions.html was tested on both amd64 and 64-bit ARM.

Edit: I might have only tried v2.4.x branch.

gabor-boros commented 2 years ago

The scope of this issue for resulution is to update the website instructions.

srh commented 2 years ago

The website has been updated at https://rethinkdb.com/docs/install/ubuntu/ . We no longer need CXX=clang++ but the instructions are updated with other changes like python3.