Hi,
I’m installing cadet on Mac with conda-forge. I can see it listed when I do conda list, but when I run the script it keeps getting ModuleNotFoundError.
Hi,
I’m installing cadet on Mac with conda-forge. I can see it listed when I do conda list, but when I run the script it keeps getting ModuleNotFoundError.
Hi,
the conda-forge version of CADET is still compiled for x64 MacOS and not for arm64 MacOS. We’re working on updating it. In the meantime you will need to compile CADET yourself. You can find the documentation for that here. If that throws any errors please let us know so we can update the documentation.
I also use CADET with an arm64 MacOS but I just configure the conda environment so I can use the compiled version by running
conda config --env --set subdir osx-64
after creating my environment. I don’t know if it’s recommended, but it seems to work fine for me. Would anyone know what the disadvantages are to doing it this way?
Thanks for helping! I did the conda config to get it worked too, but when I put it in a docker file where will be expected to do the same thing to install, it gives the error message…
That might hurt performance. I’d be really curious how simulation times differ between running CADET compiled for native arm64 vs running the x64 version through a translation layer. But I don’t have an arm Mac on hand to test.
I tried that and when I did the cmake in the CADET/build folder like the following it gives the error. It seems like the Eigen3 issue but I didn’t find a way to get it work… Thanks for helping!
build % cmake -DCMAKE_INSTALL_PREFIX="/Users/aszduz/CADET/install" ../
-- Get version from git
-- CADET version: 4.4.0
-- Current git HEAD: master SHA1 7635e2f1205102974133e6a64c09e8fd353e1372
CMake Warning (dev) at CMakeLists.txt:182 (include):
Policy CMP0120 is not set: The WriteCompilerDetectionHeader module is
removed. Run "cmake --help-policy CMP0120" for policy details. Use the
cmake_policy command to set the policy and suppress this warning.
This warning is for project developers. Use -Wno-dev to suppress it.
CMake Warning (dev) at /Users/aszduz/miniforge3/lib/python3.12/site-packages/cmake/data/share/cmake-3.30/Modules/WriteCompilerDetectionHeader.cmake:380 (message):
The WriteCompilerDetectionHeader module will be removed by policy CMP0120.
Projects should be ported away from the module, perhaps by bundling a copy
of the generated header or using a third-party alternative.
Call Stack (most recent call first):
CMakeLists.txt:182 (include)
This warning is for project developers. Use -Wno-dev to suppress it.
-- Looking for sgemm
-- Looking for sgemm - not found
-- A library with LAPACK API found.
-- Using int32_t for indices
-- HDF5 C compiler wrapper is unable to compile a minimal HDF5 program.
-- Could NOT find HDF5 (missing: HDF5_LIBRARIES HDF5_INCLUDE_DIRS C) (found version "")
-- Could NOT find SuperLU (missing: SUPERLU_INCLUDE_DIRS)
-- Could NOT find UMFPACK (missing: UMFPACK_INCLUDE_DIRS)
CMake Error at CMakeLists.txt:415 (find_package):
Could not find a package configuration file provided by "Eigen3" (requested
version 3.4) with any of the following names:
Eigen3Config.cmake
eigen3-config.cmake
Add the installation prefix of "Eigen3" to CMAKE_PREFIX_PATH or set
"Eigen3_DIR" to a directory containing one of the above files. If "Eigen3"
provides a separate development package or SDK, be sure it has been
installed.
-- Configuring incomplete, errors occurred!
Hey AsuduZ,
no problem! That’s what the Forum is for: getting CADET to work for everyone
Looking at your error: It’s not just Eigen3, cmake
can’t find any of the dependencies
-- Could NOT find HDF5 (missing: HDF5_LIBRARIES HDF5_INCLUDE_DIRS C) (found version "")
-- Could NOT find SuperLU (missing: SUPERLU_INCLUDE_DIRS)
-- Could NOT find UMFPACK (missing: UMFPACK_INCLUDE_DIRS)
My source-of-truth for “this should work” is our CI/CD pipeline, which automatically builds CADET-Core in an arm64 macOS container and that works, so I think it “should” work.
Let’s check a few previous steps:
brew update > /dev/null || true
brew install cmake
brew install hdf5
brew install tbb
brew install eigen
run and complete without errors?I figured something out, so it will work if I specify the platform to Linux/amd64 in the docker file and then conda-forge will work okay. Not sure if that would hurt performance. I did some testing everything looks good so far. It works on both a native OS with the M1/M3 chip, and the docker container too.
Thank you!