Closed ryodohemmi closed 2 months ago
I was able to install ASP 3.3.0 on Linux while using the mamba installer. (The conda one should work too, I guess, it is just slower.)
I first deleted all local packages to ensure they are fetched fresh, then did:
conda create -n asp conda activate asp mamba install -c nasa-ames-stereo-pipeline -c usgs-astrogeology -c conda-forge stereo-pipeline==3.3.0
See if you have any luck with this. You should install in a completely new environment.
On Wed, Apr 24, 2024 at 6:13 PM Ryodo Hemmi @.***> wrote:
Describe the bug Conda installation ASP 3.3.0 issue using miniforge3 of Ubuntu22.04/WSL2
To Reproduce
wget https://github.com/conda-forge/miniforge/releases/latest/download/Miniforge3-Linux-x86_64.sh sh ./Miniforge3-Linux-x86_64.sh
Do you accept the license terms? [yes|no]# >>> yes# [/home/hemmi/miniforge3] >>> [Enter]# You can undo this by running
conda init --reverse $SHELL
? [yes|no]# [no] >>> yessource ~/.bashrc
conda update -y -n base -c conda-forge conda conda install -y -n base conda-libmamba-solver conda config --set solver libmamba conda config --show solver# solver: libmamba
conda config --env --add channels conda-forge \ --add channels usgs-astrogeology \ --add channels nasa-ames-stereo-pipeline conda config --show channels# channels:# - nasa-ames-stereo-pipeline# - usgs-astrogeology# - conda-forge
conda install -y stereo-pipeline==3.3.0# Channels:# - nasa-ames-stereo-pipeline# - usgs-astrogeology# - conda-forge# Platform: linux-64# Collecting package metadata (repodata.json): done# Solving environment: failed# # LibMambaUnsatisfiableError: Encountered problems while solving:# - package stereo-pipeline-3.3.0-h3fd9d12_0 requires multiview isis8., but none of the providers can be installed# # Could not solve for environment specs# The following package could not be installed# └─ stereo-pipeline 3.3.0 is not installable because it requires# ├─ libglvnd-cos7-x86_64, which requires# │ └─ sysroot_linux-64 2.17. , which can be installed;# └─ multiview isis8. , which requires# └─ mesa-libgl-cos6-x86_64 but there are no viable options# ├─ mesa-libgl-cos6-x86_64 11.0.7 would require# │ └─ sysroot_linux-64 99999999999 , which conflicts with any installable versions previously reported;# └─ mesa-libgl-cos6-x86_64 11.0.7 would require# └─ sysroot_linux-64 2.12. , which conflicts with any installable versions previously reported.
Expected behavior Just a successful installation. Actually istalling ASP3.2.0 is successful on the same environement (miniforge3/Ubuntu22.04/WSL2).
Your Environment (please complete the following information):
- OS: Ubuntu22.04/WSL2/Windows11Pro
- ASP Version: 3.3.0
Additional context The reason I use miniforge3 rather than miniconda3 or anaconda3 is to use libmamba solver and to avoid the use of "defaults" channel, which will lead to the commercial use of Anaconda.
— Reply to this email directly, view it on GitHub https://github.com/NeoGeographyToolkit/StereoPipeline/issues/432, or unsubscribe https://github.com/notifications/unsubscribe-auth/AAKDU3EOOBU2Q7VKA6B2TA3Y7BKFLAVCNFSM6AAAAABGX5LFROVHI2DSMVQWIX3LMV43ASLTON2WKOZSGI3DENBSG4ZTQNI . You are receiving this because you are subscribed to this thread.Message ID: @.***>
Thanks! I also tested mamba install not via libmamba solver but on Miniforge3:
conda deactivate
conda config --set solver classic
conda config --show solver
# solver: classic
conda create -y -n asp
conda activate asp
conda install -y -c conda-forge mamba
mamba install -y -c nasa-ames-stereo-pipeline \
-c usgs-astrogeology \
-c conda-forge \
stereo-pipeline==3.3.0
# Looking for: ['stereo-pipeline==3.3.0']
#
# conda-forge/linux-64 Using cache
# conda-forge/noarch Using cache
# usgs-astrogeology/linux-64 No change
# usgs-astrogeology/noarch No change
# nasa-ames-stereo-pipeline/noarch No change
# nasa-ames-stereo-pipeline/linux-64 No change
#
# Pinned packages:
# - python 3.12.*
#
#
# warning libmamba Added empty dependency for problem type SOLVER_RULE_UPDATE
# Could not solve for environment specs
# The following package could not be installed
# └─ stereo-pipeline 3.3.0 is installable and it requires
# └─ multiview isis8.* , which requires
# └─ python >=3.9,<3.10.0a0 , which can be installed.
So I changed it python=3.9
conda deactivate
conda env remove -y -n asp
conda create -y -n asp python=3.9
conda install -y -c conda-forge mamba
mamba install -y -c nasa-ames-stereo-pipeline \
-c usgs-astrogeology \
-c conda-forge \
stereo-pipeline==3.3.0
# Looking for: ['stereo-pipeline==3.3.0']
#
# conda-forge/linux-64 Using cache
# conda-forge/noarch Using cache
# usgs-astrogeology/linux-64 No change
# nasa-ames-stereo-pipeline/noarch No change
# nasa-ames-stereo-pipeline/linux-64 No change
# usgs-astrogeology/noarch No change
#
# Pinned packages:
# - python 3.9.*
#
#
#
# Could not solve for environment specs
# The following package could not be installed
# └─ stereo-pipeline 3.3.0 is not installable because it requires
# ├─ libglvnd-cos7-x86_64, which requires
# │ └─ sysroot_linux-64 2.17.* , which can be installed;
# └─ multiview isis8.* , which requires
# └─ mesa-libgl-cos6-x86_64 but there are no viable options
# ├─ mesa-libgl-cos6-x86_64 11.0.7 would require
# │ └─ sysroot_linux-64 99999999999 , which conflicts with any installable versions previously reported;
# └─ mesa-libgl-cos6-x86_64 11.0.7 would require
# └─ sysroot_linux-64 2.12.* , which conflicts with any installable versions previously reported.
The same issue remains. I guess Miniforge3 itself seems the cause.
Tough one. Since it works for me and nobody else raised this issue, not sure. You can try the tarball, which is also a lot more recent. See https://stereopipeline.readthedocs.io/en/latest/installation.html.
If you need isis, that can be installed separately.
You can also install with conda, not with mamba. Or you can follow the recipe here: https://stereopipeline.readthedocs.io/en/latest/installation.html#using-a-precise-list-of-packages
Many thanks, Oleg! Finally I found a simpler solution to install ASP3.0.0 together with ISIS8.0.0. No errors occurred even on the environment of Miniforge3/Ubuntu22.04/WSL2. I just followed the instruction with use of yaml.
cd ~
wget https://raw.githubusercontent.com/NeoGeographyToolkit/StereoPipeline/master/conda/asp_3.3.0_linux_env.yaml
conda env create -y -n asp330 -f asp_3.3.0_linux_env.yaml
conda activate asp330
conda env config vars set ISISROOT=$CONDA_PREFIX ISISDATA=~/isisdata
conda activate asp330
which stereo
# /home/hemmi/miniforge3/envs/asp330/bin/stereo
cat $CONDA_PREFIX/version
# 8.0.0 # Public version number
# 2023-08-02 # Release date
# stable # Release stage (alpha, beta, stable)
conda list | grep "usgs"
# bullet 2.86.1 0 usgs-astrogeology
# isis 8.0.0 np125_0 usgs-astrogeology
# jama 125 0 usgs-astrogeology
# kakadu 1 0 usgs-astrogeology
# tnt 126 0 usgs-astrogeology
# usgscsm 1.7.0 h00ab1b0_1 conda-forge
conda list | grep "nasa-ames-stereo-pipeline"
# fgr isis7 h3fd9d12_0 nasa-ames-stereo-pipeline
# geoid 1.0_isis7 1 nasa-ames-stereo-pipeline
# htdp 1.0_isis7 1 nasa-ames-stereo-pipeline
# laszip 2.1.0_isis7 h3fd9d12_1 nasa-ames-stereo-pipeline
# libelas isis7 h3fd9d12_0 nasa-ames-stereo-pipeline
# libgdal 3.5_isis8 h3fd9d12_0 nasa-ames-stereo-pipeline
# liblas 1.8.2_isis8 h3fd9d12_0 nasa-ames-stereo-pipeline
# libnabo isis7 h3fd9d12_0 nasa-ames-stereo-pipeline
# libpointmatcher isis7 h2bc3f7f_0 nasa-ames-stereo-pipeline
# multiview isis8 py39h3fd9d12_0 nasa-ames-stereo-pipeline
# s2p-subset isis7 h3fd9d12_0 nasa-ames-stereo-pipeline
# stereo-pipeline 3.3.0 h3fd9d12_0 nasa-ames-stereo-pipeline
# visionworkbench 3.3.0 h3fd9d12_0 nasa-ames-stereo-pipeline
That it worked with precisely spelled out package versions and did not work with conda's own lookup, may mean that there is some issue with the dependency solver in conda. Not sure why mine works.
Anyhow, glad it works.
Note that ASP 3.3.0 is more than half a year old by now. The latest doc refers to the latest version. One should choose the "stable" doc version on readthedocs, though the stereo-only logic did not change much.
Yes. I also confirmed that I can make the conda environment of the ASP latest build successfully on Miniforge3.
cd ~
wget https://raw.githubusercontent.com/NeoGeographyToolkit/StereoPipeline/master/conda/asp_deps_3.4.0_alpha_linux_env.yaml
conda env create -y -n asp -f asp_deps_3.4.0_alpha_linux_env.yaml
conda activate asp
mkdir ~/isisdata
conda env config vars set ISISROOT=$CONDA_PREFIX ISISDATA=~/isisdata
conda activate asp
conda install -y rclone -c conda-forge
downloadIsisData base $ISISDATA
wget https://github.com/NeoGeographyToolkit/StereoPipeline/releases/download/2024-04-24-daily-build/StereoPipeline-3.4.0-alpha-2024-04-24-x86_64-Linux.tar.bz2
mkdir asp
tar xvf StereoPipeline-3.4.0-alpha-2024-04-24-x86_64-Linux.tar.bz2 \
-C asp --strip-components 1
echo '#!/bin/bash' > $CONDA_PREFIX/etc/conda/activate.d/asp-activate.sh
echo 'export PATH="/home/hemmi/asp/bin:${PATH}"' >> $CONDA_PREFIX/etc/conda/activate.d/asp-activate.sh
chmod +x $CONDA_PREFIX/etc/conda/activate.d/asp-activate.sh
echo '#!/bin/bash' > $CONDA_PREFIX/etc/conda/deactivate.d/asp-deactivate.sh
echo "export PATH=$(echo $PATH | tr ':' '\n' | grep -v '/home/hemmi/asp/bin' | tr '\n' ':')" >> $CONDA_PREFIX/etc/conda/deactivate.d/asp-deactivate.sh
echo 'export PATH=${PATH%:}' >> $CONDA_PREFIX/etc/conda/deactivate.d/asp-deactivate.sh
chmod +x $CONDA_PREFIX/etc/conda/deactivate.d/asp-deactivate.sh
conda deactivate
conda activate asp
stereo --version
# NASA Ames Stereo Pipeline 3.4.0-alpha
# Build ID: 6e08c416
# Build date: 2024-04-24
#
# Built against:
# NASA Vision Workbench 3.4.0-alpha
# Build ID: cae738a1
# USGS ISIS 7.2.0
# Boost C++ Libraries 1.82.0
# GDAL 3.8.0 | 20231106
conda list | grep "usgs"
# bullet 2.86.1 0 usgs-astrogeology
# isis 8.0.0 np125_0 usgs-astrogeology
# jama 125 0 usgs-astrogeology
# kakadu 1 0 usgs-astrogeology
# tnt 126 0 usgs-astrogeology
# usgscsm 1.7.0 h00ab1b0_1 conda-forge
conda list | grep "nasa-ames-stereo-pipeline"
# fgr isis7 h3fd9d12_0 nasa-ames-stereo-pipeline
# geoid 1.0_isis7 1 nasa-ames-stereo-pipeline
# htdp 1.0_isis7 1 nasa-ames-stereo-pipeline
# libelas isis7 h3fd9d12_0 nasa-ames-stereo-pipeline
# libgdal 3.5_isis8 h3fd9d12_0 nasa-ames-stereo-pipeline
# libnabo isis7 h3fd9d12_0 nasa-ames-stereo-pipeline
# libpointmatcher isis7 h2bc3f7f_0 nasa-ames-stereo-pipeline
# multiview isis8 py39h3fd9d12_0 nasa-ames-stereo-pipeline
# pdal 2.4.2_asp3.3.0 py39h3fd9d12_0 nasa-ames-stereo-pipeline
# s2p-subset isis7 h3fd9d12_0 nasa-ames-stereo-pipeline
Describe the bug Conda ASP 3.3.0 installation issue using miniforge3 of Ubuntu22.04/WSL2
To Reproduce
Expected behavior Just a successful installation. Actually istalling ASP3.2.0 with
conda install -y stereo-pipeline==3.2.0
is successful on the same environement (miniforge3/Ubuntu22.04/WSL2).Your Environment (please complete the following information):
Additional context The reason I use miniforge3 rather than miniconda3 or anaconda3 is to use libmamba solver and to avoid the use of "defaults" channel, which may lead to the commercial use of Anaconda in the future.