py-orbit icon indicating copy to clipboard operation
py-orbit copied to clipboard

Change installation process to Autoconf and friends

Open azukov opened this issue 7 years ago • 3 comments

Make sure it works with Intel compilers (see #18 )

azukov avatar Jan 31 '18 18:01 azukov

I would recommend to consider cmake as an alternative to autoconf if you want to refurbish the build environment. I have had positive experience going down that route in the past.

Eothred avatar Oct 29 '18 14:10 Eothred

@Eothred you are right. But we are thinking about moving to Python 3 and having other architectural changes. So I guess we will end up with some setup.py compatible with pip style...

azukov avatar Oct 30 '18 14:10 azukov

I played around a bit with cmake + scikit-build to generate a setup.py type installation last week. I thought it might be useful for our jupyter server to have this as a proper python module.

It largely works, except for loading the mpi parts. That's the only remaining thing I seem to need a separate binary for. I also didn't figure out how to get scikit to set correct runtime paths yet, so LD_LIBRARY_PATH needs to be set manually in the current setup, which I find quite stupid.

The wrapper scripts seem to be a bit entangled. I thought it would make sense to build a library with all the non wrapper_*cc files, and then compile those into each of the modules. That failed pretty early on though because they seem to use code from other wrapper sources. Someone who knows the code better than me would probably have an easier time at organising this.

If you want to have a look then you may look at my cmake-setuppy branch. You can run python setup.py build/install as for other python stuff. Requires scikit-build to be installed on your system. I wont send any merge requests since it is not really working properly yet and isn't complete, but feel free to take on any parts of it of course.

By the way, I'm really impressed by the amount of work that must have gone into writing these wrappers! Really hard core coding going on there.

Eothred avatar Jan 27 '19 13:01 Eothred