php-5.3をソースからインストールしたい。
すでにphp7がインストールされているサーバに、php5.3.29をソースコンパイル
使用としているのですが、makeで以下エラーとなってしまします。
お分かりになる方がいましたら、よろしくお願いいたします。
環境
OS: Amazon Linux 2
DB: mariadb-10.2 postgresql-9.6.8
WEB: nginx-1.12.2 httpd-2.4.34
configure時のオプション
./configure --prefix=/usr/local/lib/php-5.3 --with-config-file-path=/usr/local/lib/php-5.3 --libdir=/usr/lib64 --with-openssl --with-bz2 --with-curl --enable-exif --enable-ftp --with-zlib --with-zlib-dir=/usr/include/ --enable-cgi --enable-mbstring --with-mcrypt --enable-mbregex --enable-pcntl --enable-shmop --with-snmp --enable-soap --enable-sockets --enable-sysvmsg --enable-sysvsem --enable-sysvshm --enable-wddx --enable-sockets --with-gd --enable-gd-native-ttf --enable-gd-jis-conv --with-gettext --with-gmp --with-jpeg-dir=/usr --with-png-dir=/usr --program-suffix=53 --with-pgsql --with-pdo-pgsql --with-libdir=lib64 --with-mysql
発生している問題・エラーメッセージ
以下は、make実行でのエラーです。
/usr/local/src/php-5.3.29/ext/mysql/php_mysql.c: In function ‘php_mysql_do_connect’: /usr/local/src/php-5.3.29/ext/mysql/php_mysql.c:695:36: error: ‘MYSQL_PORT’ undeclared (first use in this function); did you mean ‘MYSQL_STMT’? int hashed_details_length, port = MYSQL_PORT; ^~~~~~~~~~ MYSQL_STMT /usr/local/src/php-5.3.29/ext/mysql/php_mysql.c:695:36: note: each undeclared identifier is reported only once for each function it appears in make: *** [ext/mysql/php_mysql.lo] Error 1
既に削除された機能ですね >php_mysql_do_connect インストールすれば通りそうには思います。実環境がないため、あくまでヒントとしてこちらにコメントします。
mts10806 mysql-devel とかそっちの話じゃね Cのコンパイルエラーだし
公式非ビルド品をいまさら入れる理由がわからん。 非公式サポートもはいってないし
mts10806さん、asahina1979さん 返信ありがとうございます。 リプレイス案件で、新しい環境ではphp7で動くようプログラムを修正するけど これまでのphp5系も念のため入れて欲しいという要望があり...という背景がありました。
元が5.3だったということですよね。
はい。そうです。
だとすると「仮想コンテナ」または「仮想マシーン」のいずれかで対応したほういい気がするが
お二人の回答がヒントになり、makeできました!configureのオプションを変更することでインストールまで進めました。
asahina1979さんの「仮想コンテナ」、あまりさわったことがないためその方法でも検証してみます。
ありがとうございました!
回答1件
あなたの回答
tips
プレビュー