linuxÏÂ php5.3.2 µ÷ÓÃ so
php ͨÓõĵ÷Óà soµÄ·½·¨ÊÇʹÓÃdl()º¯Êý£¬µ«ÊÇÔÚphp5.3Ö®ºó²»ÔÙÖ§³ÖÕâÖÖ·½·¨£¬½öÖ§³Ö¾²Ì¬µ÷Óã¬Ê¹ÓÃdl() ¶¯Ì¬µ÷Óõķ½·¨¼û£º
ÒýÓÃÒ³1: http://tech.idv2.com/2007/07/06/use-local-so-in-php/
¸ÐлÔ×÷ÕßÌṩµÄÇåÎúÃ÷Á˵ķ½·¨£¬µ«ÊÇÎÒÔÚ5.3.1°æ±¾iÖÐûÓÐͨ¹ý£¬ÓÚÊÇÎÒÕÒµ½ÁËÒ³Ãæ£º
ÒýÓÃÒ³2: http://www.9php.com/FAQ/cxsjl/php/2007/11/9405479103083.html
´ËÒ³ÃæÖÐÓÐÌÖÂÛµ½ÈçºÎ¾²Ì¬µ÷ÓÃsoÎļþÖеĺ¯ÊýµÄÃèÊö£¬½â¾ö·½·¨ÈçÏ£º
»·¾³:Apache 2.2.9
php5.3.2
Ê×ÏÈʹÓÃÒýÓÃÒ³1ÌṩµÄ·½·¨Éú³É¶¯Ì¬¿â libhello.so.
½øÈëphp °²×°°ü½âѹËõĿ¼
-laptop:~/dev/software/php-5.3.2$cd ext
funny@funny-laptop:~/dev/software/php-5.3.2/ext$
½¨Á¢Öмä phpÁ´½ÓsoÏîÄ¿cltest
funny@funny-laptop:~/dev/software/php-5.3.2/ext$ ./ext_skel --extname=cltest
Creating directory cltest
Creating basic files: config.m4 config.w32 .cvsignore cltest.c php_cltest.h CREDITS EXPERIMENTAL tests/001.phpt cltest.php [done].
To use your new extension, you will have to execute the following steps:
1. $ cd ..
2. $ vi ext/cltest/config.m4
3. $ ./buildconf
4. $ ./configure --[with|enable]-cltest
5. $ make
6. $ ./php -f ext/cltest/cltest.php
7. $ vi ext/cltest/cltest.c
8. $ make
Repeat steps 3-6 until you are satisfied with ext/cltest/config.m4 and
step 6 confirms that your module is compiled into PHP. Then, start writing
code and repeat the last two steps as often as necessary.
ÐÞ¸Ä ÅäÖÃÎļþconfig.m4
funny@funny-laptop:~/dev/software/php-5.3.2/ext$ vi cltest/config.m4
ɾ³ý 3 ¸ö dnl
dnl PHP_ARG_WITH(my_module, for my_module support,
dnl Make sure that the comment is aligned:
dnl [ --with-my_module Include my_module support])
»òÕßɾ³ý ϱßÕâ3¸ö dnl
dnl PHP_ARG_ENABLE(my_module, whether to enable my_module support,
dnl Make sure that the comment is aligned:
dnl [ --enable-my_module Enable my_module support])
ÐÞ¸ÄÍê±Ï¡£
ÔÚcltest.cÀ©Õ¹Ä£¿éµÄÖ÷³ÌÐòÎļþÖмÓPHPµÄº¯Êý¶¨Òå
Ö÷³ÌÐòÖÐÃèÊ
Ïà¹ØÎĵµ£º
Linux Kernelѧϰ±Ê¼Ç
Table of Contents
1. ´æ´¢Æ÷Ѱַ
2. É豸Çý¶¯³ÌÐò¿ª·¢
3. ×Ö·ûÉ豸Çý¶¯³ÌÐò
3.1. É豸ºÅ
3.2. É豸ºÅµÄ·ÖÅäºÍÊÍ·Å
3.3. ÖØÒªµÄÊý¾Ý½á¹¹
3.4. ¶ÁºÍд
4. PCIÉ豸
5. Äں˳õʼ»¯ÓÅ»¯ºê
6. ·ÃÎÊÄں˲ÎÊýµÄ½Ó¿Ú
7. Äں˳õʼ»¯Ñ¡Ïî
8. ÄÚºËÄ£¿é±à³Ì
8.1. ÈëÃÅ
8.2. Ϊģ¿éÌí¼Ó ......
¿âÓж¯Ì¬Ó뾲̬Á½ÖÖ£¬¶¯Ì¬Í¨³£ÓÃ.soΪºó׺£¬¾²Ì¬ÓÃ.aΪºó׺¡£ÀýÈ磺libhello.so libhello.a
ΪÁËÔÚͬһϵͳÖÐʹÓò»Í¬°æ±¾µÄ¿â£¬¿ÉÒÔÔÚ¿âÎļþÃûºó¼ÓÉϰ汾ºÅΪºó׺,ÀýÈ磺 libhello.so.1.0,ÓÉÓÚ³ÌÐòÁ¬½ÓĬÈÏÒÔ.soΪÎļþºó׺Ãû¡£ËùÒÔΪÁËʹÓÃÕâЩ¿â£¬Í¨³£Ê¹Óý¨Á¢·ûºÅÁ¬½ÓµÄ·½Ê½¡£
ln -s libhello.so.1.0 libhello.so.1 ......
<!--
@page { margin: 2cm }
P { margin-bottom: 0.21cm }
A:link { so-language: zxx }
-->
¼ÆËã»ú×ÀÃæµÄ“ÃÀ”ȷʵºÜ³éÏ󣬲»ÏñÅ®ÐÔµÄÃÀ£¬ÈËÃDz»Ò×±í´ïÇå³þ¡£µ«ÊÇ£¬
A
Ïà¶Ô
B“
¸üÃÀ”µÄÂÛ¶Ï£¬È´ÊDZȽÏÈÝÒ×˵Ã÷°×µÄ¡£
& ......
Linux Äں˼ò½é
ÏÖÔÚÈÃÎÒÃÇ´ÓÒ»¸ö±È½Ï¸ßµÄ¸ß¶ÈÀ´ÉóÊÓһϠGNU/Linux ²Ù×÷ϵͳµÄÌåϵ½á¹¹¡£Äú¿ÉÒÔ´ÓÁ½¸ö²ã´ÎÉÏÀ´¿¼ÂDzÙ×÷ϵͳ£¬Èçͼ 2 Ëùʾ¡£
ͼ 2. GNU/Linux ²Ù×÷ϵͳµÄ»ù±¾Ìåϵ½á¹¹
ϵͳµ÷Óýӿڣ¨SCI£©µÄ·½·¨
ʵ¼ÊÉÏ£¬Ìåϵ½á¹¹¿ÉÄܲ¢²»Ïñͼ 2 ËùʾµÄÒ»ÑùÇåÎú¡£ÀýÈ磬´¦Àíϵͳµ÷Ó㨴ÓÓû§¿Õ¼äÇл»µ½ÄÚºË¿Õ ......