Open videlec opened 7 years ago
@unhyperbolic I'm guessing this is something you can look into?
Hi - having not even looked at the error yet (sorry), I’m guessing it’s a gcc7 incompatibility which is fixed in master and will appear in the next release. Need to check this though.
--
Prof. Benjamin Burton Computational Geometry & Topology Group School of Mathematics and Physics The University of Queensland, Australia
On 17 Nov 2017, at 6:35 pm, William Pettersson notifications@github.com wrote:
@unhyperbolic I'm guessing this is something you can look into?
— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub, or mute the thread.
Do you have instructions somewhere to build from sources?
The relevant errors are below. It appears that that a #include functional is missing. Can that be? My only other explanation is that with the new version of sage, sageRegina's install script is no longer passing some compiler flags to gcc.
videlec: You can download sageRegina at https://pypi.python.org/pypi/sageRegina/5.1-1, unpack it and call "sage -python setup.py build" and "sage -python setup.py install" to build from src.
regina_4c65424/engine/triangulation/dim3/triangulation3.h: Au niveau global:
regina_4c65424/engine/triangulation/dim3/triangulation3.h:2819:24: error: « function » dans l'espace de noms « std » ne nomme pas un type de patron
const std::function<bool(Triangulation<3>&)>& action) const;
^~~~~~~~
regina_4c65424/engine/triangulation/dim3/triangulation3.h:2819:32: error: expected « , » or « ... » before « < » token
const std::function<bool(Triangulation<3>&)>& action) const;
^
In file included from regina_4c65424/engine/triangulation/dim3.h:45:0,
from regina_4c65424/engine/triangulation/xmltrireader3.cpp:34:
regina_4c65424/engine/triangulation/dim3/triangulation3.h: Dans la fonction membre « bool regina::Triangulation<3>::retriangulate(int, unsigned int, regina::ProgressTrackerOpen*, Action&&, Args&& ...) const »:
regina_4c65424/engine/triangulation/dim3/triangulation3.h:2989:14: error: « bind » n'est pas un membre de « std »
std::bind(action, std::placeholders::_1, args...));
^~~~
regina_4c65424/engine/triangulation/dim3/triangulation3.h:2989:14: note: alternatives suggérées: « find »
std::bind(action, std::placeholders::_1, args...));
^~~~
find
regina_4c65424/engine/triangulation/dim3/triangulation3.h:2989:32: error: « std::placeholders » n'a pas été déclaré
std::bind(action, std::placeholders::_1, args...));
Yup, that's the GCC7 issue. If you add
#include <functional>
to engine/triangulation/dim3/triangulation3.h that should fix it. Commit 9bab3c9c86fdc426fff0a94ecffea612fe9817df is the fix in master.
videlec: I just created a new sageRegina package that should include the fix. You can try it out like this:
sage -pip install http://sageRegina.unhyperbolic.org/sageRegina-5.1_2d18496.tar.gz --log reginaInstall.log
Successfully installed sageRegina-5.1-2d18496
. Thanks.
Sage 8.1 is officially out, so sageRegina won't compile with the latest official Sage anymore. When will the next regina release be?
If it is really soon, I will just wait to do the next sageRegina release when regina is released. It it is soon, I will release the file from the previous comment as pre-release sageRegina-5.2a0. It it will take a while, I will patch regina 5.1 to just include the missing header and release as sageRegina-5.1-2.
Sage 8.1 is officially out, so sageRegina won't compile with the latest official Sage anymore. When will the next regina release be?
Optimistically: December (this month).
Realistically: probably January (next month).
Following the instructions at http://sageregina.unhyperbolic.org/ I failed to install Regina. My Sage is in version 8.1.beta9 on a recent archlinux (gcc 7.2.0). The command used is
The log is regina.log.gz.