ÓÃphpµÄcÀ©Õ¹±à³Ìµ÷Óà c³ÌÐòµÄ¶¯Ì¬Á´½Ó¿â
Ò». Ê×ÏÈ×öÒ»¸ö¼òµ¥µÄsoÎļþ£º
/**
* hello.c
* To compile, use following commands:
* gcc -O -c -fPIC -o hello.o hello.c
* gcc -shared -o libhello.so hello.o
*/
int hello_add(int a, int b)
{
return a + b;
}
È»ºó½«Ëü±àÒë³É.soÎļþ²¢·Åµ½ÏµÍ³ÖУº
$ gcc -O -c -fPIC -o hello.o hello.c
$ gcc -shared -o libhello.so hello.o
$ su
# echo /usr/local/lib > /etc/ld.so.conf.d/local.conf
# cp libhello.so /usr/local/lib
# /sbin/ldconfig
¶þ. д¶ÎС³ÌÐòÀ´ÑéÖ¤ÆäÕýÈ·ÐÔ£º
/**
* hellotest.c
* To compile, use following commands:
* gcc -o hellotest -lhello hellotest.c
*/
#include <stdio.h>
int main()
{
int a = 3, b = 4;
printf("%d + %d = %d\n", a, b, hello_add(a,b));
return 0;
}
±àÒë²¢Ö´ÐУº
$ gcc -o hellotest -lhello hellotest.c
$ ./hellotest
3 + 4 = 7
Èý.
È»ºóͨ¹ýÏÂÃæµÄÃüÁÁ¢Ò»¸öÃûΪ hello µÄÄ£¿é¡£
$ ./ext_skel --extname=hello
Ö´ÐиÃÃüÁîÖ®ºóËü»áÌáʾÄãÓ¦µ±ÓÃʲôÃüÁîÀ´±àÒëÄ£¿é£¬¿ÉϧÄÇÊǽ«Ä£¿é¼¯³Éµ½phpÄÚ²¿µÄ±àÒë·½·¨¡£Èç¹ûÒª±àÒë³É¿É¶¯Ì¬¼ÓÔØµÄ php_hello.so£¬·½·¨Òª¸üΪ¼òµ¥¡£
$ cd hello
Ê×Ïȱ༠config.m4 Îļþ£¬È¥µôµÚ16Ðк͵Ú18ÐÐ
Ïà¹ØÎĵµ£º
1)ÔËÐÐʱ¿â¾ÍÊÇ C run-time library£¬ÊÇ C ¶ø·Ç C++ ÓïÑÔÊÀ½çµÄ¸ÅÄî:È¡Õâ¸öÃû×Ö¾ÍÊÇÒòΪÄãµÄ C ³ÌÐòÔËÐÐʱÐèÒªÕâЩ¿âÖеĺ¯Êý.
2)C
ÓïÑÔÊÇËùνµÄ“СÄں˔ÓïÑÔ£¬¾ÍÆäÓïÑÔ±¾ÉíÀ´ËµºÜС£¨²»¶àµÄ¹Ø¼ü×Ö£¬³ÌÐòÁ÷³Ì¿ØÖÆ£¬Êý¾ÝÀàÐ͵ȣ©£»ËùÒÔ£¬C ÓïÑÔÄں˿ª·¢³öÀ´Ö®ºó£¬Dennis
Ritchie ºÍ Brian Kernighan ¾ÍÓà C ± ......
Ò».»·¾³µÄ°²×°
ÏÂÔØ°²×°°ü£¬GoogleÉÏËÑË÷php+apache+sqlµÄ°²×°°ü²¢°²×°¡£
¶þ.À©Õ¹±à³Ì
Õë¶ÔÔÚPHP»·¾³ÏµôÓÃC±à³Ì(c³ÌÐò±àÒëµÄdll)£¬Ö÷ÒªÓÐÒÔÏÂÁ½ÖÖ·½Ê½¡£
1.ÀûÓÃATL¹¹½¨DLL×é¼þ£¬È»ºóÔÙPHPÀïÃæÖ±½Óµ÷Ó㬵÷Ó÷½·¨ ......
6000ÉõÖÁ10000£¬¶¼¿ÉÒÔ£¬µ«´óÓÚ6000£¬¾Í¿ªÊ¼¹öÆÁÁË¡£¡£
#include<stdio.h>
#include<stdlib.h>
#include<math.h>
int main(){
int i,j,*f,tmp,c=0;
long int n,bits;
const double PI=2*asin(1.0),E=exp(1.0);
scanf("%ld",&n);
bits=(long)ceil(n*(log10(n)-log ......
»·¾³Èí¼þ°æ±¾½éÉÜ£º
APACHE 2.0.59
PHP5.2.3
MYSQL5.0.45
GD-2.0.35
Zend Optimizer v3.3.0
&n ......
Ò». Ê×ÏÈ×öÒ»¸ö¼òµ¥µÄsoÎļþ£º
/**
* hello.c
* To compile, use following commands:
* gcc -O -c -fPIC -o hello.o hello.c
* gcc -shared ......