rockylinux9で coot-1.x をソースから作成してみる

[root@rockylinux9 ~]# cat /etc/redhat-release
Rocky Linux release 9.7 (Blue Onyx)
 
[root@rockylinux9 ~]# uname -r
5.14.0-611.5.1.el9_7.x86_64
 
[root@rockylinux9 ~]# cat /proc/driver/nvidia/version
NVRM version: NVIDIA UNIX Open Kernel Module for x86_64  580.126.09  Release Build  (dvs-builder@U22-I3-AM02-24-3)  Wed Jan  7 22:51:36 UTC 2026
GCC version:  gcc version 11.5.0 20240719 (Red Hat 11.5.0-11) (GCC)
 
[root@rockylinux9 ~]# nvidia-smi -L
GPU 0: NVIDIA RTX A2000 (UUID: GPU-23cc3ee7-31d3-a068-2f61-5aa00052d084)
 
[root@rockylinux9 ~]# dnf groupinstall "Development Tools"
[root@rockylinux9 ~]# dnf install epel-release
[root@rockylinux9 ~]# dnf config-manager --enable crb
[root@rockylinux9 ~]# dnf install --enablerepo=devel cmake texinfo gtk4-devel gfortran libepoxy-devel swig blas-devel lapack-devel re2c libpsl-devel readline-devel libjpeg-devel psl gobject-introspection-devel python3-gobject-devel
 
[root@rockylinux9 ~]# mkdir script ; cd script
 
[root@rockylinux9 script]#
[root@rockylinux9 script]# wget https://raw.githubusercontent.com/pemsley/coot/main/build-it-3-3
 
[root@rockylinux9 script]# grep ^script_version build-it-3-3
script_version=6.25
[root@rockylinux9 script]#
 
(greg-tests向け)
[root@rockylinux9 script]# ( mkdir ~/data && cd ~/data && wget http://www2.mrc-lmb.cam.ac.uk/Personal/pemsley/coot/data/greg-data.tar.gz && tar xf greg-data.tar.gz && rm -f greg-data.tar.gz )
 
[root@rockylinux9 script]# vi ./build-it-3-3

「build-it-3-3」の中で修正を行います.
変更項目
 dist_ver, coot_versionが提示できるようにしてみた
 python3.14ではNumPy1.26.4でエラーになるので3.11へ。
 pygobjectが3.52.3ではgirepository-2.0を要求するがrockylinux9に未対応で1.72系まで。なので3.46.0へ
 greg-testsができるように

--- build-it-3-3.orig   2026-02-16 02:56:39.536391956 +0900
+++ build-it-3-3        2026-02-16 03:02:10.698472219 +0900
@@ -1052,7 +1052,7 @@
          if test -e /etc/os-release ; then
              # 20240914 strip quote marks also now
              dist_name=$(grep ^ID= /etc/os-release | sed -e 's/ID=//' -e 's/"//g')
-             dist_ver=$(grep ^VERSION_ID /etc/os-release | sed -e 's/VERSION_ID=//')
+             dist_ver=$(grep ^VERSION_ID /etc/os-release | sed -e 's/VERSION_ID=//' -e 's/"//g')
          else
              for i in fedora-release redhat-release redhat-release-workstation centos-release sl-release openSUSE-release ; do
                  rpm -q --qf '%{name}' ${i}
@@ -2136,12 +2136,12 @@
 #
 # python_version is the filename of the python executable.
 #
-python_version=python3.14
-pver=3.14.2
-python_version_extension=3.14 # extract this
+python_version=python3.11
+pver=3.11.11
+python_version_extension=3.11 # extract this
 # I think that for python to be compatible with Blender, we don't want the debug version
 # python_abiflags=d # because we use --with-pydebug on the command line for Python configure
-python_version_squish=314
+python_version_squish=311
 
 # for Blender 4 in 2024, we want Python 3.10.13, so uncomment the 3 lines below:
 # for Blender 4.1 in June 2025, we want Python 3.11.x
