ghidra-builder icon indicating copy to clipboard operation
ghidra-builder copied to clipboard

mxe cross-compiler support

Open kassane opened this issue 5 years ago • 7 comments

It would be interesting to be able to build for more than one system. Do you think it could work?

kassane avatar Jul 18 '19 13:07 kassane

For OSX maybe, I thought about it and want to add this feature soon.

dukebarman avatar Jul 29 '19 09:07 dukebarman

@dukebarman How do you plan to attack this problem? I just generated a GHidra Linux build today:

BUILD SUCCESSFUL in 5m 8s
371 actionable tasks: 371 executed
+ cp build/dist/ghidra_9.1_DEV_20190911_linux64.zip /files/out
+ unlink /files/ghidra.bin

But I would love to have the OSX target generated as well from a beefy multi-core linux machine. I personally don't know about dockerized cross-compilers for OSX unfortunately:

https://github.com/dockcross/dockcross

Any ideas other than compiling it natively under OSX? I just have a MacBook 13 and it takes hours to compile GHidra here :/

brainstorm avatar Sep 11 '19 07:09 brainstorm

I'm perhaps wrongly assuming that there are some native (C++) components (have not looked closely at the source tree nor build process yet)... if it's 100% java, forget what I said ;)

brainstorm avatar Sep 11 '19 09:09 brainstorm

Yeap, you're right. You can use this docker's build for macOS or Windows but only java without native components: decompiler, demangler, etc.

dukebarman avatar Sep 16 '19 14:09 dukebarman

I've been thinking about this and I guess that the only viable option would be to just write a .travis.yml (or any other suitable free CI platform that supports multiple targets) instead of the docker container, IMHO.

brainstorm avatar Sep 18 '19 21:09 brainstorm

And they seem to be fixing that actually:

https://github.com/NationalSecurityAgency/ghidra/commit/c97da2691113ca7c6395e195f729f33acdb60af0

... perhaps relatively soon.

brainstorm avatar Sep 18 '19 22:09 brainstorm

It's possible to do with GitHub Actions instead.

XVilka avatar Oct 10 '20 08:10 XVilka