また、自作かよ。(CGI 編)-03

By | 2020年7月2日

Apache の準備ができたので、CGI プログラムを

編集して、FTP 転送しようとしたら、あれっ?

FTP が繋がりません。

vsftpdがインストールされていることを確認したり、

vsftpd.conf の中身や、firewall なども確認しましたが

問題ありません。こんなときに頼りになるのは、

「centos7 vsftpd 接続できない」に大ハマリ

》mkdir /home/ユーザー名
》で、home ディレクトリの下に、FTPユーザー名の
》ディレクトリを作ったら、ハイ!できました。

が、答えでした。そういえば、最初に、/dev/mapper/cl-home を

削除したのでした。そのときに、/home/FTPユーザー名の

ディレクトリも削除されますよね。

CGI プログラムを転送してパーミッションを変更し、

実行してみると、

Service Unavailable

このエラーの対処方法は、これまでに解決済み。

# chown Apache のユーザー名. /var/run/httpd/

で、ちゃんと繋がるようになります。なぜ、そうなるのかは

わかっていませんけど。

ここまでの作業が済んだ時点で、HDD を丸ごとコピーで

バックアップして、前回失敗した ImageMagick の

インストールから再開です。ここを参考にしました。

最初に開発ツールをインストールします。

# dnf groupinstall ‘Development Tools’

CentOS-8 – AppStream 4.8 kB/s | 4.3 kB 00:00
CentOS-8 – Base 4.7 kB/s | 3.9 kB 00:00
CentOS-8 – Extras 2.2 kB/s | 1.5 kB 00:00
依存関係が解決しました。
================================================================================
パッケージ Arch バージョン リポジトリー サイズ
================================================================================
アップグレード:
cpp x86_64 8.3.1-5.el8.0.2 AppStream 10 M
gcc x86_64 8.3.1-5.el8.0.2 AppStream 23 M
gcc-c++ x86_64 8.3.1-5.el8.0.2 AppStream 12 M
gcc-gdb-plugin x86_64 8.3.1-5.el8.0.2 AppStream 117 k
  :
  :
 [省略]
  :
  :
python3-rpm x86_64 4.14.2-37.el8 BaseOS 156 k
rpm x86_64 4.14.2-37.el8 BaseOS 540 k
rpm-build-libs x86_64 4.14.2-37.el8 BaseOS 154 k
rpm-libs x86_64 4.14.2-37.el8 BaseOS 337 k
rpm-plugin-selinux x86_64 4.14.2-37.el8 BaseOS 75 k
rpm-plugin-systemd-inhibit x86_64 4.14.2-37.el8 BaseOS 76 k
rpm-sign x86_64 4.14.2-37.el8 BaseOS 78 k
strace x86_64 4.24-9.el8 BaseOS 972 k
依存関係のインストール:
zstd x86_64 1.4.2-2.el8 AppStream 385 k
libzstd x86_64 1.4.2-2.el8 BaseOS 260 k
グループのインストール:
Development Tools

トランザクションの概要
================================================================================
インストール 2 パッケージ
アップグレード 38 パッケージ

ダウンロードサイズの合計: 94 M
これでよろしいですか? [y/N]:

y と答えると、

パッケージのダウンロード:
(1/40): libzstd-1.4.2-2.el8.x86_64.rpm 176 kB/s | 260 kB 00:01 A
(2/40): zstd-1.4.2-2.el8.x86_64.rpm 123 kB/s | 385 kB 00:03
[MIRROR] gcc-8.3.1-5.el8.0.2.x86_64.rpm: Curl error (18): Transferred a partial file for http://ftp.tsukuba.wide.ad.jp/Linux/centos/8.2.2004/AppStream/x86_64/os/Packages/gcc-8.3.1-5.el8.0.2.x86_64.rpm [transfer closed with 20442493 bytes remaining to read]
[MIRROR] cpp-8.3.1-5.el8.0.2.x86_64.rpm: Curl error (18): Transferred a partial file for http://ftp.tsukuba.wide.ad.jp/Linux/centos/8.2.2004/AppStream/x86_64/os/Packages/cpp-8.3.1-5.el8.0.2.x86_64.rpm [transfer closed with 8270820 bytes remaining to read]
(3/40): gcc-c++-8.3.1-5.el8.0.2.x86_64.rpm 127 kB/s | 12 MB 01:38
(4/40): gcc-gdb-plugin-8.3.1-5.el8.0.2.x86_64.r 166 kB/s | 117 kB 00:00
(5/40): gdb-8.2-11.el8.x86_64.rpm 118 kB/s | 297 kB 00:02
(6/40): cpp-8.3.1-5.el8.0.2.x86_64.rpm 98 kB/s | 10 MB 01:48
(7/40): git-2.18.4-2.el8_2.x86_64.rpm 135 kB/s | 186 kB 00:01
  :
  :
 [省略]
  :
  :
