fusion-energy / inertial_fusion_openmc_dagmc_paramak_example

A minimal example implementation of an open source method of making DAGMC geometry with Paramak and simulating tritium production with OpenMC
MIT License
6 stars 2 forks source link

Issue with Installing Paramak on linux-aarch64 via Conda #12

Open ansonyuu opened 11 months ago

ansonyuu commented 11 months ago

Hi there! Thanks for creating such a wonderful resource. Am running into some problems as I try to install paramak package via conda on a linux-aarch64 system. Despite the package being listed in the fusion-energy channel on Anaconda.org, conda can'r find it for installation.

Environment:

Operating System: Ubuntu Linux 22.04 Architecture: ARM64 (aarch64) Conda version: 23.10.00 Python version: 3.11.5

Steps to Reproduce: Run the command conda install -c fusion-energy paramak Encounter the error showing PackagesNotFoundError

The installation fails with the following error:

failed
Traceback (most recent call last):
  File "/home/parallels/miniconda3/lib/python3.11/site-packages/conda/exception_handler.py", line 17, in __call__
    return func(*args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^
  File "/home/parallels/miniconda3/lib/python3.11/site-packages/conda/cli/main.py", line 83, in main_subshell
    exit_code = do_call(args, parser)
                ^^^^^^^^^^^^^^^^^^^^^
  File "/home/parallels/miniconda3/lib/python3.11/site-packages/conda/cli/conda_argparse.py", line 164, in do_call
    result = getattr(module, func_name)(args, parser)
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/parallels/miniconda3/lib/python3.11/site-packages/conda/notices/core.py", line 124, in wrapper
    return func(*args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^
  File "/home/parallels/miniconda3/lib/python3.11/site-packages/conda/cli/main_install.py", line 26, in execute
    install(args, parser, "install")
  File "/home/parallels/miniconda3/lib/python3.11/site-packages/conda/cli/install.py", line 374, in install
    raise e  # see note in next except block
    ^^^^^^^
  File "/home/parallels/miniconda3/lib/python3.11/site-packages/conda/cli/install.py", line 360, in install
    unlink_link_transaction = solver.solve_for_transaction(
                              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/parallels/miniconda3/lib/python3.11/site-packages/conda/core/solve.py", line 139, in solve_for_transaction
    unlink_precs, link_precs = self.solve_for_diff(
                               ^^^^^^^^^^^^^^^^^^^^
  File "/home/parallels/miniconda3/lib/python3.11/site-packages/conda/core/solve.py", line 200, in solve_for_diff
    final_precs = self.solve_final_state(
                  ^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/parallels/miniconda3/lib/python3.11/site-packages/conda_libmamba_solver/solver.py", line 221, in solve_final_state
    out_state = self._solving_loop(in_state, out_state, index)
                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/parallels/miniconda3/lib/python3.11/site-packages/conda_libmamba_solver/solver.py", line 308, in _solving_loop
    solved = self._solve_attempt(in_state, out_state, index)
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/parallels/miniconda3/lib/python3.11/site-packages/conda_libmamba_solver/solver.py", line 395, in _solve_attempt
    new_conflicts = self._maybe_raise_for_problems(
                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/parallels/miniconda3/lib/python3.11/site-packages/conda_libmamba_solver/solver.py", line 700, in _maybe_raise_for_problems
    raise exc
conda.exceptions.PackagesNotFoundError: The following packages are not available from current channels:

  - paramak

Current channels:

  - https://conda.anaconda.org/fusion-energy
  - defaults

To search for alternate channels that may provide the conda package you're
looking for, navigate to

    https://anaconda.org

and use the search bar at the top of the page.

Would love some guidance on this! Thanks so much

shimwell commented 11 months ago

I think this is a common occurrence with conda packages as many are made for specific architectures. ARM64 needs special handling in the conda package construction process. For paramak to work on ARM64 it would also need the dependencies to work on ARM64. Perhaps try using the conda+pip install instructions and see if the dependencies work on your architecture.

https://paramak.readthedocs.io/en/main/install.html#install-conda-pip