Opened 5 years ago
Closed 5 years ago
#59519 closed defect (fixed)
evince: error: expected ';' at end of declaration list
Reported by: | joshupetersen (Joshua Petersen) | Owned by: | dbevans (David B. Evans) |
---|---|---|---|
Priority: | Normal | Milestone: | |
Component: | ports | Version: | 2.6.2 |
Keywords: | Cc: | ||
Port: | evince |
Description
When running
sudo port install gnome
gets the error:
Error: Failed to build evince: command execution failed.
Looking in main.log for evince, I found the following:
.... /opt/local/include/unicode/localpointer.h:71:51: warning: deleted function definitions are a C++11 extension [-Wc++11-extension] /opt/local/include/unicode/localpointer.h:72:53: warning: deleted function definitions are a C++11 extension [-Wc++11-extension] /opt/local/include/unicode/localpointer.h:74:58: warning: deleted function definitions are a C++11 extension [-Wc++11-extension] /opt/local/include/unicode/localpointer.h:224:34: warning: rvalue references are a C++11 extension [-Wc++11-extension] /opt/local/include/unicode/localpointer.h:224:40: error: expected ';' at end of declaration list /opt/local/include/unicode/localpointer.h:405:30: warning: rvalue references are a C++11 extension [-Wc++11-extension] /opt/local/include/unicode/localpointer.h:405:36: error: expected ';' at end of declaration list .... (More errors came later of a similar nature)
Change History (8)
comment:1 Changed 5 years ago by joshupetersen (Joshua Petersen)
Keywords: | gnome evince removed |
---|
comment:2 Changed 5 years ago by joshupetersen (Joshua Petersen)
comment:4 Changed 5 years ago by ryandesign (Ryan Carsten Schmidt)
Owner: | set to dbevans |
---|---|
Port: | evince added; gnome removed |
Status: | new → assigned |
Summary: | When building gnome, error in evince, likely compiler version → evince: error: expected ';' at end of declaration list |
#53625 is a years-old ticket. But what has happened recently is that icu (which is the port that installed the file /opt/local/include/unicode/localpointer.h) was updated to a new version that requires C++11. Because of this, many ports that require icu now have to require C++11 as well. evince doesn't use icu (at least, it doesn't declare a dependency on it), but it does use libxml2, which uses icu, and that may be enough to impose the C++11 requirement on evince. We have seen such problems with other ports since the icu update.
comment:5 Changed 5 years ago by Zippyzip
Same problem here. It seems that this problem is popping up all over the place with other ports. Any short-time fix while waiting for the updated port?
comment:6 follow-up: 7 Changed 5 years ago by kencu (Ken)
an easy thing to try is to build it with a compiler that defaults to >= -std=c++11, eg:
sudo port -v install clang-9.0 sudo port -v install evince configure.compiler=macports-clang-9.0
comment:7 Changed 5 years ago by Zippyzip
Replying to kencu:
an easy thing to try is to build it with a compiler that defaults to >= -std=c++11, eg:
sudo port -v install clang-9.0 sudo port -v install evince configure.compiler=macports-clang-9.0
Thanks, that worked.
comment:8 Changed 5 years ago by jmroot (Joshua Root)
Resolution: | → fixed |
---|---|
Status: | assigned → closed |
I've seen a similar ticket (NOT A DUPLICATE) for another port, specifically qscintilla, but it looks like it could have a very similar solution:
#53625