rpm-libs-4.14.2-37.el8.x86_64
rpm-plugin-selinux-4.14.2-37.el8.x86_64
rpm-plugin-systemd-inhibit-4.14.2-37.el8.x86_64
rpm-sign-4.14.2-37.el8.x86_64
strace-4.24-9.el8.x86_64

インストール済み:
zstd-1.4.2-2.el8.x86_64 libzstd-1.4.2-2.el8.x86_64

完了しました!

インストール完了。

続いて、ソースをダウンロード

# wget https://www.imagemagick.org/download

/ImageMagick.tar.gz
–2020-07-02 21:52:29– https://www.imagemagick.org/download/ImageMagick.tar.gz
www.imagemagick.org (www.imagemagick.org) をDNSに問いあわせています… 198.72.81.86
www.imagemagick.org (www.imagemagick.org)|198.72.81.86|:443 に接続しています… 接続しました。
HTTP による接続要求を送信しました、応答を待っています… 200 OK
長さ: 14044214 (13M) [application/x-gzip]
`ImageMagick.tar.gz’ に保存中

ImageMagick.tar.gz 100%[===================>] 13.39M 85.5KB/s 時間 2m 57s

2020-07-02 21:55:27 (77.4 KB/s) – `ImageMagick.tar.gz’ へ保存完了 [14044214/14044214]

解凍します。

# tar xvfz ImageMagick.tar.gz

ImageMagick-7.0.10-22/
ImageMagick-7.0.10-22/Install-unix.txt
ImageMagick-7.0.10-22/ChangeLog
ImageMagick-7.0.10-22/winpath.sh
ImageMagick-7.0.10-22/index.html
ImageMagick-7.0.10-22/NOTICE
ImageMagick-7.0.10-22/scripts/
ImageMagick-7.0.10-22/scripts/xsnap
ImageMagick-7.0.10-22/scripts/txt2html
  :
  :
 [省略]
  :
  :
ImageMagick-7.0.10-22/www/assets/magick.js
ImageMagick-7.0.10-22/www/assets/.magick-template.css.swp
ImageMagick-7.0.10-22/www/convert.html
ImageMagick-7.0.10-22/www/changelog.html
ImageMagick-7.0.10-22/www/command-line-processing.html
ImageMagick-7.0.10-22/www/cipher.html
ImageMagick-7.0.10-22/www/mogrify.html
ImageMagick-7.0.10-22/www/gradient.html
ImageMagick-7.0.10-22/www/install-source.html
ImageMagick-7.0.10-22/version.sh
ImageMagick-7.0.10-22/aclocal.m4
ImageMagick-7.0.10-22/Install-mac.txt
ImageMagick-7.0.10-22/README.txt

次は、コンパイル

[*****Server ~]# cd ImageMagick-7.0.10-22
[*****Server ImageMagick-7.0.10-22]# ./configure

checking build system type… x86_64-pc-linux-gnu
checking host system type… x86_64-pc-linux-gnu
checking target system type… x86_64-pc-linux-gnu
checking for a BSD-compatible install… /usr/bin/install -c
checking whether build environment is sane… yes
checking for a thread-safe mkdir -p… /usr/bin/mkdir -p
checking for gawk… gawk
  :
  :
 [省略]
  :
  :
CC = gcc
CFLAGS = -fopenmp -Wall -g -O2 -mtune=core2 -fexceptions -pthread -DMAGICKCORE_HDRI_ENABLE=1 -DMAGICKCORE_QUANTUM_DEPTH=16
CPPFLAGS = -DMAGICKCORE_HDRI_ENABLE=1 -DMAGICKCORE_QUANTUM_DEPTH=16
PCFLAGS =
DEFS = -DHAVE_CONFIG_H
LDFLAGS =
LIBS = -lm -lpthread
CXX = g++
CXXFLAGS = -g -O2 -pthread
FEATURES = DPC HDRI Cipher OpenMP
DELEGATES = mpeg
===============================================

