还是老三样:phpize, ./configure, make && make install
当然是要到你下载的php源码的ext目录中执行。
andy@AndyMacBookPro:~/Downloads/php-5.4.30/ext/pcntl$ phpizeConfiguring for:PHP Api Version: 20100412Zend Module Api No: 20100525Zend Extension Api No: 220100525andy@AndyMacBookPro:~/Downloads/php-5.4.30/ext/pcntl$ ./configure checking for grep that handles long lines and -e... /usr/bin/grepchecking for egrep... /usr/bin/grep -Echecking for a sed that does not truncate output... /usr/bin/sedchecking for cc... ccchecking whether the C compiler works... yeschecking for C compiler default output file name... a.outchecking for suffix of executables... checking whether we are cross compiling... nochecking for suffix of object files... ochecking whether we are using the GNU C compiler... yeschecking whether cc accepts -g... yeschecking for cc option to accept ISO C89... none neededchecking how to run the C preprocessor... cc -Echecking for icc... nochecking for suncc... nochecking whether cc understands -c and -o together... yeschecking for system library directory... libchecking if compiler supports -R... nochecking if compiler supports -Wl,-rpath,... yeschecking build system type... i386-apple-darwin13.4.0checking host system type... i386-apple-darwin13.4.0checking target system type... i386-apple-darwin13.4.0checking for PHP prefix... /usrchecking for PHP includes... -I/usr/include/php -I/usr/include/php/main -I/usr/include/php/TSRM -I/usr/include/php/Zend -I/usr/include/php/ext -I/usr/include/php/ext/date/libchecking for PHP extension directory... /usr/lib/php/extensions/no-debug-non-zts-20100525checking for PHP installed headers prefix... /usr/include/phpchecking if debug is enabled... nochecking if zts is enabled... nochecking for re2c... noconfigure: WARNING: You will need re2c 0.13.4 or later if you want to regenerate PHP parsers.checking for gawk... nochecking for nawk... nochecking for awk... awkchecking if awk is broken... nochecking whether to enable pcntl support... yes, sharedchecking for fork... yeschecking for waitpid... yeschecking for sigaction... yeschecking for getpriority... yeschecking for setpriority... yeschecking for wait3... yeschecking for sigprocmask... yeschecking for sigwaitinfo... nochecking for sigtimedwait... nochecking for ld used by cc... /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ldchecking if the linker (/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ld) is GNU ld... nochecking for /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ld option to reload object files... -rchecking for BSD-compatible nm... /usr/bin/nmchecking whether ln -s works... yeschecking how to recognize dependent libraries... pass_allchecking for ANSI C header files... yeschecking for sys/types.h... yeschecking for sys/stat.h... yeschecking for stdlib.h... yeschecking for string.h... yeschecking for memory.h... yeschecking for strings.h... yeschecking for inttypes.h... yeschecking for stdint.h... yeschecking for unistd.h... yeschecking dlfcn.h usability... yeschecking dlfcn.h presence... yeschecking for dlfcn.h... yeschecking the maximum length of command line arguments... 196608checking command to parse /usr/bin/nm output from cc object... okchecking for objdir... .libschecking for ar... archecking for ranlib... ranlibchecking for strip... stripchecking for dsymutil... dsymutilchecking for nmedit... nmeditchecking for -single_module linker flag... yeschecking for -exported_symbols_list linker flag... yeschecking if cc supports -fno-rtti -fno-exceptions... yeschecking for cc option to produce PIC... -fno-commonchecking if cc PIC flag -fno-common works... yeschecking if cc static flag -static works... nochecking if cc supports -c -o file.o... yeschecking whether the cc linker (/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ld) supports shared libraries... yeschecking dynamic linker characteristics... darwin13.4.0 dyldchecking how to hardcode library paths into programs... immediatechecking whether stripping libraries is possible... yeschecking if libtool supports shared libraries... yeschecking whether to build shared libraries... yeschecking whether to build static libraries... no
creating libtoolappending configuration tag "CXX" to libtoolconfigure: creating ./config.statusconfig.status: creating config.hconfig.status: config.h is unchangedandy@AndyMacBookPro:~/Downloads/php-5.4.30/ext/pcntl$ make && make install/bin/sh /Users/andy/Downloads/php-5.4.30/ext/pcntl/libtool --mode=install cp ./pcntl.la /Users/andy/Downloads/php-5.4.30/ext/pcntl/modulescp ./.libs/pcntl.so /Users/andy/Downloads/php-5.4.30/ext/pcntl/modules/pcntl.socp ./.libs/pcntl.lai /Users/andy/Downloads/php-5.4.30/ext/pcntl/modules/pcntl.la----------------------------------------------------------------------Libraries have been installed in: /Users/andy/Downloads/php-5.4.30/ext/pcntl/modules
If you ever happen to want to link against installed librariesin a given directory, LIBDIR, you must either use libtool, andspecify the full pathname of the library, or use the `-LLIBDIR'flag during linking and do at least one of the following: - add LIBDIR to the `DYLD_LIBRARY_PATH' environment variable during execution
See any operating system documentation about shared libraries formore information, such as the ld(1) and ld.so(8) manual pages.----------------------------------------------------------------------
Build complete.Don't forget to run 'make test'.
Installing shared extensions: /usr/lib/php/extensions/no-debug-non-zts-20100525/cp: /usr/lib/php/extensions/no-debug-non-zts-20100525/#INST@3041#: Permission deniedmake: *** [install-modules] Error 1andy@AndyMacBookPro:~/Downloads/php-5.4.30/ext/pcntl$ php -m[PHP Modules]andybcmathbz2calendarCorectypecurldatedbadomeregexiffileinfofilterftpgdhashiconvjsonldaplibxmlmbstringmssqlmysqlmysqlimysqlndopensslpcrePDOpdo_dblibpdo_mysqlPDO_ODBCpdo_sqlitePharposixreadlineredisReflectionsessionshmopSimpleXMLsnmpsoapsocketsSPLsqlite3standardsysvmsgsysvsemsysvshmtidytokenizerwddxxdebugxmlxmlreaderxmlrpcxmlwriterxslzipzlib
[Zend Modules]Xdebug
andy@AndyMacBookPro:~/Downloads/php-5.4.30/ext/pcntl$ vim /private/etc/php.iniandy@AndyMacBookPro:~/Downloads/php-5.4.30/ext/pcntl$ sudo vim /private/etc/php.iniPassword:andy@AndyMacBookPro:~/Downloads/php-5.4.30/ext/pcntl$ php -mPHP Warning: PHP Startup: Unable to load dynamic library '/usr/lib/php/extensions/no-debug-non-zts-20100525/pcntl' - dlopen(/usr/lib/php/extensions/no-debug-non-zts-20100525/pcntl, 9): image not found in Unknown on line 0[PHP Modules]andybcmathbz2calendarCorectypecurldatedbadomeregexiffileinfofilterftpgdhashiconvjsonldaplibxmlmbstringmssqlmysqlmysqlimysqlndopensslpcrePDOpdo_dblibpdo_mysqlPDO_ODBCpdo_sqlitePharposixreadlineredisReflectionsessionshmopSimpleXMLsnmpsoapsocketsSPLsqlite3standardsysvmsgsysvsemsysvshmtidytokenizerwddxxdebugxml