Skip to content
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

Use toolprefix for archiver ar when building libcompcert.a #380

Closed
wants to merge 1 commit into from

Conversation

MSoegtropIMC
Copy link
Contributor

For compiling a cross CompCert, e.g. a 64 bit CompCert on 32 bit Cygwin, it is sufficient to set the toolprefix option. But trying to build an executable with ccomp fails with an error that libcompcert.a doesn't have an index. Using the toolprefix also for the archiver when building libcompcert.a fixes this issue.

This fix is required to build a working 64 bit CompCert for a 32 bit Windows Coq. Some researchers prefer the 32 bit version of Coq even on 64 bit Windows because it is faster (needs less memory and memoy bandwidth).

Please note that I plan to include this change in the CompCert 3.8 opam packages.

@xavierleroy
Copy link
Contributor

Well spotted, thank you for reporting this issue and for the proposed fix.

I'll fix it slightly differently so that the correct archiver is selected also when the Diab toolchain is used. (The archiver is called dar and has different command-line options than ar...)

Testing is in progress.

@MSoegtropIMC
Copy link
Contributor Author

Perfect, thanks! I hope it is agreeable to include your fix as patch in the CompCert 3.8 opam package. Since this shouldn't change anything on platforms where it does work without this, I would still call it version 3.8.

@xavierleroy
Copy link
Contributor

xavierleroy commented Dec 24, 2020

See commit ca2ebae . You are most welcome to use it as a patch for the CompCert OPAM package.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants