Skip to content

cctbx draft#18569

Closed
ThomasHoffmann77 wants to merge 6 commits intoeasybuilders:developfrom
ThomasHoffmann77:20230816170527_new_pr_cctbx20236
Closed

cctbx draft#18569
ThomasHoffmann77 wants to merge 6 commits intoeasybuilders:developfrom
ThomasHoffmann77:20230816170527_new_pr_cctbx20236

Conversation

@ThomasHoffmann77
Copy link
Copy Markdown
Contributor

@ThomasHoffmann77 ThomasHoffmann77 commented Aug 16, 2023

@ThomasHoffmann77 ThomasHoffmann77 marked this pull request as draft August 16, 2023 15:06
fix boostpython patch to use EBROOTBOOSTPYTHONMINNUMPY
fix postinstall mv probe and reduce libs
postinstall: add missing comma
@ThomasHoffmann77
Copy link
Copy Markdown
Contributor Author

remark: I did not test, whether configopts "--enable_cuda" actually has an effect

@boegel boegel added the new label Aug 16, 2023
@boegel boegel added this to the 4.x milestone Aug 16, 2023
@boegel
Copy link
Copy Markdown
Member

boegel commented Aug 16, 2023

My main comment after a quick scroll through this: yikes... 🙈

I guess the only sensible thing to do is to implement a custom easyblock for cctbx, since it's way complexer than I thought it was based on the work I did for #18506 ... Would you agree @ThomasHoffmann77?

Maybe the main difference with my approach in #18506 is that I was focusing on cctbx-base (which is what's necessary for AlphaPulldown), while this seems to be a full-blown cctbx.

@ThomasHoffmann77 Do you know how cctbx-base and cctbx the way you install it here relate?

@boegel boegel changed the title cctbx draft; see #18506 cctbx draft Aug 16, 2023
@ThomasHoffmann77
Copy link
Copy Markdown
Contributor Author

My main comment after a quick scroll through this: yikes... 🙈

I guess the only sensible thing to do is to implement a custom easyblock for cctbx, since it's way complexer than I thought it was based on the work I did for #18506 ... Would you agree @ThomasHoffmann77?

Maybe the main difference with my approach in #18506 is that I was focusing on cctbx-base (which is what's necessary for AlphaPulldown), while this seems to be a full-blown cctbx.

@ThomasHoffmann77 Do you know how cctbx-base and cctbx the way you install it here relate?

I fully agree that we would need a custom easyblock - maybe one for the libtbx build system handling the paths set in libtbx_env. This could then be used for any of the cctbx "modules" and for the entire phenix package.
In order to get alphapulldown running, it should be sufficient to only build libtbx, sctbx,and iotbx and their dependencies.
I'll have a closer look on friday.

@ThomasHoffmann77
Copy link
Copy Markdown
Contributor Author

ThomasHoffmann77 commented Aug 18, 2023

@boegel
sources downloaded by bootstrap.py on the fly for "--builder cctbx":

python ./libtbx/auto_build/bootstrap.py --download-only --builder cctbx|grep "git clone":
===== Running in modules: git clone --recursive https://github.com/cctbx/boost.git boost --progress --verbose
===== Running in modules: git clone --recursive https://github.com/yayahjb/cbflib.git cbflib --progress --verbose
===== Running in modules: git clone --recursive https://github.com/cctbx/cctbx_project.git cctbx_project --progress --verbose
===== Running in modules: git clone --recursive https://github.com/cctbx/dxtbx.git dxtbx --progress --verbose
===== Running in modules: git clone --recursive https://github.com/cctbx/gui_resources.git gui_resources --progress --verbose
===== Running in modules: git clone --recursive https://github.com/cctbx/ccp4io.git ccp4io --progress --verbose
===== Running in modules: git clone --recursive https://github.com/cctbx/ccp4io_adaptbx.git ccp4io_adaptbx --progress --verbose
===== Running in modules: git clone --recursive https://github.com/cctbx/annlib.git annlib --progress --verbose
===== Running in modules: git clone --recursive https://github.com/cctbx/annlib_adaptbx.git annlib_adaptbx --progress --verbose
===== Running in modules: git clone --recursive https://github.com/cctbx/tntbx.git tntbx --progress --verbose
===== Running in modules: git clone --recursive https://github.com/cctbx/clipper.git clipper --progress --verbose
===== Running in modules: git clone --recursive -b 3.4.0 https://gitlab.com/libeigen/eigen.git eigen --progress --verbose
===== Running in modules: git clone --recursive -b v3.7.2 https://github.com/rlabduke/reduce.git reduce --progress --verbose