make して、

# make

make all-am
make[1]: ディレクトリ ‘/root/ImageMagick-7.0.10-22’ に入ります
CC utilities/magick.o
CC MagickCore/libMagickCore_7_Q16HDRI_la-accelerate.lo
CC MagickCore/libMagickCore_7_Q16HDRI_la-animate.lo
CC MagickCore/libMagickCore_7_Q16HDRI_la-annotate.lo
CC MagickCore/libMagickCore_7_Q16HDRI_la-artifact.lo
CC MagickCore/libMagickCore_7_Q16HDRI_la-attribute.lo
  :
  :
 [省略]
  :
  :
CXX Magick++/lib/libMagick___7_Q16HDRI_la-Pixels.lo
CXX Magick++/lib/libMagick___7_Q16HDRI_la-ResourceLimits.lo
CXX Magick++/lib/libMagick___7_Q16HDRI_la-SecurityPolicy.lo
CXX Magick++/lib/libMagick___7_Q16HDRI_la-Statistic.lo
CXX Magick++/lib/libMagick___7_Q16HDRI_la-STL.lo
CXX Magick++/lib/libMagick___7_Q16HDRI_la-Thread.lo
CXX Magick++/lib/libMagick___7_Q16HDRI_la-TypeMetric.lo
CXXLD Magick++/lib/libMagick++-7.Q16HDRI.la
cp -f MagickCore/ImageMagick.pc MagickCore/ImageMagick-7.Q16HDRI.pc
cp -f MagickCore/MagickCore.pc MagickCore/MagickCore-7.Q16HDRI.pc
cp -f MagickWand/MagickWand.pc MagickWand/MagickWand-7.Q16HDRI.pc
cp -f Magick++/lib/Magick++.pc Magick++/lib/Magick++-7.Q16HDRI.pc
make[1]: ディレクトリ ‘/root/ImageMagick-7.0.10-22’ から出ます

make install

# make install

make install-am
make[1]: ディレクトリ ‘/root/ImageMagick-7.0.10-22’ に入ります
make[2]: ディレクトリ ‘/root/ImageMagick-7.0.10-22’ に入ります
/usr/bin/mkdir -p ‘/usr/local/lib’
/bin/sh ./libtool –mode=install /usr/bin/install -c MagickCore/libMagickCore-7.Q16HDRI.la MagickWand/libMagickWand-7.Q16HDRI.la Magick++/lib/libMagick++-7.Q16HDRI.la ‘/usr/local/lib’
libtool: install: /usr/bin/install -c
  :
  :
 [省略]
  :
  :
utilities/stream.1 ‘/usr/local/share/man/man1’
/usr/bin/mkdir -p ‘/usr/local/lib/pkgconfig’
/usr/bin/install -c -m 644 MagickCore/ImageMagick.pc MagickCore/MagickCore.pc MagickCore/ImageMagick-7.Q16HDRI.pc MagickCore/MagickCore-7.Q16HDRI.pc MagickWand/MagickWand.pc MagickWand/MagickWand-7.Q16HDRI.pc Magick++/lib/Magick++.pc Magick++/lib/Magick++-7.Q16HDRI.pc ‘/usr/local/lib/pkgconfig’
make[2]: ディレクトリ ‘/root/ImageMagick-7.0.10-22’ から出ます
make[1]: ディレクトリ ‘/root/ImageMagick-7.0.10-22’ から出ます

libtool: warning: relinking ‘MagickWand/libMagickWand-7.Q16HDRI.la’

と、

libtool: warning: relinking ‘Magick++/lib/libMagick++-7.Q16HDRI.la’

という二つの警告が出ました。どうすればいいんだろ?

# magick -version

Version: ImageMagick 7.0.10-22 Q16 x86_64 2020-07-02 https://imagemagick.org
Copyright: c 1999-2020 ImageMagick Studio LLC
License: https://imagemagick.org/script/license.php
Features: Cipher DPC HDRI OpenMP(4.5)
Delegates (built-in):

今夜は、このあたりまでにしておきます。

 

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

日本語を使って書いてね。外国語わかんない。