@@ -4085,7 +4085,7 @@
               if test "$dist_name" = almalinux ; then
                   echo don.t mess with LDFLAGS on almalinux
               else
-                 if test "$dist_name" = arch ; then
+                 if test "$dist_name" = arch || test "$dist_name" = rocky ; then
                      echo don.t mess with LDFLAGS here on arch
                   else
                       export LDFLAGS="-L$install_top_dir/lib -lintl"
@@ -4396,10 +4396,12 @@
 pygobject_major_minor_version=3.36
 pygobject_major_minor_version=3.42
 pygobject_major_minor_version=3.52 # 20250621-PE
+pygobject_major_minor_version=3.46
 pygobject_version=3.29.1
 pygobject_version=3.30.5
 pygobject_version=3.42.1
 pygobject_version=3.52.3
+pygobject_version=3.46.0
 # pygobject_version=3.42.2 add me to the extras place!
 # https://download.gnome.org/sources/pygobject/3.42/pygobject-3.42.2.tar.xz
 # https://download.gnome.org/sources/pygobject/3.52/pygobject-3.52.3.tar.gz
@@ -4488,7 +4490,7 @@
     echo PKG_CONFIG_PATH $PKG_CONFIG_PATH
     which pip3
     pip3 install wheel
-    pip3 install pygobject
+    pip3 install pygobject==3.46.0
     ) > $HOSTLOGDIR/34-pip-wheel-pygobject.txt 2>&1
     echo BUILDING: "done" install pygobject with pip3 >&2
 fi
@@ -4984,6 +4986,8 @@
    LD_LIBRARY_PATH=$save_ld_library_path
    cd $save_dir
    ) > $HOSTLOGDIR/50-clone-autogen.txt 2>&1
+   coot_version=$(xmllint --xpath "/component/releases/release/@version" ./coot.appdata.xml | sed -e "s/ version=\"\([^\"]*\)\"/\1/g" | sort| tail -1)
+   echo  coot version is $coot_version
    echo  BUILDING: done checkout
 fi
 
@@ -5055,7 +5059,7 @@
 # 20220707-PE does this improve thie linking (get pass the problem with g_module_open_full)?
 # We get checking dynamic linker characteristics... awk: symbol lookup error: /home/pemsley/autobuild/Linux-emsley-vm-fedora-2.lmb.internal-gtk4/lib/libreadline.so.8: undefined symbol: UP
 # on fedora if LD_LIBRARY_PATH is set
-if [ "$dist_name" = fedora ] ;  then
+if [ "$dist_name" = fedora -o "$dist_name" = rocky ] ;  then
     :
 else
     if [ "$dist_name" = arch ] ;  then
@@ -5285,8 +5289,8 @@
                  tar xzf $holding_tar_file
                  echo cding into `basename $slim_dir`  from `pwd`
                   cd `basename $slim_dir`
-                 echo ln -s ../../$coot_dir_name/greg-tests .
-                 ln -s ../../$coot_dir_name/greg-tests .
+                  echo mkdir greg-tests
+                  mkdir greg-tests
                   echo second coot test...
                   echo running second test... >&2
                  test_coot bin/coot > $LOGS/test-2.log 2>&1

これでコンパイルします.

[root@rockylinux9 script]# run_tests=true AUTOBUILD_INSTALLED=/apps/coot bash ./build-it-3-3
 :
(ケーキと紅茶)
 :
[root@rockylinux9 script]#

コンパイルが完了すると/appsに「coot」と「coot-Linux-x86_64-rocky-9.6-gtk4」が現れる

[root@rockylinux9 ~]# ls -l /apps/
total 0
drwxr-xr-x. 9 root root 96 Feb 16 04:08 coot
drwxr-xr-x. 7 root root 68 Feb 16 04:10 coot-Linux-x86_64-rocky-9.7-gtk4
[root@rockylinux9 ~]#