In the easyconfig I added the sources for probe and molprobity in order to get libtbx.run_tests_parallel module=mmtbx running as sanity check. I'd assume this can be omitted, if the package is configured without the "module" mmtbx.

If I run configure.py only for cctbx, scitbx, and iotbx required by AlphaPulldown (see: alphapulldown/analysis_pipeline/af2_3dmol.py), I get:

Top-down list of all modules involved:
  iotbx           "/tmp/th/eb_cctbx/REPO/znver2/software/cctbx/2023.6-foss-2022a-CUDA-11.7.0/modules/cctbx_project/iotbx"
  cbflib+adaptbx  "/tmp/th/eb_cctbx/REPO/znver2/software/cctbx/2023.6-foss-2022a-CUDA-11.7.0/modules/cbflib"
                  "/tmp/th/eb_cctbx/REPO/znver2/software/cctbx/2023.6-foss-2022a-CUDA-11.7.0/modules/cctbx_project/cbflib_adaptbx"
  ccp4io+adaptbx  "/tmp/th/eb_cctbx/REPO/znver2/software/cctbx/2023.6-foss-2022a-CUDA-11.7.0/modules/ccp4io"
                  "/tmp/th/eb_cctbx/REPO/znver2/software/cctbx/2023.6-foss-2022a-CUDA-11.7.0/modules/ccp4io_adaptbx"
  smtbx           "/tmp/th/eb_cctbx/REPO/znver2/software/cctbx/2023.6-foss-2022a-CUDA-11.7.0/modules/cctbx_project/smtbx"
  ucif            "/tmp/th/eb_cctbx/REPO/znver2/software/cctbx/2023.6-foss-2022a-CUDA-11.7.0/modules/cctbx_project/ucif"
  cctbx           "/tmp/th/eb_cctbx/REPO/znver2/software/cctbx/2023.6-foss-2022a-CUDA-11.7.0/modules/cctbx_project/cctbx"
  scitbx          "/tmp/th/eb_cctbx/REPO/znver2/software/cctbx/2023.6-foss-2022a-CUDA-11.7.0/modules/cctbx_project/scitbx"
  fable           "/tmp/th/eb_cctbx/REPO/znver2/software/cctbx/2023.6-foss-2022a-CUDA-11.7.0/modules/cctbx_project/fable"
  cma_es          "/tmp/th/eb_cctbx/REPO/znver2/software/cctbx/2023.6-foss-2022a-CUDA-11.7.0/modules/cctbx_project/cma_es"
  omptbx          "/tmp/th/eb_cctbx/REPO/znver2/software/cctbx/2023.6-foss-2022a-CUDA-11.7.0/modules/cctbx_project/omptbx"
  boost+adaptbx   "/tmp/th/eb_cctbx/REPO/znver2/software/cctbx/2023.6-foss-2022a-CUDA-11.7.0/modules/cctbx_project/boost"
                  "/tmp/th/eb_cctbx/REPO/znver2/software/cctbx/2023.6-foss-2022a-CUDA-11.7.0/modules/cctbx_project/boost_adaptbx"
  tbxx            "/tmp/th/eb_cctbx/REPO/znver2/software/cctbx/2023.6-foss-2022a-CUDA-11.7.0/modules/cctbx_project/tbxx"
  chiltbx         "/tmp/th/eb_cctbx/REPO/znver2/software/cctbx/2023.6-foss-2022a-CUDA-11.7.0/modules/cctbx_project/chiltbx"
  libtbx          "/tmp/th/eb_cctbx/REPO/znver2/software/cctbx/2023.6-foss-2022a-CUDA-11.7.0/modules/cctbx_project/libtbx"

@boegel
Copy link
Copy Markdown
Member

boegel commented Aug 14, 2024

@ThomasHoffmann77 Is it worth pursuing this, since it's no longer a required dependency for AlphaPulldown (see #21179)?

@ThomasHoffmann77
Copy link
Copy Markdown
Contributor Author

@ThomasHoffmann77 Is it worth pursuing this, since it's no longer a required dependency for AlphaPulldown (see #21179)?

It's required for phenix

@Thyre Thyre added the 2022a label Aug 18, 2025
@boegel
Copy link
Copy Markdown
Member

boegel commented Oct 13, 2025

No longer relevant since 2022a toolchains are deprecated since foss/2025b was defined, see also https://docs.easybuild.io/policies/toolchains/, so closing...

@boegel boegel closed this Oct 13, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants