TomographicImaging / CIL

A versatile python framework for tomographic imaging
https://tomographicimaging.github.io/CIL/
Apache License 2.0
90 stars 40 forks source link

MacOSX build: Fails to find ipp although it's installed #1361

Closed paskino closed 1 year ago

paskino commented 1 year ago

Although during a conda build the required ipp, ipp-devel, ipp-include are installed, on MacOSX they are not found by the compiler, hence the fast filtering is not built.

Then one unit test fails

Traceback (most recent call last):
  File "/Users/edo/miniconda3/conda-bld/cil_1664357545725/test_tmp/Wrappers/Python/test/test_reconstructors.py", line 467, in test_set_backend
    reconstructor = FBP(ad, backend='astra')
  File "/Users/edo/miniconda3/conda-bld/cil_1664357545725/_test_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_pla/lib/python3.8/site-packages/cil/recon/FBP.py", line 415, in __init__
    super().__init__(input, image_geometry, filter, backend)
  File "/Users/edo/miniconda3/conda-bld/cil_1664357545725/_test_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_pla/lib/python3.8/site-packages/cil/recon/FBP.py", line 75, in __init__
    raise ImportError("IPP libraries not found. Cannot use CIL FBP")
ImportError: IPP libraries not found. Cannot use CIL FBP

Should it fail or just be skipped?

paskino commented 1 year ago

OK, I skipped it but now comes another error

BUILD START: ['cil-22.0.0-np121py310_0.tar.bz2']
Collecting package metadata (repodata.json): ...working... done
Solving environment: ...working... done
Collecting package metadata (repodata.json): ...working... done
Solving environment: ...working... failed
Traceback (most recent call last):
  File "/Users/edo/miniconda3/bin/conda-build", line 11, in <module>
    sys.exit(main())
  File "/Users/edo/miniconda3/lib/python3.9/site-packages/conda_build/cli/main_build.py", line 496, in main
    execute(sys.argv[1:])
  File "/Users/edo/miniconda3/lib/python3.9/site-packages/conda_build/cli/main_build.py", line 485, in execute
    outputs = api.build(args.recipe, post=args.post, test_run_post=args.test_run_post,
  File "/Users/edo/miniconda3/lib/python3.9/site-packages/conda_build/api.py", line 186, in build
    return build_tree(
  File "/Users/edo/miniconda3/lib/python3.9/site-packages/conda_build/build.py", line 3091, in build_tree
    packages_from_this = build(metadata, stats,
  File "/Users/edo/miniconda3/lib/python3.9/site-packages/conda_build/build.py", line 2131, in build
    create_build_envs(top_level_pkg, notest)
  File "/Users/edo/miniconda3/lib/python3.9/site-packages/conda_build/build.py", line 1988, in create_build_envs
    environ.get_install_actions(m.config.test_prefix,
  File "/Users/edo/miniconda3/lib/python3.9/site-packages/conda_build/environ.py", line 799, in get_install_actions
    actions = install_actions(prefix, index, specs, force=True)
  File "/Users/edo/miniconda3/lib/python3.9/site-packages/conda/common/io.py", line 86, in decorated
    return f(*args, **kwds)
  File "/Users/edo/miniconda3/lib/python3.9/site-packages/conda/plan.py", line 476, in install_actions
    txn = solver.solve_for_transaction(prune=prune, ignore_pinned=not pinned)
  File "/Users/edo/miniconda3/lib/python3.9/site-packages/conda/core/solve.py", line 156, in solve_for_transaction
    unlink_precs, link_precs = self.solve_for_diff(update_modifier, deps_modifier,
  File "/Users/edo/miniconda3/lib/python3.9/site-packages/conda/core/solve.py", line 199, in solve_for_diff
    final_precs = self.solve_final_state(update_modifier, deps_modifier, prune, ignore_pinned,
  File "/Users/edo/miniconda3/lib/python3.9/site-packages/conda/core/solve.py", line 317, in solve_final_state
    ssc = self._add_specs(ssc)
  File "/Users/edo/miniconda3/lib/python3.9/site-packages/conda/core/solve.py", line 711, in _add_specs
    conflicts = ssc.r.get_conflicting_specs(tuple(MatchSpec(_)
  File "/Users/edo/miniconda3/lib/python3.9/site-packages/conda/resolve.py", line 1110, in get_conflicting_specs
    C = r2.gen_clauses()
  File "/Users/edo/miniconda3/lib/python3.9/site-packages/conda/common/io.py", line 86, in decorated
    return f(*args, **kwds)
  File "/Users/edo/miniconda3/lib/python3.9/site-packages/conda/resolve.py", line 913, in gen_clauses
    for ms in self.ms_depends(prec):
  File "/Users/edo/miniconda3/lib/python3.9/site-packages/conda/resolve.py", line 797, in ms_depends
    deps = [MatchSpec(d) for d in prec.combined_depends]
  File "/Users/edo/miniconda3/lib/python3.9/site-packages/conda/models/records.py", line 341, in combined_depends
    result = {ms.name: ms for ms in MatchSpec.merge(self.depends)}
  File "/Users/edo/miniconda3/lib/python3.9/site-packages/conda/models/match_spec.py", line 480, in merge
    reduce(lambda x, y: x._merge(y, union), group) if len(group) > 1 else group[0]
  File "/Users/edo/miniconda3/lib/python3.9/site-packages/conda/models/match_spec.py", line 480, in <lambda>
    reduce(lambda x, y: x._merge(y, union), group) if len(group) > 1 else group[0]
  File "/Users/edo/miniconda3/lib/python3.9/site-packages/conda/models/match_spec.py", line 511, in _merge
    final = this_component.merge(that_component)
  File "/Users/edo/miniconda3/lib/python3.9/site-packages/conda/models/match_spec.py", line 762, in merge
    raise ValueError("Incompatible component merge:\n  - %r\n  - %r"
ValueError: Incompatible component merge:
  - 'mpi_openmpi_*'
  - 'mpi_openmpi_tempest*'