How to enforce a CLion to use a specific Conda Env?

Is there any news about how to make CLion use a specific Conda Env?

This is the CMakeLists.txt I have.

cmake_minimum_required(VERSION 3.20)
set(PYTHON_ENV "/home/USERNAME/anaconda3/envs/Cosmos" CACHE PATH "/home/USERNAME/anaconda3/envs/Cosmos")
#find_package(Python REQUIRED COMPONENTS Interpreter Development NumPy)
set(CMAKE_PYTHON_COMPILER "/home/USERNAME/anaconda3/envs/Cosmos/bin/python")
set(PYTHON_EXECUTABLE "/home/USERNAME/anaconda3/envs/Cosmos/bin/python")
set(PYTHON_INCLUDE_DIR "/home/USERNAME/anaconda3/envs/Cosmos/include/python3.9/include")
set(CMAKE_PYTHON_COMPILER_ENV_VAR "Cosmos")
#list(APPEND CMAKE_MODULE_PATH ${CMAKE_CURRENT_SOURCE_DIR}/cmake)
list(APPEND CMAKE_MODULE_PATH " /home/USERNAME/.local/share/JetBrains/Toolbox/apps/CLion/ch-0/231.8109.222/bin/cmake/linux/x64/share/cmake-3.25/Modules/")
find_package(Python REQUIRED COMPONENTS Interpreter Development NumPy)
project(GalaxyFormationCUDALib LANGUAGES CUDA CXX)
#set(CMAKE_POSITION_INDEPENDENT_CODE ON)
list(APPEND CMAKE_MODULE_PATH ${CMAKE_CURRENT_SOURCE_DIR}/cmake_modules)


find_package(Python REQUIRED COMPONENTS Interpreter Development NumPy)


execute_process(COMMAND ${PYTHON_EXECUTABLE} --version OUTPUT_VARIABLE PYTHON_VERSION)
message("Python version: ${PYTHON_VERSION}")
message("Python environment features: ${CMAKE_PYTHON_COMPILE_FEATURES}")
message("Python environment: ${PYTHON_ENV}")

# Set minimum compute capability
set(CMAKE_CUDA_ARCHITECTURES "50")
set(NPY_NO_DEPRECATED_API ON)

# Set C++ standard
set(CMAKE_CXX_STANDARD 11)
set(CMAKE_CUDA_STANDARD 14)

# Set include directories
include_directories(/home/USERNAME/CLionProjects/GalaxyFormationCUDALib/include)
include_directories(/home/USERNAME/anaconda3/envs/Cosmos/include/python3.9/)
include_directories(/home/USERNAME/anaconda3/envs/Cosmos/lib/python3.9/site-packages/numpy/core/include/)
include_directories(/opt/nvidia/hpc_sdk/Linux_x86_64/23.3/cuda/12.0/targets/x86_64-linux/include)

# Set library name
set(LIBRARY_NAME "GalaxyFormationCUDA")

# Add library source files
set(SOURCE_FILES src/GalaxyFormationCUDA.cu include/GalaxyFormationCUDA.h)

# Add library targets
add_library(${LIBRARY_NAME}_static STATIC ${SOURCE_FILES})
# Set the name of the output libraries
set_target_properties(${LIBRARY_NAME}_static PROPERTIES PREFIX "" OUTPUT_NAME ${LIBRARY_NAME})
#add_library(${LIBRARY_NAME}_shared SHARED ${SOURCE_FILES})
#set_target_properties(${LIBRARY_NAME}_shared PROPERTIES PREFIX "" OUTPUT_NAME ${LIBRARY_NAME})

set(CMAKE_INSTALL_PREFIX "/usr/local/")

 

 

I make a mess trying to force CMake to look at the right environment.  By the way, Cosmos is the environment already set up in my CLion Python settings.

I am trying to use CLion to have an efficient way to crank up useful C++ /Python modules for use in Jupyter Notebooks.  It would help if the module created were consistent with a given conda environment.

Any advice or CMakeLists.txt example would be helpful.

Thanks

3

请先登录再写评论。