忍者ブログ

[PR]

2024年05月18日 ()
×

[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。

install php from yum (CentOS5.2)

2008年12月31日 (linux)

phpインストール

httpd(apache2)はデフォルトでインストールされていた.
phpインストール.

# yum install php.i386
  • php.i386-5.1.6-20.el5_2.1
  • php-cli.i386-5.1.6-20.el5_2.1
  • php-common.i386-5.1.6-20.el5_2.1

がインストールされる.

httpd.conf編集

/etc/httpd/conf/httpd.confを編集し,phpのモジュールをロードするようにする.
適当な位置に,

LoadModule php5_module modules/libphp5.so

を追記.
さらに適当な位置に,

AddType    application/x-httpd-php .php
AddType    application/x-httpd-php-source .phps

を追記.
さらに行

DirectoryIndex    index.html index.html.var

を,

DirectoryIndex    index.html index.php

に変更.

テスト

/etc/httpd/conf/httpd.conf

DocumentRoot "/var/www/html"

となっていたので,

# cat >/var/www/html/phpinfo.php
<html>
<body>
<?php
phpinfo();
?>
</body>
</html>
# 

この状態でIPアドレスを調べて

# ifconfig

ブラウザでhttp://xxx.xxx.xxx.xxx/phpinfo.phpにアクセス.
phpの情報が表示されればOK.
※xxxは任意の数字.

PR

install blackbox & bbkeys from source (CentOS5.2)

2008年12月30日 (linux)

gccインストール

gccがないとお話にならない.まずはgccをインストールする.

# yum install gcc.i386
  • gcc.i386-4.1.2-42.el5
  • glibc-2.5-2.el5_2.2
  • glibc-common-2.5-24.el5_2.2
  • glibc-devel-2.5-24.el5_2.2
  • glibc-headers-2.5-24.el5_2.2
  • kernel-headers-2.6.18-92.1.22.el5
  • libgomp-4.1.2-42.el5

がインストールorアップグレードされる.
ついでにgcc-c++もインストールする.

# yum install gcc-c++.i386
  • gcc-c++.i386-4.1.2-42.el5
  • libstdc++-devel.i386-4.1.2-42.el5

がインストールorアップグレードされる.

libiconvインストール

ソースインストールする.

# cd /usr/local/src
# wget http://ftp.gnu.org/gnu/libiconv/libiconv-1.11.tar.gz
# tar zxf libiconv-1.11.tar.gz
# cd libiconv-1.11
# ./configure
# make
# make install

ライブラリインストール

Xのライブラリ,ヘッダのためlibX11-develをインストールする.

# yum install libX11-devel.i386
  • libX11-devel.i386-1.0.3-9.el5
  • libau-devel.i386-1.0.1-3.1
  • libXdmcp-devel.i386-1.0.1-2.1
  • mesa-libGL-devel.i386-6.5.1-7.5.el5
  • xorg-x11-proto-devel.i386-7.1-9.el5.centos

がインストールorアップグレードされる.
libXextのためlibXext-develもインストールする.

# yum install libXext-devel.i386
  • libXext-devel.i386-1.0.1-2.1

がインストールされる.

blackboxインストール

ソースインストールする.

# ./configure \
--prorgarm-suffix=-0.70.1 \
--with-x \
--x-includes=/usr/include/X11 \
--x-libraries=/usr/lib/xorg/modules
# make
# make install

makeでエラーが出る場合は,glibcとlibiconvのヘッダファイルiconv.hが混在しているから.
/usr/local/include/iconv.hを削除すればOK.

# rm /usr/local/include/iconv.h

これで/usr/local/bin/blackbox-0.70.1ができるので,/usr/local/bin/blackboxにシンボリックリンクを張っておけばOK.

# ln -s /usr/local/bin/blackbox-0.70.1 /usr/local/bin/blackbox

違うバージョンのblackboxをインストールしてもシンボリックリンクを張り直すことによりバージョンの共存が可能.

bbkeysインストール

ソースインストールインストールする.

# cd /usr/local/src
# tar zxf bbkeys-0.9.1.tar.gz
# cd bbkeys-0.9.1
# PKG_CONFIG_PATH=/usr/local/lib/pkgconfig
# export PKG_CONFIG_PATH
# ./configure \
--program-suffix=-0.9.1
# make
# make install

環境変数PKG_CONFIG_PATHが必要なことに注意.
シンボリックリンクを張る.

# ln -s /usr/local/bin/bbkeys-0.9.1 /usr/local/bin/bbkeys

テスト

% bbkeys --version
bbkeys version: [0.9.1]
% blackbox --version
Blackbox 0.70.1
Copyright (c) 2001 - 2005 Sean 'Shaleh' Perry
Copyright (c) 1997 - 2000, 2002 - 2005 Bradley T Hughes
  -display <string>     use display connection.
  -single <string>      manage the default screen only
  -rc <string>          use alternate resource file.
  -version              display version and exit.
  -help                 display this help text and exit.

Compile time options:
  Debugging:                no
  Shape:                    no

OK.

/etc/inittab

2008年12月29日 (linux)

ランレベルの設定ファイル.

id:5:initdefault:

この行を変更することでデフォルトのランレベルを設定できる.初期値はランレベル5.
ランレベル3に設定する.

id:3:initdefaults:

install strace from source

2008年12月28日 (linux)

序章

straceを使おうと思ったらcommand not foundだった.のでインストール.

環境

  • kernel: 2.6.18-92.el5
  • gcc: 4.1.2
  • binutils: 2.17

インストール

# cd /usr/local/src
# wget http://ufpr.dl.sourceforge.net/sourceforge/strace/strace-4.5.18.tar.bz2
# tar jxvf strace-4.5.18.tar.bz2
# cd strace-4.5.18
# ./configure
# make
# make install

テスト

% cat >helloworld.c 
#include 

int main(int argc,char *argv[])
{
    printf("hello world\n");

    return(0);
}
% gcc helloworld.c 
% strace ./a.out 
execve("./a.out", ["./a.out"], [/* 34 vars */]) = 0
brk(0)                                  = 0x9628000
access("/etc/ld.so.preload", R_OK)      = -1 ENOENT (No such file or directory)
open("/etc/ld.so.cache", O_RDONLY)      = 3
fstat64(3, {st_mode=S_IFREG|0644, st_size=43763, ...}) = 0
mmap2(NULL, 43763, PROT_READ, MAP_PRIVATE, 3, 0) = 0xb7f18000
close(3)                                = 0
open("/lib/libc.so.6", O_RDONLY)        = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0000o\262\0004\0\0\0X"..., 512) = 512
fstat64(3, {st_mode=S_IFREG|0755, st_size=1602320, ...}) = 0
mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0xb7f17000
mmap2(0xb11000, 1320356, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0xb11000
mmap2(0xc4e000, 12288, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x13d) = 0xc4e000
mmap2(0xc51000, 9636, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0xc51000
close(3)                                = 0
mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0xb7f16000
set_thread_area({entry_number:-1 -> 6, base_addr:0xb7f166c0, limit:1048575, seg_32bit:1, contents:0, read_exec_only:0, limit_in_pages:1, seg_not_present:0, useable:1}) = 0
mprotect(0xc4e000, 8192, PROT_READ)     = 0
mprotect(0x15b000, 4096, PROT_READ)     = 0
munmap(0xb7f18000, 43763)               = 0
fstat64(1, {st_mode=S_IFCHR|0620, st_rdev=makedev(136, 0), ...}) = 0
mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0xb7f22000
write(1, "hello world\n"..., 12hello world
)        = 12
exit_group(0)                           = ?
[23:55:42][0]% 

できた.

iconv

2008年12月18日 (linux)

iconvとは

文字コード変換ツール.多くの文字コードをサポートしている.

インストール

yumでは見つからなかった.

どうやらGNUのCライブラリに含まれているらしい.のでインストール不要.ない場合はGNUのCライブラリをインストールしないといけないのかな.

使う

文字コードの一覧を表示.

% iconv --list

euc-jpをutf-8に変換.

% iconv -f EUC-JP -t UTF-8 FILES

ファイルに書き出す場合.

% iconv -f EUC-JP -t UTF-8 FILES -o FILE

もしくは

% iconv -f EUC-JP -t UTF-8 FILES >FILE

cf