Scheduled Downtime
On Tuesday 24 October 2023 @ 5pm MT the forums will be in read only mode in preparation for the downtime. On Wednesday 25 October 2023 @ 5am MT, this website will be down for maintenance and expected to return online later in the morning.
Normal Operations
The forums are back online with normal operations. If you notice any issues or errors related to the forums, please reach out to help@ucar.edu

CESM3.0 beta02 write permission for CDEPS/fox

Hi,
We're trying to port CESM 3.0 beta02 to our machine with largely success.
We share the ported installation in project instructor's folder to other users like before, so they can call the create_newcase in it and then ./xmlchange the settings on their own.
However, they always fail at case.build step.
The error message looks like:
(cdeps.bld.log)
[11%] Creatind directories for 'for-populate'
[22%] Performing download step (git clone) for 'fox-populate'
Error removing directory "(cesm installation dir)/components/cdeps/fox".
CMake Error at (scratch dir)/bld/intel/intelmpi/nodebug/nothreads/CDEPS/_deps/fox-subbuild/fox-populate-prefix/tmp/fox-populate-gitclone.cmake:30 (message):
Failed to remove directory:
'(cesm installation dir)/components/cdeps/fox'
It's obvious that the error was caused by users cannot write into the ported installation folder.
Is it possible to remove necessity of the git clone step? Maybe some XML switch or something?
Thanks!

Mike Chen
CODA labs, Institute of Oceanography
National Taiwan University
 
Solution
I believe you can fix this by applying the changes from Fox download revert by jedwards4b · Pull Request #297 · ESCOMP/CDEPS

Namely, remove the following block of code from components/cdeps/CMakeLists.txt:

Code:
   FetchContent_Declare(fox
     GIT_REPOSITORY https://github.com/ESMCI/fox.git
     GIT_TAG 4.1.2.1
     SOURCE_DIR ${FOX_ROOT}
     BINARY_DIR ${FOX_ROOT}/..
   )
   FetchContent_GetProperties(fox)
   if(NOT fox_POPULATED)
     FetchContent_Populate(fox)
     message(STATUS "FoX source dir: ${fox_SOURCE_DIR}")
     message(STATUS "FoX binary dir: ${fox_BINARY_DIR}")
   endif()

mlevy

Michael Levy
CSEG and Liaisons
Staff member
I believe you can fix this by applying the changes from Fox download revert by jedwards4b · Pull Request #297 · ESCOMP/CDEPS

Namely, remove the following block of code from components/cdeps/CMakeLists.txt:

Code:
   FetchContent_Declare(fox
     GIT_REPOSITORY https://github.com/ESMCI/fox.git
     GIT_TAG 4.1.2.1
     SOURCE_DIR ${FOX_ROOT}
     BINARY_DIR ${FOX_ROOT}/..
   )
   FetchContent_GetProperties(fox)
   if(NOT fox_POPULATED)
     FetchContent_Populate(fox)
     message(STATUS "FoX source dir: ${fox_SOURCE_DIR}")
     message(STATUS "FoX binary dir: ${fox_BINARY_DIR}")
   endif()
 
Vote Upvote 0 Downvote
Solution
I believe you can fix this by applying the changes from Fox download revert by jedwards4b · Pull Request #297 · ESCOMP/CDEPS

Namely, remove the following block of code from components/cdeps/CMakeLists.txt:

Code:
   FetchContent_Declare(fox
     GIT_REPOSITORY https://github.com/ESMCI/fox.git
     GIT_TAG 4.1.2.1
     SOURCE_DIR ${FOX_ROOT}
     BINARY_DIR ${FOX_ROOT}/..
   )
   FetchContent_GetProperties(fox)
   if(NOT fox_POPULATED)
     FetchContent_Populate(fox)
     message(STATUS "FoX source dir: ${fox_SOURCE_DIR}")
     message(STATUS "FoX binary dir: ${fox_BINARY_DIR}")
   endif()
Hi,
I've tested the change and it works like a charm.
Thanks!

Mike
 
Vote Upvote 0 Downvote
Top