「/apps/coot」はbuild時に用意されてモノで、必要なファイルらを移した「/apps/coot-Linux-x86_64-rocky-9.7-gtk4」を使うものかと思うのだが、
必要なファイルが適切に移っていない模様.

取り敢えずは「/apps/cooot」を使ってみる
っでEnvironment-modulesは「/apps/modulefiles/coot」を下記のようにします.

#%Module1.0
set          root /apps/coot
prepend-path PATH            $root/bin
prepend-path LD_LIBRARY_PATH $root/lib

これをloadして「coot」と実行すると
2026y02m16d_104323232.png

そして本体の画面が表示され、そのヘルプは下記になります
cootのソースコードをgitで取ってきて最新版なので「1.1.x-pre」になっているのかも.
2026y02m16d_104602382.png

リモートでX11越しに使うのは微妙でしょうか。コンソールで使った方が早いですね.

ubuntu24.04で

root@ubuntu24:~# apt install build-essential git cmake m4 libtool swig flex bison gfortran autoconf automake libssl-dev libblas-dev \
   liblapack-dev libncurses5-dev libjpeg-dev libgtk-4-dev libpsl-dev pkg-config  gobject-introspection python-gi-dev libgirepository-1.0-dev
 
root@ubuntu24:~#
root@ubuntu24:~# mkdir script
root@ubuntu24:~# cd script/
root@ubuntu24:~/script#
root@ubuntu24:~/script# wget https://raw.githubusercontent.com/pemsley/coot/main/build-it-3-3
 
root@ubuntu24:~/script# grep ^script_version build-it-3-3
script_version=6.25
 
root@ubuntu24:~/script#

ubuntu側はスクリプトの修正なしで大丈夫のようです
っで構築

root@ubuntu24:~/script# AUTOBUILD_INSTALLED=/apps/coot bash ./build-it-3-3
 
root@ubuntu24:~/script# cd /apps/
root@ubuntu24:/apps# ls -l
 
drwxr-xr-x 8 root root 4096 Feb 16 18:54 coot
drwxr-xr-x 7 root root 4096 Feb 16 18:55 coot-Linux-x86_64-ubuntu-24.04.4-gtk4
 
root@ubuntu24:/apps#

インストール先を「/apps/coot」として作成しますが、その後に「/apps/coot」から必要な分をコピーした「/apps/coot-Linux-x86_64-ubuntu-24.04.4-gtk4」が用意されます.
なので「/apps/coot」を削除してもいいかなと思うのだが、どうも必要なファイルが全部「/apps/coot-Linux-x86_64-ubuntu-24.04.4-gtk4」に移っていない模様
いずれ修正されるかもしれないけどね。

なのでenvironment-modulesは、

「/apps/modulefiles/coot」

#%Module1.0
#set          root /apps/coot-Linux-x86_64-ubuntu-24.04.4-gtk4
set          root /apps/coot
prepend-path PATH            $root/bin
prepend-path LD_LIBRARY_PATH $root/lib

とします。

最新の60件
2026-05-09 2026-05-08 2026-05-06 2026-05-05 2026-05-04 2026-05-03 2026-05-02 2026-04-30 2026-04-29 2026-04-28 2026-04-27 2026-04-25 2026-04-24 2026-04-22 2026-04-21 2026-04-12 2026-04-08 2026-04-06 2026-04-05 2026-04-02 2026-03-26 2026-03-23 2026-03-21 2026-03-19 2026-03-15 2026-03-14 2026-03-13 2026-03-07 2026-03-06 2026-03-04 2026-03-02 2026-02-26 2026-02-24 2026-02-21 2026-02-18 2026-02-17 2026-02-16
  • coot/source/v1
2026-02-11 2026-02-09

edit


トップ   編集 差分 履歴 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2026-02-16 (月) 19:28:31