-
Notifications
You must be signed in to change notification settings - Fork 88
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Build failure when "Compile Before Require" meets imported OCaml plugins #724
Comments
Hi, thanks for the report! Can you check |
I've only set the options listed above, everything else is at default level. The command you described says "Its value is nil". |
OCaml plugins are not supported, see https://proofgeneral.github.io/doc/master/userman/Coq-Proof-General/#Current-Limitations, nevertheless I wanted to investigate, but I was not able to install diaframe. I have an opam switch with
then I did
The last command reports an error "Missing dependency: coq >= 8.18". I nevertheless continued with
which quickly failed with
How should I setup things to be able to do make in diaframe? |
Oh, I didn't know that. Well that is unfortunate... lucky enough things work just fine when I disable "compile before require".
Seems like diaframe recently dropped support for Coq 8.17, so you'll have to update to Coq 8.18. Not sure why opam didn't do that by itself, maybe try |
OK, I can reproduce now. |
I think the answer is yes:
|
User options coq-compile-extra-coqc-arguments and coq-compile-extra-coqdep-arguments are added as list of arguments to invocation of, respetively, coqc and coqdep in addition to the arguments computed, e.g., from _CoqProject. This can be used to work around ProofGeneral#724.
OK, thanks for the quick answer. Do you know if this |
A simple work around is to add this
|
No idea... the diaframe makefile contains a bunch of stuff I can't see through. |
Author here, I have not heard of this |
Yes, it is difficult to find documentation about it, but coq/coq#15220 referenced in |
I suggest to close this issue now in favor of #736, which is more to the point. |
Yes makes sense. Thanks for the investigation! |
User options coq-compile-extra-coqc-arguments and coq-compile-extra-coqdep-arguments are added as list of arguments to invocation of, respetively, coqc and coqdep in addition to the arguments computed, e.g., from _CoqProject. This can be used to work around #724.
To reproduce, try building https://gitlab.mpi-sws.org/iris/diaframe. This needs Coq 8.17 (8.18 does not seem to work for other reasons). The dependencies can be installed as described here; then run
make -jN
andmake testexamples -jN
. Then opensupplements/diaframe_heap_lang_examples/comparison/spin_lock.v
in PG and step to the end of a file.I get an error:
This shouldn't happen, since everything works fine in
make
. If I just disable "Compile Before Require", things also work fine. Opening that utils_ltac2.v file and stepping to the end, everything works fine. So it seems like it's something about "Compile Before Require" building the file in a way that is different both from whatmake
does and what PG does when opening the file directly, and it leads to this error.This is with PG 19ca6e0 built from source. Relevant part of my .emacs:
The text was updated successfully, but these errors were encountered: