-
Notifications
You must be signed in to change notification settings - Fork 171
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
Can't install gdal into isis3 environment #3570
Comments
Tried a fresh isis3 conda install, and still gdal seems not being installed in the same conda environment (conda install gdal gets suck in a neverending conflict solution tentatives). In #615 @thareUSGS suggested to switch forth and back from isis3 and gdal envs. Is this still the best solution so far? Alessandro |
@afrigeri my solution is to install ISIS with conda, then use a GDAL environment but set the ISIS environment variables manually (use the old install instructions). That seems to work well and I don't have to switch back and forth; all the ISIS tools are available in my GDAL environment. |
Thanks @jessemapel and @foobarbecue! |
Bleh, I added a similar comment to #615, but I can't seem to reopen it (probably for the best). I have written up some instructions for how to accomplish the multiple env solution two different ways (one real easy with conda activate --stack, and the other with writing some stuff in the activate.d and deactivate.d directories). Where should I PR these instructions? On the main README with the Installation stuff? Elsewhere? |
I tried to create a GDAL 3.1.0 environment and see how many ISIS dependencies I can add to it before it breaks. On the Mac I could add all ISIS dependencies except ALE but which I could compile by hand. I tried to compile ISIS too then, but it appears that some work will be needed to bump ISIS to boost 1.72 from 1.68, which would need upgrading from boost::signals to boost::signals2. I don't know how much work that would be. All other dependencies did not change much, with Qt going from 5.9 to 5.12 being one of the more notable ones. Then jpeg went from 9b to 9d, and python from 3.6 to 3.8. On Linux I could fetch all dependencies except xalan-c, but this looks like a small library so maybe something could be done about, even building it as a custom conda package. There is a very good chance I am missing something and that can't be found until ISIS is compiled. For reference, here are the envs I ended up getting. (On Linux there is the extra danger of linking error because of the GCC ABI change in GCC 5, but that was long enough ago that I think any recent dependencies are safely past that). OSX env: channels:
Linux env: channels:
|
Thank you for your contribution! Unfortunately, this issue hasn't received much attention lately, so it is labeled as 'stale.' If no additional action is taken, this issue will be automatically closed in 180 days. |
Here, making it not stale. This is a long-term important issue. |
Still an issue. |
This would be very nice to have. It is error prone to switch between two environments for terminal sessions, and very difficult and slow in a script. |
Thank you for your contribution! Unfortunately, this issue hasn't received much attention lately, so it is labeled as 'stale.' If no additional action is taken, this issue will be automatically closed in 180 days. |
Keeping this alive. Installing GDAL in the ISIS conda env is a very important goal. Especially that GDAL 3 improved when it comes to handling converting between projections and between vertical datums. It is the case for NASA ASP, and may be for ISIS as well, that homegrown solutions were implemented to deal with projections, datums, and large images. Some of those may become obsolete if recent GDAL is used instead. In other words, given the widespread use and good maintenance that GDAL has, having ISIS depend on it and offloading some raster layer, vector layer, and projection processing to it could make ISIS easier to maintain. |
@acpaquette @scsides Has this been completed under the dependency work or are we still having issues here because GEOS work has not been finished? |
I think GDAL provides an API for polygons via OGR, which under the hood uses GEOS. Given that the GEOS API C++ seems unstable, calling it through GDAL and letting GDAL maintain the GEOS interface may avoid future work keeping up with GEOS. My apologies if I got something wrong, I don't know where the status of things is when it comes to this issue. |
It looks that the issue of installing GDAL in the ISIS env is still not solved in ISIS 8.0.0. This ISIS version uses geos 3.9.1, but proj 9.1.0. No version of GDAL available on conda-forge is compatible with these. For proj 9.1.1 need at least geos 3.11.1. I tried to install GDAL in a freshly fetched ISIS 8.0.0 environment, and it got into conflicts, as expected. |
@oleg-alexandrov I can look into getting geos updated. Might be something we can just do but it's likely a little more complicated. |
Looks like bumping geos to 3.11.1 is totally do able! Getting success with just building locally |
This is very encouraging. Thank you for looking into this. |
The very nice thing would be to see if ISIS, geos=3.11.1, proj=9.1.0 and libgdal=3.4.3 can live in the same conda environment. Alternative versions of libgdal that look as if they may work are 3.5.2, 3.5.3, 3.6.0, 3.6.1, 3.6.2, as it appears from doing conda search. Any of this conda work can require a lot of work, so not sure if it is feasible. The nice longer-term thing would be to ship a new ISIS version with GDAL already in. |
I was able to get geos up to 3.11.1 and that natural brought proj up to 9.1.0. I know there are plans to work with gdal in ISIS in the future but nothing concrete yet. We should be able to get a ticked build out the door in the LTS |
This sounds good, thanks. I plan to have an ASP release out in the near future. The plan for now is to use ISIS 8.0.0 and my own custom GDAL build. If ISIS 8.0.1 with the new geos version happens to be out at some point I can likely piggy back on that one and tack onto it a conda-forge GDAL. |
It should still be a 8.0.0 version just a +1 to the build number so 8.0.0_1 rather than 8.0.0_0 |
I'll take it whichever way you make it. :) |
geos has been updated such that it is now possible to install gdal with ISIS. |
Conda fails if requested to install both isis3 and gdal into the same environment.
This was mentioned in closed issues #615 and #648 , but is still a problem, so I thought it would be worth opening a specific issue.
Description
How to reproduce
Create test.yml (on Dec 5 2019) with:
Run
conda env create -f test.yml
expect things to install, instead conda goes into confliction conniptions for hours.
The text was updated successfully, but these errors were encountered: