Summary: | games/minetest Minetest 5.3.0 fails to compile with multiple issues | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Product: | Ports & Packages | Reporter: | Patrick McMunn <doctorwhoguy> | ||||||||
Component: | Individual Port(s) | Assignee: | Dmitry Marakasov <amdmi3> | ||||||||
Status: | Closed FIXED | ||||||||||
Severity: | Affects Only Me | CC: | wolfi | ||||||||
Priority: | --- | Flags: | bugzilla:
maintainer-feedback?
(amdmi3) |
||||||||
Version: | Latest | ||||||||||
Hardware: | Any | ||||||||||
OS: | Any | ||||||||||
Attachments: |
|
Description
Patrick McMunn
2020-08-08 20:27:59 UTC
I tried building Minetest manually to see if I could troubleshoot the issue, and it still occurred. So I also filed an upstream bug report: https://github.com/minetest/minetest/issues/10289 . I cannot reproduce any of the problems. It builds fine both with and without NLS both with and without system jsoncpp present. Please attach your options configuration, make.conf and full build log. Created attachment 217472 [details]
port config options
For the build log I'm attaching, I just ran rmconfig and then reset to default options.
Created attachment 217473 [details]
My /etc/make.conf
Created attachment 217474 [details]
log of failed build
I attached the requested information. But in the process of getting the requested information ready to attach, I noticed something. When I ran rmconfig and recreated the port config options, they were not the defaults as I originally thought. My make.conf set some default options which, in the case of Minetest, enabled all of the database options which are normally disabled in a default configuration. So I reset the options to the actual defaults with all the database options disabled. Minetest built just fine with no problem. I haven't tried the database options one at a time or any combination other than all of them at once, but apparently at least one of the database options is causing the problem. Even after disabling the database options and achieving a successful build, one of my earlier finds still holds true. If the client option is disabled and only the server is built, but NLS is enabled, then Minetest will build successfully but fail to install due to missing minetest.mo files. One last observation. I tested all the database backends. The build will fail if either PosGreSQL or SpatialIndex is enabled. LevelDB and Redis work, and Minetest will buid if either of those is enabled. I had time to do some further testing. Minetest will build with the PostGreSQL and SpatialIndex optons enabled if -DENABLE_SYSTEM_JSONCPP=1 is passed to cmake. There is a note in the port's Makefile referencing cmake/Modules/FindJson.cmake which states that using the system jsoncpp "May cause segfaults and other memory errors!". I brought this up with upstream, and he said "That warning text is old and should probably be removed.". So it looks like enabling the system jsoncpp should be safe and will avoid these compilation errors. I can confirm that this bug still happens for me. This is on a newly installed RELEASE system on the latest patch level (FreeBSD 12.2-RELEASE-p0), with a fresh copy of the ports tree fetched. First I run `make config` and activate the pgsql feature. Then I install the build-depends-list and run-depends-list via pkg (latest or quarterly doesn't make a difference). Running `make` after that will result in the exact same error as in comment #0. A commit references this bug: Author: amdmi3 Date: Thu Dec 3 16:18:24 UTC 2020 New revision: 556909 URL: https://svnweb.freebsd.org/changeset/ports/556909 Log: Fix multiple build problems - Remove bundled jsoncpp, it may conflict with system one - Fix plist (nls files are installed when both CLIENT and NLS are enabled) - Add patch to fix include order which causes build failure in presence of ${LOCALBASE}/include/event.h PR: 248540 Reported by: doctorwhoguy@gmail.com, wolfi@karpador.xyz Changes: head/games/minetest/Makefile head/games/minetest/files/patch-src_CMakeLists.txt head/games/minetest/pkg-plist Fix for two described problems committed as well as for another one I've ran into during testing. Please confirm. I can confirm that I can compile it correctly now (setting PGSQL to on, CLIENT to off, which is what I need on my server). The postgres connection works as well, I just tested it. |