Skip to content
New issue

Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? # to your account

Kremlin cross-compiles #76

Open
wants to merge 1 commit into
base: master
Choose a base branch
from

Conversation

wintersteiger
Copy link

Not intended to be merged as is, just a demo to show that it doesn't take all that much. I just ran CROSS=yes make and, on a proper Ubuntu machine (no WSL) it gets me very swiftly to

...:~/kremlin$ file _build/src/Kremlin.native 
_build/src/Kremlin.native: PE32+ executable (console) x86-64, for MS Windows

Those ppx options are a bit of a mess, I'm sure there's a nicer way to get those options through (e.g. in _tags, but I don't know how to get $(OCAMLLIB) into _tags).

@msprotz
Copy link
Contributor

msprotz commented Jan 30, 2018

I thought ppx_deriving was supposed to be able to deal with these cases. Perhaps worth pinging the ppx_deriving folks to see if they're missing support for cross-compilation? In any case, good news!

@wintersteiger
Copy link
Author

That would be nice if they could support cross-compilation out of the box! I must admit, I don't fully understand how it's supposed to work and I may have set up the ppx_deriving package(s) the wrong way. If those object files are not needed at link time, the *-windows package could just be a link to the build system's (non-windows) packages. I think that's pretty much the effect of those options I set.

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

Successfully merging this pull request may close these issues.

2 participants