Summary: | dev-db/mongodb-3.4.4 against libpcre-8.41 - src/mongo/shell/bench.cpp:677:9: error: 'string' was not declared in this scope | ||
---|---|---|---|
Product: | Gentoo Linux | Reporter: | Ben Kohler <bkohler> |
Component: | Current packages | Assignee: | Lujeni <julien> |
Status: | RESOLVED FIXED | ||
Severity: | normal | CC: | bkohler, gentoo, grzegorz.kubiak, hydrapolic, ivanhoe, johannes.hirte, proxy-maint, roman, steven, ultrabug, zmedico |
Priority: | Normal | Keywords: | InVCS |
Version: | unspecified | ||
Hardware: | All | ||
OS: | Linux | ||
Whiteboard: | |||
Package list: | Runtime testing required: | --- | |
Attachments: |
build.log
Patch to replace string with std::string emerge-info.txt dev-db:mongodb-3.4.6:20170731-180609.log emerge-history.txt environment etc.portage.tbz2 logs.tbz2 temp.tbz2 String patch for mondodb 3.2.16 |
FYI I tested 3.4.6 locally and it still has the same problem I'm having the same issue as you, and downgrading libprce from 8.41 to 8.40-r1 fixed the problem! I have filed a bug at https://jira.mongodb.org/browse/SERVER-30166 I have fixed it locally for the trunk branch of MongoDB, and am now just testing a patch against 3.4 which I hope to submit as a Pull Request when it is complete. seems it happens because of this: https://bugs.exim.org/show_bug.cgi?id=2084 Created attachment 485252 [details, diff] Patch to replace string with std::string Patch for mongo-3.4.4 that fixes 'string' not declared compile errors. See https://github.com/mongodb/mongo/pull/1166 Copy this into /etc/portage/patches/dev-db/mongodb-3.4/ (In reply to Steven Green from comment #5) > Created attachment 485252 [details, diff] [details, diff] > Patch to replace string with std::string > > Patch for mongo-3.4.4 that fixes 'string' not declared compile errors. > > See https://github.com/mongodb/mongo/pull/1166 > > Copy this into /etc/portage/patches/dev-db/mongodb-3.4/ This patch, with some adaptations, is needed to build mongodb-3.2.13 too. (In reply to Steven Green from comment #5) > Patch for mongo-3.4.4 that fixes 'string' not declared compile errors. > > See https://github.com/mongodb/mongo/pull/1166 Thanks, works with mongodb 3.4.6. (In reply to Steven Green from comment #5) > Created attachment 485252 [details, diff] [details, diff] > Patch to replace string with std::string > > Patch for mongo-3.4.4 that fixes 'string' not declared compile errors. > > See https://github.com/mongodb/mongo/pull/1166 > > Copy this into /etc/portage/patches/dev-db/mongodb-3.4/ This hunk appears in the attached patch but not in the referenced pull request. Is it needed? > diff -ur mongodb-src-r3.4.4/src/mongo/db/fts/unicode/string.cpp /home/steven/src/mongo/src/mongo/db/fts/unicode/string.cpp > --- mongodb-src-r3.4.4/src/mongo/db/fts/unicode/string.cpp 2017-07-16 00:29:55.089130770 +0100 > +++ /home/steven/src/mongo/src/mongo/db/fts/unicode/string.cpp 2017-07-16 09:35:31.837989128 +0100 > @@ -274,7 +274,7 @@ > > // Case sensitive and diacritic sensitive. > return boost::algorithm::boyer_moore_search( > - haystack.begin(), haystack.end(), needle.begin(), needle.end()) != std::make_pair(haystack.end(), haystack.end()); > + haystack.begin(), haystack.end(), needle.begin(), needle.end()) != haystack.end(); > } > > } // namespace unicode (In reply to Zac Medico from comment #8) I see that stray hunk was a revert of this patch: https://gitweb.gentoo.org/repo/gentoo.git/tree/dev-db/mongodb/files/mongodb-3.2.10-boost-1.62.patch I've pushed the fix: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=b1c029b6c31036b2b0e360052092b2a6e5464118 got at the unstable amd64 chroot image 13.0-desktop-gnome_20170723-192245 this : dev-db/mongodb-3.4.6 : src/.../bench.cpp:677:9: error: string was not declared in this scope Created attachment 487484 [details]
emerge-info.txt
Created attachment 487486 [details]
dev-db:mongodb-3.4.6:20170731-180609.log
Created attachment 487488 [details]
emerge-history.txt
Created attachment 487490 [details]
environment
Created attachment 487492 [details]
etc.portage.tbz2
Created attachment 487494 [details]
logs.tbz2
Created attachment 487496 [details]
temp.tbz2
Added patch to the 3.4.6 ebuild: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=983dcf2c15e29df5bdde9836b26a384eef1f099f Created attachment 487544 [details, diff]
String patch for mondodb 3.2.16
This patch is needed in order to build mongodb 3.2.16, for the same reasons as for mongodb 3.4.
commit 4fb6b5123a834fbb1d1726aaeebee2ec3ad79fa4 (HEAD -> master, origin/master, origin/HEAD) Author: Tomas Mozes <hydrapolic@gmail.com> AuthorDate: Tue Sep 5 18:09:31 2017 +0200 Commit: Patrice Clement <monsieurp@gentoo.org> CommitDate: Thu Sep 21 21:50:01 2017 +0200 dev-db/mongodb: fix building with newer libpcre/glibc. Gentoo-Bug: https://bugs.gentoo.org/580768 Gentoo-Bug: https://bugs.gentoo.org/625148 Gentoo-Bug: https://bugs.gentoo.org/626342 Package-Manager: Portage-2.3.8, Repoman-2.3.2 ...6-Replace-string-with-explicit-std-string.patch | 283 +++++++++++++++++++++ dev-db/mongodb/mongodb-3.2.16.ebuild | 23 +- 2 files changed, 294 insertions(+), 12 deletions(-) create mode 100644 dev-db/mongodb/files/mongodb-3.2.16-Replace-string-with-explicit-std-string.patch |
Created attachment 484680 [details] build.log I cannot build mongo-3.4.4 anymore (but it built ok 12 days ago). I checked my emerge history and did some testing, it seems to be the bump of libpcre-8.40 to 8.41 that is causing the breakage. That's all the information I have at this time. Thanks!