Hi, I noticed problems with the Ubuntu release, not to mention the trouble one would have to go through to make this work on Windows. As a result the only simple way to get graph-tool working is on OSX with brew. Which makes it virtually inaccessible for people living in countries with a GDP that doesn't by everyone a shiny MacBook. Furthermore there is currently no way to have it onto a production system except for docker. Which to be fair is my personal concern. Anaconda or just conda, has been around for a while now. In case you don't know it, it's a cross platform package manager. Like apt-get but on linux, osx and windows. It will allow you to even get a compiler inside a virtual environment. Most of the dependencies are already available on conda, therefore it should be rather simple to get graph-tool on there as well. As a added bonus, you can even vendor dependencies (maybe good for boost). There have been already some efforts by people like Alexey Strokach to delivery graph-tool on conda. (https://anaconda.org/ostrokach/graph-tool) It would be great tho, to get some official support. I must admit, I don't have much experience with releasing packages on conda. I still think its worth looking into for a couple of reasons: \- Support for all OS \- Support for multiple python versions (not only the systems default) \- single command install Please let me know what you thing about this idea? I'd be willing to invest some time into that, but only if it is your interest. Cheers, Joe \-- **Johannes Hoppe** Lead Software Engineer [johannes.hoppe@thermondo.de](mailto:johannes.hoppe@thermondo.de) **°Thermondo **- Der Heizungsbauer. **We are hiring: [www.thermondo.de/jobs/](http://www.thermondo.de/jobs/)** [www.thermondo.de](http://www.thermondo.de/) | Thermondo GmbH, Brunnenstr. 153, 10115 Berlin Eingetragen in Berlin unter: HRB 129321 I Steuernummer: 30/557/33244 Geschäftsführer: Florian Tetzlaff, Philipp A. Pausder | USt-IdNr.: DE273951924 [Facebook](https://www.facebook.com/thermondo) | [Google+](https://plus.google.com/+ThermondoDe/posts) | [Twitter](https://twitter.com/thermondo) | [Youtube](https://www.youtube.com/channel/UCaM56yLLGe4y4qohjjKFAYA)
Anaconda's system is mostly (or only?) targeted for python packages. Graph-tool have some non-python dependencies. I wish more time would be spent towards a package repo that's cross platform and not only targeted for a single language. I believe nixpkgs (https://github.com/NixOS/nixpkgs) can be that. Graph-tool have been in there for over a year ( https://github.com/NixOS/nixpkgs/blob/master/pkgs/development/python-modules...). Some people are supporting OS X, and the CI tool, hydra have been set up with both OS X and linux machines. I can only say that graph-tool at the moment works in linux because that's what I use. On Wed, Apr 20, 2016 at 11:57 AM, Johannes Hoppe < johannes.hoppe@thermondo.de> wrote:
Hi,
I noticed problems with the Ubuntu release, not to mention the trouble one would have to go through to make this work on Windows.
As a result the only simple way to get graph-tool working is on OSX with brew. Which makes it virtually inaccessible for people living in countries with a GDP that doesn't by everyone a shiny MacBook. Furthermore there is currently no way to have it onto a production system except for docker. Which to be fair is my personal concern.
Anaconda or just conda, has been around for a while now. In case you don't know it, it's a cross platform package manager. Like apt-get but on linux, osx and windows. It will allow you to even get a compiler inside a virtual environment.
Most of the dependencies are already available on conda, therefore it should be rather simple to get graph-tool on there as well. As a added bonus, you can even vendor dependencies (maybe good for boost).
There have been already some efforts by people like Alexey Strokach to delivery graph-tool on conda. (https://anaconda.org/ostrokach/graph-tool) It would be great tho, to get some official support. I must admit, I don't have much experience with releasing packages on conda.
I still think its worth looking into for a couple of reasons: - Support for all OS - Support for multiple python versions (not only the systems default) - single command install
Please let me know what you thing about this idea? I'd be willing to invest some time into that, but only if it is your interest.
Cheers, Joe
--
*Johannes Hoppe* Lead Software Engineer
johannes.hoppe@thermondo.de
*°Thermondo*- Der Heizungsbauer.
*We are hiring: www.thermondo.de/jobs/ <http://www.thermondo.de/jobs/>*
www.thermondo.de | Thermondo GmbH, Brunnenstr. 153, 10115 Berlin Eingetragen in Berlin unter: HRB 129321 I Steuernummer: 30/557/33244 Geschäftsführer: Florian Tetzlaff, Philipp A. Pausder | USt-IdNr.: DE273951924
Facebook <https://www.facebook.com/thermondo> | Google+ <https://plus.google.com/+ThermondoDe/posts> | Twitter <https://twitter.com/thermondo> | Youtube <https://www.youtube.com/channel/UCaM56yLLGe4y4qohjjKFAYA>
_______________________________________________ graph-tool mailing list graph-tool@skewed.de https://lists.skewed.de/mailman/listinfo/graph-tool
On 20.04.2016 11:57, Johannes Hoppe wrote:
I noticed problems with the Ubuntu release, not to mention the trouble one would have to go through to make this work on Windows.
What Ubuntu problems are you referring to? If this is about the most recent thread on this list about Ubuntu installation, it was about a user who refused to use the precompiled packages available (despite being encouraged to the contrary), and attempted to compile by hand, without fully understanding how to do so (which is fine, this is why we have this list), and then running into memory problems. The installation on Ubuntu and Debian using the available packages is trivial -- far easier than any other OS.
As a result the only simple way to get graph-tool working is on OSX with brew. Which makes it virtually inaccessible for people living in countries with a GDP that doesn't by everyone a shiny MacBook. Furthermore there is currently no way to have it onto a production system except for docker. Which to be fair is my personal concern.
I don't think this is true. The simplest systems to install are Ubuntu/Debian, then other GNU/Linux distros like Arch and Gentoo. MacOS is in fact significantly more annoying, since Macports and Homebrew are inferior package and dependency-tracking systems. I don't own a MacOS system, and I routinely install graph-tool on production HPC systems using Arch and Debian.
Anaconda or just conda, has been around for a while now. In case you don't know it, it's a cross platform package manager. Like apt-get but on linux, osx and windows. It will allow you to even get a compiler inside a virtual environment.
Most of the dependencies are already available on conda, therefore it should be rather simple to get graph-tool on there as well. As a added bonus, you can even vendor dependencies (maybe good for boost).
There have been already some efforts by people like Alexey Strokach to delivery graph-tool on conda. (https://anaconda.org/ostrokach/graph-tool) It would be great tho, to get some official support. I must admit, I don't have much experience with releasing packages on conda.
I still think its worth looking into for a couple of reasons: - Support for all OS - Support for multiple python versions (not only the systems default) - single command install
Please let me know what you thing about this idea? I'd be willing to invest some time into that, but only if it is your interest.
It would be an incredible pain to support anaconda. The points above are valid only for pure-python packages. Anaconda does _not_ solve any of those for modules that need to be compiled. As you know, graph-tool is implemented in C++, and has other C++ dependencies. Therefore, in order to support all OSs and Python versions, a different anaconda package (for graph-tool _and_ its dependencies) would have to be compiled for each combination of OS and Python version! This would be nothing short of a full-scale duplication of the current packaging effort... (There is a reason why Alexey Strokach's packages only work for 64 bit GNU/Linux.) Strictly speaking, it is _possible_, and would be convenient for users in the end (module the usual packaging issues), but it would be an amazing amount of work. In other words, graph-tool is a C++ library with a Python interface. Unfortunately, this means that it requires a C++ packaging solution, not a Python one. GNU/Linux package managements are usually very good at this. MacOS is a pain, but is possible. Windows is a nonstarter. I understand that the biggest problem with graph-tool is that it is difficult to install. It is not, in fact, more difficult to install than other C++ libraries. But since the Python world expects "pip install" to work, people get frustrated. But unless it is possible to do something like "pip install boost cgal cairomm expat sparsehash", this problem remains difficult to solve. Best, Tiago -- Tiago de Paula Peixoto <tiago@skewed.de>
participants (3)
-
Joel Moberg -
Johannes Hoppe -
Tiago de Paula Peixoto