っで、まずは下準備
[root@openpbs ~]# cat /etc/redhat-release
Rocky Linux release 8.10 (Green Obsidian)
[root@openpbs ~]#
[root@openpbs ~]# mkdir -p ~/rpmbuild/{SOURCES,SPECS}
https://github.com/openpbs/openpbsから最新コードが入手可能です.
最新の「a84a5315fb860037bd9d0b380396e2010511237c」はubuntu24向けでRHEL9でコンパイルするとエラーがでる
tagのv23.06.06には無害なのですが「pbs_mom;TPP;pbs_mom(Thread 0);tpp_mbox_read;Unable to read from msg box」がずっと継続的に流れる..
2024.10時点では「20e112a2c16968eec72c4b16a9dbd397ad7601fb」がよさげ
[root@openpbs ~]# git clone https://github.com/openpbs/openpbs
[root@openpbs ~]# cd openpbs/
[root@openpbs openpbs]# git tag | tail -n 3
v20.0.1
v22.05.11
v23.06.06
[root@openpbs openpbs]# git checkout -b v23.06.06 refs/tags/v23.06.06
Switched to a new branch 'v23.06.06'
[root@openpbs openpbs]# git branch
master
* v23.06.06
[root@openpbs openpbs]# less openpbs.spec
:
%if !%{defined pbs_version}
%define pbs_version 23.06.06
:
[root@openpbs openpbs]#
ジョブ名に「/」があるとエラーになるので、回避策を入れます. これがないとrelionでOpenPBSが使えない...
|
[root@openpbs openpbs]# cd ..
[root@openpbs ~]# tar --exclude-vcs --transform 's/openpbs/openpbs-23.06.06/' -cvzf ~/rpmbuild/SOURCES/openpbs-23.06.06.tar.gz openpbs
これで「~/rpmbuild/SOURCES」にソースtarballが用意される(~/rpmbuild/SOURCES/openpbs-23.06.06.tar.gz)
あとはopenpbsのspecファイルを「~/rpmbuild/SPECS/」内に配置する
幸い openpbs の git にはopenpbs.specファイルが用意されているのでこれをそのまま採用します
[root@openpbs ~]# cp openpbs/openpbs.spec ~/rpmbuild/SPECS/
そのままでもいいのだが、一部specファイルを修正します。
OpenPBSの既定の場所を変更してます. 全くの好みです. Torqueがこの場所を使っていたので
|
その前にOpenPBSのbiuldに必要なパッケージをdnfでインストール
OSインストール時に「Develpment Tools」を入れていれば下記でOKみたい
[root@openpbs ~]# dnf --enablerepo=devel install expat-devel hwloc-devel libX11-devel libXt-devel libedit-devel libical-devel libpq-devel ncurses-devel perl postgresql-contrib python3-devel swig tcl-devel tk-devel libtool-ltdl-devel
そうしてrpmbuildを実行します
[root@openpbs ~]# rpmbuild -ba rpmbuild/SPECS/openpbs.spec
完成品がこれ
[root@openpbs ~]# ls -l rpmbuild/RPMS/x86_64/
-rw-r--r--. 1 root root 1762096 Oct 9 19:16 openpbs-client-23.06.06-0.x86_64.rpm
-rw-r--r--. 1 root root 1790716 Oct 9 19:16 openpbs-client-debuginfo-23.06.06-0.x86_64.rpm
-rw-r--r--. 1 root root 584400 Oct 9 19:16 openpbs-debuginfo-23.06.06-0.x86_64.rpm
-rw-r--r--. 1 root root 1849008 Oct 9 19:16 openpbs-debugsource-23.06.06-0.x86_64.rpm
-rw-r--r--. 1 root root 531156 Oct 9 19:16 openpbs-devel-23.06.06-0.x86_64.rpm
-rw-r--r--. 1 root root 2081620 Oct 9 19:16 openpbs-execution-23.06.06-0.x86_64.rpm
-rw-r--r--. 1 root root 2429128 Oct 9 19:16 openpbs-execution-debuginfo-23.06.06-0.x86_64.rpm
-rw-r--r--. 1 root root 2981852 Oct 9 19:16 openpbs-server-23.06.06-0.x86_64.rpm
-rw-r--r--. 1 root root 6960124 Oct 9 19:16 openpbs-server-debuginfo-23.06.06-0.x86_64.rpm
[root@openpbs ~]#
品目が分かりやすくていい
[root@rockylinux ~]# cat /etc/redhat-release
Rocky Linux release 8.8 (Green Obsidian)
[root@rockylinux ~]# mkdir -p ~/rpmbuild/{SOURCES,SPECS}
[root@rockylinux ~]# git clone https://github.com/openpbs/openpbs
[root@rockylinux ~]# cd openpbs/
[root@rockylinux openpbs]# git checkout -b v14.1.2 refs/tags/v14.1.2
[root@rockylinux openpbs]# git branch
master
* v14.1.2
[root@rockylinux openpbs]#
[root@rockylinux ~]# dnf --enablerepo=devel install expat-devel hwloc-devel libX11-devel libXt-devel libedit-devel libical-devel \
libpq-devel ncurses-devel perl postgresql-contrib python3-devel swig tcl-devel tk-devel libtool-ltdl-devel \
python2-devel
[root@rockylinux ~]# alternatives --config python
There are 3 programs which provide 'python'.
Selection Command
-----------------------------------------------
*+ 1 /usr/libexec/no-python
2 /usr/bin/python3
3 /usr/bin/python2
Enter to keep the current selection[+], or type selection number: 3
[root@rockylinux ~]#
[root@rockylinux ~]# python -V
Python 2.7.18
[root@rockylinux ~]#
|
[root@rockylinux openpbs]# cd ..
[root@rockylinux ~]# tar --exclude-vcs --transform 's/openpbs/pbspro-14.1.2/' -cvzf ~/rpmbuild/SOURCES/pbspro-14.1.2.tar.gz openpbs
[root@rockylinux ~]# cp openpbs/pbspro.spec ~/rpmbuild/SPECS/
[root@rockylinux ~]# vi rpmbuild/SPECS/pbspro.spec
|
|