Summary: | emulators/visualboyadvance-m 2.0.0b2_4 build error with /usr/local/include/glibmm-2.4 and -Wc++11-extensions | ||||||||
---|---|---|---|---|---|---|---|---|---|
Product: | Ports & Packages | Reporter: | Kevin Reinholz <kreinholz> | ||||||
Component: | Individual Port(s) | Assignee: | Tobias Kortkamp <tobik> | ||||||
Status: | Closed FIXED | ||||||||
Severity: | Affects Only Me | CC: | portmaster, root, w.schwarzenfeld | ||||||
Priority: | --- | Flags: | linimon:
maintainer-feedback?
(root) |
||||||
Version: | Latest | ||||||||
Hardware: | amd64 | ||||||||
OS: | Any | ||||||||
Attachments: |
|
Description
Kevin Reinholz
2017-11-08 16:21:11 UTC
Created attachment 187908 [details]
log of build failure using 'script' command
I created a log of the visualboyadvance-m build failure using 'script'. This attachment might be a little easier to review that my ugly copy+paste job in the initial bug report.
I'm also running into this problem with (at least) one of the ports I maintain. The GNOME repo[1] for glibmm has several newer versions, and looking over the source, it appears version 2.6 will overcome at least most of the greif endured in this version. I suppose another option would be to pass C(PP)FLAGS eg; -Wc++11-extensions -Wc++11-long-long . But this is only masking the problem with duct tape. devel/glibmm is no longer maintainable with the toolchains in FreeBSD. If this doesn't get updated to at least 2.6. I'm simply going to have to drop some ports I maintain. 1. https://github.com/GNOME/glibmm/tree/glibmm-2-6 --Chris Kevin, Here are some hints that may get you closer to where you're trying to go... The following assumes you have made no attempt to make your port c++11 compliant. add (at least) the following to USES compiler:c++11-lang and (at least) the following to USE_CXXSTD c++11 and (at least) the following to CXXFLAGS -stdlib=libc++ -Wc++11-extensions You have a boat load of warnings, and errors! But you have been given the hints by the compiler. You will *likely* need to add most, if not all of them to the CXXFLAGS line, mentioned above. It's ugly, and it's dirty. But until the supporting libraries (headers) are updated. This is as good as it gets. Good luck! --Chris Hi Chris, Sorry for the very long lag time replying to you. I tried adding those flags to both the Makefile for emulators/visualboyadvance-m, and later, /etc/make.conf to make my compiler c++11 compliant, but ran into the same issues. Happy to retry with gcc5 or gcc6, both of which I have installed. (But I normally just let clang do its thing unless a Port specifically requires gcc). It still coughs up the same errors, from glibmm-2.4, which I'm a little loathe to mess around with. (I know my limits, and they are many!) Given the very minor version change, I'm rather content to just leave visualboyadvance-m at its current version, and exclude it from portmaster upgrades with an -x flag, until glibmm is updated to at least 2.6. I don't know when the timeline is for that but it seems that would be the better long-term fix if we're to maintain any level of "parity" with popular GNU/Linux apps built around newer toolkits. Sorry for the trouble. I hope you're not forced to drop support for the ports you maintain. I rather love FreeBSD, and have never found a Linux distro that hit the sweet spot the same way for me. I even had a brief love affair with OpenSolaris until Oracle killed that. Then back to FreeBSD because it's just more fun. As of ports r484102 it is now marked as broken. Version 2.56.0 is in the port. No BROKEN statement in the Makefile. Compiles fine. Close here with overcome by events. (In reply to w.schwarzenfeld from comment #6) > Version 2.56.0 is in the port. No BROKEN statement in the Makefile. > Compiles fine. > Close here with overcome by events. Look again. https://www.freshports.org/emulators/visualboyadvance-m is at 2.0.0b2_6 and still marked as BROKEN. Created attachment 201911 [details]
svn-diff-visualboyadvance
Sorry, I only looked at glibmm.
A commit references this bug: Author: tobik Date: Mon Feb 11 08:59:01 UTC 2019 New revision: 492675 URL: https://svnweb.freebsd.org/changeset/ports/492675 Log: Unbreak emulators/visualboyadvance-m fex/fex/File_Extractor.h:181:58: error: cannot initialize return object of type 'blargg_err_t' (aka 'const char *') with an lvalue of type 'const int' inline blargg_err_t File_Extractor::rewind_v() { return blargg_ok; } PR: 223538 Submitted by: w.schwarzenfeld@utanet.at (based on) Changes: head/emulators/visualboyadvance-m/Makefile head/emulators/visualboyadvance-m/files/patch-fex_fex_blargg__common.h head/emulators/visualboyadvance-m/files/patch-src_gba_Cheats.cpp |