CentOS8 へ Universal Ctags をインストールする
CentOS8 へ Universal Ctags をインストール手順をメモしておきます。 CentOS8 のリポジトリでは Universal Ctags が提供されていませんので以下、いずれかの方法でインストールします。
- Snap でインストールする
- ソースコードからインストールする
Snap でインストールする
Snap でインストールします。
結論
| dnf -y install epel-release
dnf -y install snapd
systemctl enable --now snapd.socket
ln -s /var/lib/snapd/snap /snap
snap install universal-ctags
|
Step.1
Sanp は EPEL リポジトリで提供されている為、最初に EPEL を追加します。
| dnf -y install epel-release
|
Step.2
現時点ではバージョン 2.43.3 でした。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15 | # dnf info snapd
Last metadata expiration check: 0:01:31 ago on Wed Apr 29 11:55:03 2020.
Available Packages
Name : snapd
Version : 2.43.3
Release : 1.el8
Architecture : x86_64
Size : 18 M
Source : snapd-2.43.3-1.el8.src.rpm
Repository : epel
Summary : A transactional software package manager
URL : https://github.com/snapcore/snapd
License : GPLv3
Description : Snappy is a modern, cross-distribution, transactional package manager
: designed for working with self-contained, immutable packages.
|
Snap をインストールします。
Step.3
Snap を利用する為にソケットを開始しておきます。
| systemctl enable --now snapd.socket
|
ここまでの手順で、以下のように表示されるようになりました。
| # snap --version
snap 2.43.3-1.el8
snapd 2.43.3-1.el8
series 16
centos 8
kernel 4.18.0-147.8.1.el8_1.x86_64
|
Step.4
Classic Snap 用に /snap
ディレクトリを作成しておきます。
| ln -s /var/lib/snapd/snap /snap
|
Step.5
(Ubuntu とは異なり) CentOS の場合は Snap 関連の設定を /etc/profile.d/snapd.sh
で実施しているようです。 初期状態でこのファイルは以下の内容でした。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21 | # shellcheck shell=sh
# Expand $PATH to include the directory where snappy applications go.
snap_bin_path="/var/lib/snapd/snap/bin"
if [ -n "${PATH##*${snap_bin_path}}" -a -n "${PATH##*${snap_bin_path}:*}" ]; then
export PATH=$PATH:${snap_bin_path}
fi
# Ensure base distro defaults xdg path are set if nothing filed up some
# defaults yet.
if [ -z "$XDG_DATA_DIRS" ]; then
export XDG_DATA_DIRS="/usr/local/share:/usr/share"
fi
# Desktop files (used by desktop environments within both X11 and Wayland) are
# looked for in XDG_DATA_DIRS; make sure it includes the relevant directory for
# snappy applications' desktop files.
snap_xdg_path="/var/lib/snapd/desktop"
if [ -n "${XDG_DATA_DIRS##*${snap_xdg_path}}" -a -n "${XDG_DATA_DIRS##*${snap_xdg_path}:*}" ]; then
export XDG_DATA_DIRS="${XDG_DATA_DIRS}:${snap_xdg_path}"
fi
|
この内容を反映させる為、シェルへログインし直します (ログアウト&ログインします)。
Step.6
Universal Ctags をインストールします。
| snap install universal-ctags
|
これで Universal Ctags を利用出来るようになりました。
| # ctags --version
Universal Ctags 0.0.0(e0a976d7), Copyright (C) 2015 Universal Ctags Team
Universal Ctags is derived from Exuberant Ctags.
Exuberant Ctags 5.8, Copyright (C) 1996-2009 Darren Hiebert
Compiled: Dec 16 2019, 17:58:44
URL: https://ctags.io/
Optional compiled features: +wildcards, +regex, +iconv, +option-directory, +xpath, +json, +interactive, +yaml, +packcc
|
ソースコードからインストールする
ソースコードからインストールしていきます。
結論
| dnf -y install autoconf automake libtool
git clone --depth 1 https://github.com/universal-ctags/ctags.git
cd ctags
./autogen.sh
./configure
make
sudo make install
|
Step.1
依存しているパッケージをインストールしておきます。
| dnf -y install autoconf automake libtool
|
Step.2
GtiHub から Shallow Clone し、インストールします。
| git clone --depth 1 https://github.com/universal-ctags/ctags.git
cd ctags
./autogen.sh
./configure
make
sudo make install
|
インストールされました。
| # ctags --version
Universal Ctags 0.0.0(f66acf7), Copyright (C) 2015 Universal Ctags Team
Universal Ctags is derived from Exuberant Ctags.
Exuberant Ctags 5.8, Copyright (C) 1996-2009 Darren Hiebert
Compiled: Apr 29 2020, 11:40:43
URL: https://ctags.io/
Optional compiled features: +wildcards, +regex, +iconv, +option-directory, +packcc
|