防忘録の最近のブログ記事
x86_64環境上でのDBD::mysqlの組み込みではまりました。
CPANやソースからコンパイルしてふつうにインストールするも、実際のCGIの動作でエラーが発生。
症状:
mt-check.cgiでは組み込みを確認できるが、mt.cgiを動作させるとエラー。
(↓メッセージ)
で、「そのようなファイルやディレクトリはありません」といわれつつmysql.soも確認すると存在する。
原因
「mysql.soが無い」というメッセージだが、実際見つからないのは「libmysqlclient.so.15」の方。
探すと見つかる。
/etc/ld.so.confに、findで出てきたパスを追加してあげて
☆PHP
バージョン4.4.2
☆configureオプションは以下
./configure --with-imagick --with-freetype-dir=/usr --with-apxs=/usr/local/apache/bin/apxs --with-pgsql=/usr/local/pgsql --with-mysql=/usr/local/mysql --with-zlib-dir=/usr --with-jpeg-dir=/usr --with-tiff-dir=/usr --with-png-dir=/usr --enable-mbstring --enable-mbstr-enc-trans --with-curl --enable-simplexml --with-xmlrpc --with-gd
☆エラー
/bin/sh /usr/local/src/php-4.4.2/libtool --silent --preserve-dup-deps --mode=link gcc -g -O2 -rpath /usr/local/src/php-4.4.2/libs -avoid-version -module -L/usr/kerberos/lib -L/usr/kerberos/lib64 -L/usr/local/lib -L/usr/local/mysql/lib/mysql -L/usr/local/pgsql/lib -R /usr/kerberos/lib -R /usr/kerberos/lib64 -R /usr/local/lib -R /usr/local/mysql/lib/mysql -R /usr/local/pgsql/lib ext/pcre/pcrelib/pcre_chartables.lo ext/pcre/pcrelib/pcre_compile.lo ext/pcre/pcrelib/pcre_config.lo ext/pcre/pcrelib/pcre_dfa_exec.lo ext/pcre/pcrelib/pcre_exec.lo ext/pcre/pcrelib/pcre_fullinfo.lo ext/pcre/pcrelib/pcre_get.lo ext/pcre/pcrelib/pcre_globals.lo ext/pcre/pcrelib/pcre_info.lo ext/pcre/pcrelib/pcre_maketables.lo ext/pcre/pcrelib/pcre_ord2utf8.lo ext/pcre/pcrelib/pcre_printint.lo ext/pcre/pcrelib/pcre_refcount.lo ext/pcre/pcrelib/pcre_study.lo ext/pcre/pcrelib/pcre_tables.lo ext/pcre/pcrelib/pcre_try_flipped.lo ext/pcre/pcrelib/pcre_ucp_findchar.lo ext/pcre/pcrelib/pcre_valid_utf8.lo ext/pcre/pcrelib/pcre_version.lo ext/pcre/pcrelib/pcre_xclass.lo ext/pcre/php_pcre.lo ext/zlib/zlib.lo ext/zlib/zlib_fopen_wrapper.lo ext/ctype/ctype.lo ext/curl/curl.lo ext/curl/curlstreams.lo ext/gd/gd.lo ext/gd/gdttf.lo ext/gd/libgd/gd.lo ext/gd/libgd/gd_gd.lo ext/gd/libgd/gd_gd2.lo ext/gd/libgd/gd_io.lo ext/gd/libgd/gd_io_dp.lo ext/gd/libgd/gd_io_file.lo ext/gd/libgd/gd_ss.lo ext/gd/libgd/gd_io_ss.lo ext/gd/libgd/gd_png.lo ext/gd/libgd/gd_jpeg.lo ext/gd/libgd/gdxpm.lo ext/gd/libgd/gdfontt.lo ext/gd/libgd/gdfonts.lo ext/gd/libgd/gdfontmb.lo ext/gd/libgd/gdfontl.lo ext/gd/libgd/gdfontg.lo ext/gd/libgd/gdtables.lo ext/gd/libgd/gdft.lo ext/gd/libgd/gdcache.lo ext/gd/libgd/gdkanji.lo ext/gd/libgd/wbmp.lo ext/gd/libgd/gd_wbmp.lo ext/gd/libgd/gdhelpers.lo ext/gd/libgd/gd_topal.lo ext/gd/libgd/gd_gif_in.lo ext/gd/libgd/xbm.lo ext/gd/libgd/gd_gif_out.lo ext/mbstring/mbstring.lo ext/mbstring/php_unicode.lo ext/mbstring/php_mbregex.lo ext/mbstring/mbregex/mbregex.lo ext/mbstring/libmbfl/filters/html_entities.lo ext/mbstring/libmbfl/filters/mbfilter_7bit.lo ext/mbstring/libmbfl/filters/mbfilter_ascii.lo ext/mbstring/libmbfl/filters/mbfilter_base64.lo ext/mbstring/libmbfl/filters/mbfilter_big5.lo ext/mbstring/libmbfl/filters/mbfilter_byte2.lo ext/mbstring/libmbfl/filters/mbfilter_byte4.lo ext/mbstring/libmbfl/filters/mbfilter_cp1251.lo ext/mbstring/libmbfl/filters/mbfilter_cp1252.lo ext/mbstring/libmbfl/filters/mbfilter_cp866.lo ext/mbstring/libmbfl/filters/mbfilter_cp932.lo ext/mbstring/libmbfl/filters/mbfilter_cp936.lo ext/mbstring/libmbfl/filters/mbfilter_euc_cn.lo ext/mbstring/libmbfl/filters/mbfilter_euc_jp.lo ext/mbstring/libmbfl/filters/mbfilter_euc_jp_win.lo ext/mbstring/libmbfl/filters/mbfilter_euc_kr.lo ext/mbstring/libmbfl/filters/mbfilter_euc_tw.lo ext/mbstring/libmbfl/filters/mbfilter_htmlent.lo ext/mbstring/libmbfl/filters/mbfilter_hz.lo ext/mbstring/libmbfl/filters/mbfilter_iso2022_kr.lo ext/mbstring/libmbfl/filters/mbfilter_iso8859_1.lo ext/mbstring/libmbfl/filters/mbfilter_iso8859_10.lo ext/mbstring/libmbfl/filters/mbfilter_iso8859_13.lo ext/mbstring/libmbfl/filters/mbfilter_iso8859_14.lo ext/mbstring/libmbfl/filters/mbfilter_iso8859_15.lo ext/mbstring/libmbfl/filters/mbfilter_iso8859_16.lo ext/mbstring/libmbfl/filters/mbfilter_iso8859_2.lo ext/mbstring/libmbfl/filters/mbfilter_iso8859_3.lo ext/mbstring/libmbfl/filters/mbfilter_iso8859_4.lo ext/mbstring/libmbfl/filters/mbfilter_iso8859_5.lo ext/mbstring/libmbfl/filters/mbfilter_iso8859_6.lo ext/mbstring/libmbfl/filters/mbfilter_iso8859_7.lo ext/mbstring/libmbfl/filters/mbfilter_iso8859_8.lo ext/mbstring/libmbfl/filters/mbfilter_iso8859_9.lo ext/mbstring/libmbfl/filters/mbfilter_jis.lo ext/mbstring/libmbfl/filters/mbfilter_koi8r.lo ext/mbstring/libmbfl/filters/mbfilter_qprint.lo ext/mbstring/libmbfl/filters/mbfilter_armscii8.lo ext/mbstring/libmbfl/filters/mbfilter_sjis.lo ext/mbstring/libmbfl/filters/mbfilter_ucs2.lo ext/mbstring/libmbfl/filters/mbfilter_ucs4.lo ext/mbstring/libmbfl/filters/mbfilter_uhc.lo ext/mbstring/libmbfl/filters/mbfilter_utf16.lo ext/mbstring/libmbfl/filters/mbfilter_utf32.lo ext/mbstring/libmbfl/filters/mbfilter_utf7.lo ext/mbstring/libmbfl/filters/mbfilter_utf7imap.lo ext/mbstring/libmbfl/filters/mbfilter_utf8.lo ext/mbstring/libmbfl/filters/mbfilter_uuencode.lo ext/mbstring/libmbfl/mbfl/mbfilter.lo ext/mbstring/libmbfl/mbfl/mbfilter_8bit.lo ext/mbstring/libmbfl/mbfl/mbfilter_pass.lo ext/mbstring/libmbfl/mbfl/mbfilter_wchar.lo ext/mbstring/libmbfl/mbfl/mbfl_convert.lo ext/mbstring/libmbfl/mbfl/mbfl_encoding.lo ext/mbstring/libmbfl/mbfl/mbfl_filter_output.lo ext/mbstring/libmbfl/mbfl/mbfl_ident.lo ext/mbstring/libmbfl/mbfl/mbfl_language.lo ext/mbstring/libmbfl/mbfl/mbfl_memory_device.lo ext/mbstring/libmbfl/mbfl/mbfl_string.lo ext/mbstring/libmbfl/mbfl/mbfl_allocators.lo ext/mbstring/libmbfl/nls/nls_de.lo ext/mbstring/libmbfl/nls/nls_en.lo ext/mbstring/libmbfl/nls/nls_ja.lo ext/mbstring/libmbfl/nls/nls_kr.lo ext/mbstring/libmbfl/nls/nls_neutral.lo ext/mbstring/libmbfl/nls/nls_ru.lo ext/mbstring/libmbfl/nls/nls_uni.lo ext/mbstring/libmbfl/nls/nls_zh.lo ext/mbstring/libmbfl/nls/nls_hy.lo ext/mbstring/libmbfl/nls/nls_tr.lo ext/mysql/php_mysql.lo ext/overload/overload.lo ext/pgsql/pgsql.lo ext/posix/posix.lo ext/session/session.lo ext/session/mod_files.lo ext/session/mod_mm.lo ext/session/mod_user.lo regex/regcomp.lo regex/regexec.lo regex/regerror.lo regex/regfree.lo ext/standard/array.lo ext/standard/base64.lo ext/standard/basic_functions.lo ext/standard/browscap.lo ext/standard/crc32.lo ext/standard/crypt.lo ext/standard/cyr_convert.lo ext/standard/datetime.lo ext/standard/dir.lo ext/standard/dl.lo ext/standard/dns.lo ext/standard/exec.lo ext/standard/file.lo ext/standard/filestat.lo ext/standard/flock_compat.lo ext/standard/formatted_print.lo ext/standard/fsock.lo ext/standard/head.lo ext/standard/html.lo ext/standard/image.lo ext/standard/info.lo ext/standard/iptc.lo ext/standard/lcg.lo ext/standard/link.lo ext/standard/mail.lo ext/standard/math.lo ext/standard/md5.lo ext/standard/metaphone.lo ext/standard/microtime.lo ext/standard/pack.lo ext/standard/pageinfo.lo ext/standard/parsedate.lo ext/standard/quot_print.lo ext/standard/rand.lo ext/standard/reg.lo ext/standard/soundex.lo ext/standard/string.lo ext/standard/scanf.lo ext/standard/syslog.lo ext/standard/type.lo ext/standard/uniqid.lo ext/standard/url.lo ext/standard/url_scanner.lo ext/standard/var.lo ext/standard/versioning.lo ext/standard/assert.lo ext/standard/strnatcmp.lo ext/standard/levenshtein.lo ext/standard/incomplete_class.lo ext/standard/url_scanner_ex.lo ext/standard/ftp_fopen_wrapper.lo ext/standard/http_fopen_wrapper.lo ext/standard/php_fopen_wrapper.lo ext/standard/credits.lo ext/standard/css.lo ext/standard/var_unserializer.lo ext/standard/ftok.lo ext/standard/aggregation.lo ext/standard/sha1.lo ext/tokenizer/tokenizer.lo ext/xml/xml.lo ext/xml/expat/xmlparse.lo ext/xml/expat/xmlrole.lo ext/xml/expat/xmltok.lo ext/xmlrpc/xmlrpc-epi-php.lo ext/xmlrpc/libxmlrpc/base64.lo ext/xmlrpc/libxmlrpc/simplestring.lo ext/xmlrpc/libxmlrpc/xml_to_dandarpc.lo ext/xmlrpc/libxmlrpc/xmlrpc_introspection.lo ext/xmlrpc/libxmlrpc/encodings.lo ext/xmlrpc/libxmlrpc/system_methods.lo ext/xmlrpc/libxmlrpc/xml_to_xmlrpc.lo ext/xmlrpc/libxmlrpc/queue.lo ext/xmlrpc/libxmlrpc/xml_element.lo ext/xmlrpc/libxmlrpc/xmlrpc.lo ext/xmlrpc/libxmlrpc/xml_to_soap.lo TSRM/TSRM.lo TSRM/tsrm_strtok_r.lo TSRM/tsrm_virtual_cwd.lo main/main.lo main/snprintf.lo main/spprintf.lo main/php_sprintf.lo main/safe_mode.lo main/fopen_wrappers.lo main/alloca.lo main/php_scandir.lo main/php_ini.lo main/SAPI.lo main/rfc1867.lo main/php_content_types.lo main/strlcpy.lo main/strlcat.lo main/mergesort.lo main/reentrancy.lo main/php_variables.lo main/php_ticks.lo main/streams.lo main/network.lo main/php_open_temporary_file.lo main/php_logos.lo main/output.lo main/memory_streams.lo main/user_streams.lo Zend/zend_language_parser.lo Zend/zend_language_scanner.lo Zend/zend_ini_parser.lo Zend/zend_ini_scanner.lo Zend/zend_alloc.lo Zend/zend_compile.lo Zend/zend_constants.lo Zend/zend_dynamic_array.lo Zend/zend_execute_API.lo Zend/zend_highlight.lo Zend/zend_llist.lo Zend/zend_opcode.lo Zend/zend_operators.lo Zend/zend_ptr_stack.lo Zend/zend_stack.lo Zend/zend_variables.lo Zend/zend.lo Zend/zend_API.lo Zend/zend_extensions.lo Zend/zend_hash.lo Zend/zend_list.lo Zend/zend_indent.lo Zend/zend_builtin_functions.lo Zend/zend_sprintf.lo Zend/zend_ini.lo Zend/zend_qsort.lo Zend/zend_multibyte.lo Zend/zend_strtod.lo Zend/zend_execute.lo sapi/apache/sapi_apache.lo sapi/apache/mod_php4.lo sapi/apache/php_apache.lo main/internal_functions.lo -lcrypt -lexpat -lcrypt -lpq -lmysqlclient -lfreetype -lpng -lz -ljpeg -lcurl -lz -lresolv -lm -ldl -lnsl -lcurl -lssl -lcrypto -lgssapi_krb5 -lkrb5 -lcom_err -lk5crypto -lresolv -ldl -lz -lz -lssl -lcrypto -lssl -lcrypto -lgssapi_krb5 -lkrb5 -lcom_err -lk5crypto -lresolv -ldl -lz -lz -lcrypt -lcrypt -o libphp4.la
ext/pcre/pcrelib/pcre_chartables.lo: file not recognized: File truncated
collect2: ld returned 1 exit status
make: *** [libphp4.la] エラー 1
ext/pcre/pcrelib/pcre_chartables.lo: file not recognized: File truncated
collect2: ld returned 1 exit status
http://www.mail-archive.com/php-install@lists.php.net/msg14193.html
Run ./configure again without the PECL flags.
という回答があったが、
http://72.14.253.104/search?q=cache:P1z02BKgmH0J:www.fresh.co.il/vBulletin/showthread.php%3Ft%3D218236+ext/pcre/pcrelib/pcre_chartables.lo:+file+not+recognized:+File+truncated&hl=ja&gl=jp&ct=clnk&cd=3
http://www.fresh.co.il/vBulletin/showthread.php?t=218236
このサイト(イラン)にあるとおり、
make clean
make disclean
コマンドを投入後、再構築をすると消える。
ゴミがのこってると出るエラーらしい、、、!?
☆
PostgreSQLで構築したデータベースサーバの引越しを行った際の作業メモ。
PostgreSQLを起動した状態が前提。
1. バックアップ時
pgdumpallコマンドを利用する。
[書式]
# /usr/local/pgsql/bin/pgdumpall -o > [バックアップファイル名]
[例]
# /usr/local/pgsql/bin/pgdumpall -o > 061006_xxxxxx.dat
2. 移行
バックアップした 061006_xxxxxx.dat を移行先にFTP転送する。
3. 復元時
psqlコマンドに直接流し込む。
#psql -e template1 < 061006_xxxxxx.dat
☆前提
すでにデータベースがある場合はDropする。
バージョンが違うとラージオブジェクトが戻らないことがある。
サブディレクトリも含む一括置換コマンド。
Googleで検索しても、なかなか出てこない、ありそうでないスクリプト。
どっかからパクりをちょっと改造。
☆ソース(書式)
☆使い方
usage:
[dir] ・・・ 対象ディレクトリ
[From] ・・・ 置換対象文字列
[To] ・・・ 置換後文字列
(From, Toの部分は機能文字は\でエスケープする必要アリ)
sedコマンドが分かってるひとは、From,Toのみならず、正規表現でいろいろできる!
☆ロジック
Findコマンドで再帰検索し、フルパスでディレクトリ付きのファイル名のリストを取得。
リストがなくなるまでリプレイス。
リプレイスにはsedコマンドを利用。
cpで元ファイルをtmpにバックアップを取って、catコマンドの出力をsedでフィルタリング。
結果を元ファイル名として書き出し。
その後tmpは削除。
☆その他
バイナリファイルもディレクトリも遠慮なく取ってきて処理します。
バイナリはそのまま実行し、エラーなく動作。
ディレクトリはエラーを出しますが動作には影響なし。
なので、ざっくりこいつでディレクトリ丸々かけてしまいましょう。
☆例
データベース接続先の一括変更に!
片寄せ冗長化サーバのお供に!
ドメイン変更に!
アクセス計測タグの張替えに!!
以外とわかんないだよね、、、これがまた、、。
☆ディストリビュージョンを調べる
# cat /etc/issue
Red Hat Enterprise Linux ES release 3 (Taroon Update 8)
☆カーネルバージョンを調べる
# cat /proc/version
Linux version 2.4.21-47.EL (bhcompile@hs20-bc1-3.build.redhat.com) (gcc version 3.2.3 20030502 (Red Hat Linux 3.2.3-54)) #1 SMP Wed Jul 5 20:30:36 EDT 2006
☆unameコマンド
#uname [option]
[option]
-m, --machine コンピュータ(ハードウェア)の種類を出力する
-n, --nodename ネットワークにおけるホスト名を出力する
-r, --release OSのリリース番号を出力する
-s, --sysname OSの名称を出力する
-v OSのバージョンを出力する
# uname
Linux
# uname -a
Linux katori.xxxxx.com 2.4.21-47.EL #1 SMP Wed Jul 5 20:30:36 EDT 2006 x86_64 x86_64 x86_64 GNU/Linux
PHPにコンパイルにおいて、GDオプションを指定し、かつ、GDの組み込みチェックにおいて、JPEGライブラリを認識しないときに起こる。
GDライブラリの再コンパイルを行えばよい、との回答を見つけたが、実施しても症状は変わらなかった。
エラーとしてはこんな感じのメッセージがでる、、、。
vi config.logを見るとこのことに関しての情報はなし。。。
#ここでconfig.logがとまってるのでfabsfのコンクリフトの問題かと調べてしまった、、、、
単純にファイルがないエラーなのだが、/usr/lib配下、/usr/lib64配下もしくはその両方にファイルがあっても発生することがある、、、
configureの--with-jpeg-dir=を詳細に指定しても無駄
(おそらく、.soファイル以外の何かが足りずとりあえず、このエラーを出しているっぽい。)
解決方法
×1. rpmファイルを持ってくる。
->rpmbuildなどでsrc.rpmから持ってきたがダメだった。
症状変わらず。(もちろんdevelをインストール)
○2. srcファイルをコンパイルする。
->こっちが正解。
Independent JPEG Group(http://www.ijg.org/)が配ってるのをもってこよう、、、。
(64ビットでコンパイルできないときはこちら、、
Independent JPEG Group(http://www.ijg.org/)の配布するJPEGライブラリであるjpegsrc.v6b。
だれでもhttp://www.ijg.org/files/よりダウンロードでき、無料。すばらしい!!
でも、ファイルの日付がずいぶん古いんだよね、、。
jpegsrc.v6b.tar.gz 28-Jun-2001 18:16
かとう「・・・。(やな予感)」
案の定、64ビット環境でコンパイル通らず、、、。
( ./configureの段階なのでコンパイル以前かぁ!)
そんなときは、これ!
config.guessとconfig.subを/usr/share/libtool/からコピーすると通るようになるのであります!
あとは、おきまり。
参考サイト
https://www.noah.org/wiki/index.php/Jpegsrc_64
大変助かりました!Thanks!!!
rpmbuildコマンドを利用する!
1. rpmbuildコマンドを投入
2. しばらくすると以下のメッセージが表示される。
->rpmbuildコマンドを投入したサーバ環境に合ったrpmファイルが生成される。
3. rpmファイルをインストールする。
#こんな罠にも気をつけよう、、、。
rpmbuildのオプションにbuildrootというものがある。
これを
「rpmファイルを生成する場所をユーザが指定できるものだ!!」
とかってに勘違いしたかとうは早速コマンド投入!
よりによって /homeを 指定するというオバカぶり
コマンド実行中・・・ふむふむいい感じ、、、。
絶好調やないですか!?
アレ!?
(home配下全部削除。しかも、どんなファイルも消す「強制オプション」付き!!)あわてて中断!!!
しかし、配下のディレクトリをみてみると、、、
みんな消えた、、、、、、
気をつけよう!!
・pg_hda.confのアクセス権限を修正する。
/usr/local/pgsql/data/配下
pg_hba.conf に以下のようなIPアドレス許可文言を追加
-------------------
host all all 192.168.0.0 0.0.0.0 trust
host all all 218.112.99.23 0.0.0.0 trust
-------------------
・postmasterをiオプションを追加して起動する。
-------------------
pg_ctl start -o -i
-------------------
