Closed anne-glerum closed 1 year ago
ASPECT dev is only guaranteed to work with a newer deal.II master. I know this is annoying sometimes but there is no good way to detect exactly when the necessary change inside deal II happened. Of course you can comment out stuff to often make things compile. Does that make sense?
Yes that makes sense.
I'm confused though about this:
#if DEAL_II_VERSION_GTE(9,5,0)
for the compute_no_normal_flux_constraints_on_level functionThis is how it looks like in compat.h: https://github.com/geodynamics/aspect/blob/3eef1314235db317da36e76bff00921a404d93d1/include/aspect/compat.h#L84
This mean the implementation is in there if you are not using 9.5 (so, 9.3 or 9.4). Starting with deal.II master that is newer than the ASPECT development version, the function is inside deal.II, so ASPECT does not define it.
Ah sorry, I see I forgot the !
in my messages above for compat.h.
But from what you're saying, it should work with 9.4 (which according to my colleague it didn't, but I didn't try that myself). I also expected it to work with 9.5.0-pre, as that seems smaller than 9.5.0, but that's probably not the case then. (It doesn't seem to be taken into account https://www.dealii.org/developer/doxygen/deal.II/config_8h_source.html#l00274).
9.5.0-pre counts as 9.5.0 and it has to in this case.
9.4 should work because we compile ASPECT with the 9.4 image on each pull request. Let me know if it doesn't.
At the moment, trying to compile the current ASPECT main against deal.ii dev from 24 June fails in two places:
This last place is related to https://github.com/dealii/dealii/pull/14167/ and https://github.com/geodynamics/aspect/pull/4962.
I can fix it by setting
#if DEAL_II_VERSION_GTE(9,5,0)
to#if DEAL_II_VERSION_GTE(9,5,1)
in compat.h and source/postprocess/visualization.cc. Compiling against 9.3.3 also works.Version details: