tomovic
Anmeldungsdatum: 25. August 2013
Beiträge: 238
|
hallo,
ich möchte gerne eine php Erweiterung schreiben.
Vom Prinzip her die Datei in c nachbilden.
function self_concat($string,$n)
{
$result = "";
for ($i = 0;$i < $n;$i++)
{
$result .=$string;
}
return $result;
} ich habe die 5.5.38 php Version per
./configure installiert. Laut Buch soll ich den folgenden Inhalt
string self_concat(string str, int n)
als myfunktions.def in /def des php Baums speichern. leider finde ich kein def Verzeichnis in meinem php Baum auch nicht mit
locate /def
|
sebix
Ehemalige
Anmeldungsdatum: 14. April 2009
Beiträge: 5582
|
tomovic schrieb: Laut Buch soll ich
Fuer welche PHP Version wurde das Buch denn geschrieben?
|
tomovic
(Themenstarter)
Anmeldungsdatum: 25. August 2013
Beiträge: 238
|
thx,
das Buch ist von 2005 Verlag:Addison Wesley
Das ist ein sehr gutes Buch ☺ Wie sieht die Alternative zu /def aus?
|
tomovic
(Themenstarter)
Anmeldungsdatum: 25. August 2013
Beiträge: 238
|
ok, einbisches google ☺
das habe ich gefunden:
von 2015
https://www.phpclasses.org/blog/post/304-How-to-Create-a-PHP-C-Extension-to-Manipulate-Arrays--Part-1-Basic-Array-Class-Extension.html So wie ich es verstanden habe, ist der Prototype erstmal egal. schnipp...
~/dev/c/php-src/ext/ext_skel --extname=slobel --skel=$HOME/dev/c/php-src/ext/skeleton/
...schnipp der Pfad finde ich nicht, was ist mit: php-src? kein ext_skel ? Bearbeitet von sebix: Bitte verwende in Zukunft Codeblöcke, um die Übersicht im Forum zu verbessern!
|
sebix
Ehemalige
Anmeldungsdatum: 14. April 2009
Beiträge: 5582
|
tomovic schrieb: schnipp...
~/dev/c/php-src/ext/ext_skel --extname=slobel --skel=$HOME/dev/c/php-src/ext/skeleton/
...schnipp der Pfad finde ich nicht, was ist mit: php-src? kein ext_skel ?
php-src ist hier der Pfad in dem du den Sourcecode von PHP liegen hast. Im letzten Release der 5.x-Reihe gibt es den Pfad ext/ext_skel jedenfalls.
|
tomovic
(Themenstarter)
Anmeldungsdatum: 25. August 2013
Beiträge: 238
|
ok, hab noch mal die 5.5.38 heruntergeladen... http://php.net/downloads.php ... entpackt... Es gibt kein Verzeichnis → php-src Auch kein src Verzeichnis 😮
|
sebix
Ehemalige
Anmeldungsdatum: 14. April 2009
Beiträge: 5582
|
tomovic schrieb: ok, hab noch mal die 5.5.38 heruntergeladen... http://php.net/downloads.php ... entpackt... Es gibt kein Verzeichnis → php-src Auch kein src Verzeichnis 😮
Das ist das Verzeichnis das du heruntergeladen hast. In dem Archiv findest du direkt die ext/ext_skel Datei.
|
tomovic
(Themenstarter)
Anmeldungsdatum: 25. August 2013
Beiträge: 238
|
sorry dass ich mich erst jetzt gemeldet habe, hatte viel um die Ohren. Wenn ich jetzt im Firefox info.php ausführe dann kommt die Version die gewollte habe. Die myfunctions.def ist im Ordner /ext und hat den inhalt:
string self_concat(string str, int n ) in der Console führe ich folgendes aus:
./ext_skel --extname --proto=/home/tomovic/Downloads/php-5.5.38/ext/myfunctions.def ich überschrieb die myfunctions.c mit dem Inhalt: PHP_FUNCTION(self_concat)
{
char *str = NULL;
int argc = ZEND_NUM_ARGS();
size_t str_len;
zend_long n;
char *result; /*points to resulting string*/
char *ptr; /*points to the next location we want to copy*/
int result_length; /*length of resulting string*/
if (zend_parse_parameters(argc TSRMLS_CC, "sl", &str, &str_len, &n) == FAILURE)
return;
/*calculate length of result*/
result_length = (str_len * n);
result = (char *) emalloc(result_length + 1);
ptr = result;
while (n--) {
memcpy(ptr, str, str_len);
ptr += str_len;
}
*ptr = '\0';
/* Return result to the scripting engine without duplicating it*/
RETURN_STRINGL(result, result_length);
//php_error(E_WARNING, "self_concat: not yet implemented");
} in /var/www/html ist die Datei self_concat.php mit dem Inhalt:
<?php
for($i = 1; $i <=3; $i++)
}
print self_concat("ThisIsUseless", $i);
print "\n";
{
?> Nach:
./configure --enable-debug --enable-maintainer-zts --with-apxs2 --disable-cgi --enable-cli --disable-pear --disable-xml --without-mysql --enable-maintainer-zts --with-extension --enable-myfunctions Kam:
....Schnipp
Thank you for using PHP.
config.status: creating php5.spec
config.status: creating main/build-defs.h
config.status: creating scripts/phpize
config.status: creating scripts/man1/phpize.1
config.status: creating scripts/php-config
config.status: creating scripts/man1/php-config.1
config.status: creating sapi/cli/php.1
config.status: creating ext/phar/phar.1
config.status: creating ext/phar/phar.phar.1
config.status: creating main/php_config.h
config.status: main/php_config.h is unchanged
config.status: executing default commands
configure: WARNING: unrecognized options: --disable-pear, --with-extension, --enable-myfunctions
root@DELL:~/Downloads/php-5.5.38#
|
sebix
Ehemalige
Anmeldungsdatum: 14. April 2009
Beiträge: 5582
|
tomovic schrieb: Nach:
./configure --enable-debug --enable-maintainer-zts --with-apxs2 --disable-cgi --enable-cli --disable-pear --disable-xml --without-mysql --enable-maintainer-zts --with-extension --enable-myfunctions Kam:
....Schnipp
Thank you for using PHP.
config.status: creating php5.spec
config.status: creating main/build-defs.h
config.status: creating scripts/phpize
config.status: creating scripts/man1/phpize.1
config.status: creating scripts/php-config
config.status: creating scripts/man1/php-config.1
config.status: creating sapi/cli/php.1
config.status: creating ext/phar/phar.1
config.status: creating ext/phar/phar.phar.1
config.status: creating main/php_config.h
config.status: main/php_config.h is unchanged
config.status: executing default commands
configure: WARNING: unrecognized options: --disable-pear, --with-extension, --enable-myfunctions
root@DELL:~/Downloads/php-5.5.38#
Dann nimm halt stattdessen die richtigen Parameter: Statt --disable-pear also --without-pear , --with-extension gibts auch nicht, du musst schon extension durch die extension ersetzen und -enable-myfunctions kennst das Skript auch nicht. Das Skript hat eine Hilfe, da steht viel drin...
|
tomovic
(Themenstarter)
Anmeldungsdatum: 25. August 2013
Beiträge: 238
|
thx, ./configure --enable-debug --enable-maintainer-zts --with-apxs2 --disable-cgi --enable-cli --without-pear --disable-xml --without-mysql --enable-maintainer-zts --enable-myfunctions Thank you for using PHP.
config.status: creating php5.spec
config.status: creating main/build-defs.h
config.status: creating scripts/phpize
config.status: creating scripts/man1/phpize.1
config.status: creating scripts/php-config
config.status: creating scripts/man1/php-config.1
config.status: creating sapi/cli/php.1
config.status: creating ext/phar/phar.1
config.status: creating ext/phar/phar.phar.1
config.status: creating main/php_config.h
config.status: main/php_config.h is unchanged
config.status: executing default commands
configure: WARNING: unrecognized options: --enable-myfunctions
root@DELL:~/Downloads/php-5.5.38# --enable-myfunctions ist meine Funktion, die in C geschreiben ist.
--with-extension sollte die Funtkion sein, die die Erweiterung zulässt. Dein Zitat:
--with-extension gibts auch nicht, du musst schon extension durch die extension ersetzen
Zitat Ende. ähhh ?
|
sebix
Ehemalige
Anmeldungsdatum: 14. April 2009
Beiträge: 5582
|
tomovic schrieb: Dein Zitat:
--with-extension gibts auch nicht, du musst schon extension durch die extension ersetzen
Zitat Ende.
Ich finde diese Option nicht in der Hilfe des Skripts. Hast du dir das schon durchgelesen oder woher hast du diesen Parameter?
|
tomovic
(Themenstarter)
Anmeldungsdatum: 25. August 2013
Beiträge: 238
|
https://books.google.de/books?id=AHFNU8EUqmQC&printsec=frontcover&dq=aus+erster+hand+php&hl=de&sa=X&redir_esc=y#v=onepage&q=556&f=false Seite 556 oben wird der Schalter angegeben. ./configure --enable-debug --enable-maintainer-zts --with-apxs2 --disable-cgi --enable-cli --without-pear --disable-xml --without-mysql --enable-maintainer-zts --with-EXTENSION=shared[,/home/tomovic/Downloads/php-5.5.38/ext/myfunctions] geht auch nicht, obwohl der 100% richtig ist. config.status: main/php_config.h is unchanged
config.status: executing default commands
configure: WARNING: unrecognized options: --with-EXTENSION
root@DELL:~/Downloads/php-5.5.38# wie meinst du das?
extension durch extension ersetzen?
|
sebix
Ehemalige
Anmeldungsdatum: 14. April 2009
Beiträge: 5582
|
Nochmals etwa deutlicher: In der Hilfe des Skripts finden sich alle von diesem Skript unterstuetzten Parameter. Sieh sie dir an. ./configure --help
|
tomovic
(Themenstarter)
Anmeldungsdatum: 25. August 2013
Beiträge: 238
|
./configure -help > help.txt
`configure' configures this package to adapt to many kinds of systems.
Usage: ./configure [OPTION]... [VAR=VALUE]...
To assign environment variables (e.g., CC, CFLAGS...), specify them as
VAR=VALUE. See below for descriptions of some of the useful variables.
Defaults for the options are specified in brackets.
Configuration:
-h, --help display this help and exit
--help=short display options specific to this package
--help=recursive display the short help of all the included packages
-V, --version display version information and exit
-q, --quiet, --silent do not print `checking ...' messages
--cache-file=FILE cache test results in FILE [disabled]
-C, --config-cache alias for `--cache-file=config.cache'
-n, --no-create do not create output files
--srcdir=DIR find the sources in DIR [configure dir or `..']
Installation directories:
--prefix=PREFIX install architecture-independent files in PREFIX
[/usr/local]
--exec-prefix=EPREFIX install architecture-dependent files in EPREFIX
[PREFIX]
By default, `make install' will install all the files in
`/usr/local/bin', `/usr/local/lib' etc. You can specify
an installation prefix other than `/usr/local' using `--prefix',
for instance `--prefix=$HOME'.
For better control, use the options below.
Fine tuning of the installation directories:
--bindir=DIR user executables [EPREFIX/bin]
--sbindir=DIR system admin executables [EPREFIX/sbin]
--libexecdir=DIR program executables [EPREFIX/libexec]
--sysconfdir=DIR read-only single-machine data [PREFIX/etc]
--sharedstatedir=DIR modifiable architecture-independent data [PREFIX/com]
--localstatedir=DIR modifiable single-machine data [PREFIX/var]
--libdir=DIR object code libraries [EPREFIX/lib]
--includedir=DIR C header files [PREFIX/include]
--oldincludedir=DIR C header files for non-gcc [/usr/include]
--datarootdir=DIR read-only arch.-independent data root [PREFIX/share]
--datadir=DIR read-only architecture-independent data [DATAROOTDIR]
--infodir=DIR info documentation [DATAROOTDIR/info]
--localedir=DIR locale-dependent data [DATAROOTDIR/locale]
--mandir=DIR man documentation [DATAROOTDIR/man]
--docdir=DIR documentation root [DATAROOTDIR/doc/PACKAGE]
--htmldir=DIR html documentation [DOCDIR]
--dvidir=DIR dvi documentation [DOCDIR]
--pdfdir=DIR pdf documentation [DOCDIR]
--psdir=DIR ps documentation [DOCDIR]
System types:
--build=BUILD configure for building on BUILD [guessed]
--host=HOST cross-compile to build programs to run on HOST [BUILD]
--target=TARGET configure for building compilers for TARGET [HOST]
Optional Features and Packages:
--disable-option-checking ignore unrecognized --enable/--with options
--disable-FEATURE do not include FEATURE (same as --enable-FEATURE=no)
--enable-FEATURE[=ARG] include FEATURE [ARG=yes]
--with-PACKAGE[=ARG] use PACKAGE [ARG=yes]
--without-PACKAGE do not use PACKAGE (same as --with-PACKAGE=no)
--with-libdir=NAME Look for libraries in .../NAME rather than .../lib
--disable-rpath Disable passing additional runtime library
search paths
--enable-re2c-cgoto Enable -g flag to re2c to use computed goto gcc extension
SAPI modules:
--with-aolserver=DIR Specify path to the installed AOLserver
--with-apxs=FILE Build shared Apache 1.x module. FILE is the optional
pathname to the Apache apxs tool apxs
--with-apache=DIR Build Apache 1.x module. DIR is the top-level Apache
build directory /usr/local/apache
--enable-mod-charset APACHE: Enable transfer tables for mod_charset (Rus Apache)
--with-apxs2filter=FILE
EXPERIMENTAL: Build shared Apache 2.0 Filter module. FILE is the optional
pathname to the Apache apxs tool apxs
--with-apxs2=FILE Build shared Apache 2.0 Handler module. FILE is the optional
pathname to the Apache apxs tool apxs
--with-apache-hooks=FILE
EXPERIMENTAL: Build shared Apache 1.x module. FILE is the optional
pathname to the Apache apxs tool apxs
--with-apache-hooks-static=DIR
EXPERIMENTAL: Build Apache 1.x module. DIR is the top-level Apache
build directory /usr/local/apache
--enable-mod-charset APACHE (hooks): Enable transfer tables for mod_charset (Rus Apache)
--with-caudium=DIR Build PHP as a Pike module for use with Caudium.
DIR is the Caudium server dir /usr/local/caudium/server
--disable-cli Disable building CLI version of PHP
(this forces --without-pear)
--with-continuity=DIR Build PHP as Continuity Server module.
DIR is path to the installed Continuity Server root
--enable-embed=TYPE EXPERIMENTAL: Enable building of embedded SAPI library
TYPE is either 'shared' or 'static'. TYPE=shared
--enable-fpm Enable building of the fpm SAPI executable
--with-fpm-user=USER Set the user for php-fpm to run as. (default: nobody)
--with-fpm-group=GRP Set the group for php-fpm to run as. For a system user, this
should usually be set to match the fpm username (default: nobody)
--with-fpm-systemd Activate systemd integration
--with-isapi=DIR Build PHP as an ISAPI module for use with Zeus
--with-litespeed Build PHP as litespeed module
--with-milter=DIR Build PHP as Milter application
--with-nsapi=DIR Build PHP as NSAPI module for Netscape/iPlanet/Sun Webserver
--with-phttpd=DIR Build PHP as phttpd module
--with-pi3web=DIR Build PHP as Pi3Web module
--with-roxen=DIR Build PHP as a Pike module. DIR is the base Roxen
directory, normally /usr/local/roxen/server
--enable-roxen-zts ROXEN: Build the Roxen module using Zend Thread Safety
--with-thttpd=SRCDIR Build PHP as thttpd module
--with-tux=MODULEDIR Build PHP as a TUX module (Linux only)
--with-webjames=SRCDIR Build PHP as a WebJames module (RISC OS only)
--disable-cgi Disable building CGI version of PHP
General settings:
--enable-gcov Enable GCOV code coverage (requires LTP) - FOR DEVELOPERS ONLY!!
--enable-debug Compile with debugging symbols
--with-layout=TYPE Set how installed files will be laid out. Type can
be either PHP or GNU [PHP]
--with-config-file-path=PATH
Set the path in which to look for php.ini [PREFIX/lib]
--with-config-file-scan-dir=PATH
Set the path where to scan for configuration files
--enable-sigchild Enable PHP's own SIGCHLD handler
--enable-libgcc Enable explicitly linking against libgcc
--disable-short-tags Disable the short-form <? start tag by default
--enable-dmalloc Enable dmalloc
--disable-ipv6 Disable IPv6 support
--enable-dtrace Enable DTrace support
--enable-fd-setsize Set size of descriptor sets
Extensions:
--with-EXTENSION=shared[,PATH]
NOTE: Not all extensions can be build as 'shared'.
Example: --with-foobar=shared,/usr/local/foobar/
o Builds the foobar extension as shared extension.
o foobar package install prefix is /usr/local/foobar/
--disable-all Disable all extensions which are enabled by default
--with-regex=TYPE Regex library type: system, php. TYPE=php
WARNING: Do NOT use unless you know what you are doing!
--disable-libxml Disable LIBXML support
--with-libxml-dir=DIR LIBXML: libxml2 install prefix
--with-openssl=DIR Include OpenSSL support (requires OpenSSL >= 0.9.6)
--with-kerberos=DIR OPENSSL: Include Kerberos support
--with-pcre-regex=DIR Include Perl Compatible Regular Expressions support.
DIR is the PCRE install prefix BUNDLED
--without-sqlite3=DIR Do not include SQLite3 support. DIR is the prefix to
SQLite3 installation directory.
--with-zlib=DIR Include ZLIB support (requires zlib >= 1.0.9)
--with-zlib-dir=<DIR> Define the location of zlib install directory
--enable-bcmath Enable bc style precision math functions
--with-bz2=DIR Include BZip2 support
--enable-calendar Enable support for calendar conversion
--disable-ctype Disable ctype functions
--with-curl=DIR Include cURL support
--enable-dba Build DBA with bundled modules. To build shared DBA
extension use --enable-dba=shared
--with-qdbm=DIR DBA: QDBM support
--with-gdbm=DIR DBA: GDBM support
--with-ndbm=DIR DBA: NDBM support
--with-db4=DIR DBA: Oracle Berkeley DB 4.x or 5.x support
--with-db3=DIR DBA: Oracle Berkeley DB 3.x support
--with-db2=DIR DBA: Oracle Berkeley DB 2.x support
--with-db1=DIR DBA: Oracle Berkeley DB 1.x support/emulation
--with-dbm=DIR DBA: DBM support
--with-tcadb=DIR DBA: Tokyo Cabinet abstract DB support
--without-cdb=DIR DBA: CDB support (bundled)
--disable-inifile DBA: INI support (bundled)
--disable-flatfile DBA: FlatFile support (bundled)
--disable-dom Disable DOM support
--with-libxml-dir=DIR DOM: libxml2 install prefix
--with-enchant=DIR Include enchant support.
GNU Aspell version 1.1.3 or higher required.
--enable-exif Enable EXIF (metadata from images) support
--disable-fileinfo Disable fileinfo support
--disable-filter Disable input filter support
--with-pcre-dir FILTER: pcre install prefix
--enable-ftp Enable FTP support
--with-openssl-dir=DIR FTP: openssl install prefix
--with-gd=DIR Include GD support. DIR is the GD library base
install directory BUNDLED
--with-vpx-dir=DIR GD: Set the path to libvpx install prefix
--with-jpeg-dir=DIR GD: Set the path to libjpeg install prefix
--with-png-dir=DIR GD: Set the path to libpng install prefix
--with-zlib-dir=DIR GD: Set the path to libz install prefix
--with-xpm-dir=DIR GD: Set the path to libXpm install prefix
--with-freetype-dir=DIR GD: Set the path to FreeType 2 install prefix
--with-t1lib=DIR GD: Include T1lib support. T1lib version >= 5.0.0 required
--enable-gd-native-ttf GD: Enable TrueType string function
--enable-gd-jis-conv GD: Enable JIS-mapped Japanese font support
--with-gettext=DIR Include GNU gettext support
--with-gmp=DIR Include GNU MP support
--with-mhash=DIR Include mhash support
--disable-hash Disable hash support
--without-iconv=DIR Exclude iconv support
--with-imap=DIR Include IMAP support. DIR is the c-client install prefix
--with-kerberos=DIR IMAP: Include Kerberos support. DIR is the Kerberos install prefix
--with-imap-ssl=DIR IMAP: Include SSL support. DIR is the OpenSSL install prefix
--with-interbase=DIR Include InterBase support. DIR is the InterBase base
install directory /usr/interbase
--enable-intl Enable internationalization support
--with-icu-dir=DIR Specify where ICU libraries and headers can be found
--disable-json Disable JavaScript Object Serialization support
--with-ldap=DIR Include LDAP support
--with-ldap-sasl=DIR LDAP: Include Cyrus SASL support
--enable-mbstring Enable multibyte string support
--disable-mbregex MBSTRING: Disable multibyte regex support
--disable-mbregex-backtrack
MBSTRING: Disable multibyte regex backtrack check
--with-libmbfl=DIR MBSTRING: Use external libmbfl. DIR is the libmbfl base
install directory BUNDLED
--with-onig=DIR MBSTRING: Use external oniguruma. DIR is the oniguruma install prefix.
If DIR is not set, the bundled oniguruma will be used
--with-mcrypt=DIR Include mcrypt support
--with-mssql=DIR Include MSSQL-DB support. DIR is the FreeTDS home
directory /usr/local/freetds
--with-mysql=DIR Include MySQL support. DIR is the MySQL base
directory, if no DIR is passed or the value is
mysqlnd the MySQL native driver will be used
--with-mysql-sock=SOCKPATH
MySQL/MySQLi/PDO_MYSQL: Location of the MySQL unix socket pointer.
If unspecified, the default locations are searched
--with-zlib-dir=DIR MySQL: Set the path to libz install prefix
--with-mysqli=FILE Include MySQLi support. FILE is the path
to mysql_config. If no value or mysqlnd is passed
as FILE, the MySQL native driver will be used
--enable-embedded-mysqli
MYSQLi: Enable embedded support
Note: Does not work with MySQL native driver!
--with-oci8=DIR Include Oracle Database OCI8 support. DIR defaults to \$ORACLE_HOME.
Use --with-oci8=instantclient,/path/to/instant/client/lib
to use an Oracle Instant Client installation
--with-odbcver=HEX Force support for the passed ODBC version. A hex number is expected, default 0x0300.
Use the special value of 0 to prevent an explicit ODBCVER to be defined.
--with-adabas=DIR Include Adabas D support /usr/local
--with-sapdb=DIR Include SAP DB support /usr/local
--with-solid=DIR Include Solid support /usr/local/solid
--with-ibm-db2=DIR Include IBM DB2 support /home/db2inst1/sqllib
--with-ODBCRouter=DIR Include ODBCRouter.com support /usr
--with-empress=DIR Include Empress support \$EMPRESSPATH
(Empress Version >= 8.60 required)
--with-empress-bcs=DIR
Include Empress Local Access support \$EMPRESSPATH
(Empress Version >= 8.60 required)
--with-birdstep=DIR Include Birdstep support /usr/local/birdstep
--with-custom-odbc=DIR Include user defined ODBC support. DIR is ODBC install base
directory /usr/local. Make sure to define CUSTOM_ODBC_LIBS and
have some odbc.h in your include dirs. f.e. you should define
following for Sybase SQL Anywhere 5.5.00 on QNX, prior to
running this configure script:
CPPFLAGS=\"-DODBC_QNX -DSQLANY_BUG\"
LDFLAGS=-lunix
CUSTOM_ODBC_LIBS=\"-ldblib -lodbc\"
--with-iodbc=DIR Include iODBC support /usr/local
--with-esoob=DIR Include Easysoft OOB support /usr/local/easysoft/oob/client
--with-unixODBC=DIR Include unixODBC support /usr/local
--with-dbmaker=DIR Include DBMaker support
--enable-opcache Enable Zend OPcache support
--enable-pcntl Enable pcntl support (CLI/CGI only)
--disable-pdo Disable PHP Data Objects support
--with-pdo-dblib=DIR PDO: DBLIB-DB support. DIR is the FreeTDS home directory
--with-pdo-firebird=DIR PDO: Firebird support. DIR is the Firebird base
install directory /opt/firebird
--with-pdo-mysql=DIR PDO: MySQL support. DIR is the MySQL base directory
If no value or mysqlnd is passed as DIR, the
MySQL native driver will be used
--with-zlib-dir=DIR PDO_MySQL: Set the path to libz install prefix
--with-pdo-oci=DIR PDO: Oracle OCI support. DIR defaults to \$ORACLE_HOME.
Use --with-pdo-oci=instantclient,prefix,version
for an Oracle Instant Client SDK.
For example on Linux with 11.2 RPMs use:
--with-pdo-oci=instantclient,/usr,11.2
With 10.2 RPMs use:
--with-pdo-oci=instantclient,/usr,10.2.0.4
--with-pdo-odbc=flavour,dir
PDO: Support for 'flavour' ODBC driver.
include and lib dirs are looked for under 'dir'.
'flavour' can be one of: ibm-db2, iODBC, unixODBC, generic
If ',dir' part is omitted, default for the flavour
you have selected will be used. e.g.:
--with-pdo-odbc=unixODBC
will check for unixODBC under /usr/local. You may attempt
to use an otherwise unsupported driver using the \"generic\"
flavour. The syntax for generic ODBC support is:
--with-pdo-odbc=generic,dir,libname,ldflags,cflags
When built as 'shared' the extension filename is always pdo_odbc.so
--with-pdo-pgsql=DIR PDO: PostgreSQL support. DIR is the PostgreSQL base
install directory or the path to pg_config
--without-pdo-sqlite=DIR
PDO: sqlite 3 support. DIR is the sqlite base
install directory BUNDLED
--with-pgsql=DIR Include PostgreSQL support. DIR is the PostgreSQL
base install directory or the path to pg_config
--disable-phar Disable phar support
--disable-posix Disable POSIX-like functions
--with-pspell=DIR Include PSPELL support.
GNU Aspell version 0.50.0 or higher required
--with-libedit=DIR Include libedit readline replacement (CLI/CGI only)
--with-readline=DIR Include readline support (CLI/CGI only)
--with-recode=DIR Include recode support
--disable-session Disable session support
--with-mm=DIR SESSION: Include mm support for session storage
--enable-shmop Enable shmop support
--disable-simplexml Disable SimpleXML support
--with-libxml-dir=DIR SimpleXML: libxml2 install prefix
--with-snmp=DIR Include SNMP support
--with-openssl-dir=DIR SNMP: openssl install prefix
--enable-soap Enable SOAP support
--with-libxml-dir=DIR SOAP: libxml2 install prefix
--enable-sockets Enable sockets support
--with-sybase-ct=DIR Include Sybase-CT support. DIR is the Sybase home
directory /home/sybase
--enable-sysvmsg Enable sysvmsg support
--enable-sysvsem Enable System V semaphore support
--enable-sysvshm Enable the System V shared memory support
--with-tidy=DIR Include TIDY support
--disable-tokenizer Disable tokenizer support
--enable-wddx Enable WDDX support
--with-libxml-dir=DIR WDDX: libxml2 install prefix
--with-libexpat-dir=DIR WDDX: libexpat dir for XMLRPC-EPI (deprecated)
--disable-xml Disable XML support
--with-libxml-dir=DIR XML: libxml2 install prefix
--with-libexpat-dir=DIR XML: libexpat install prefix (deprecated)
--disable-xmlreader Disable XMLReader support
--with-libxml-dir=DIR XMLReader: libxml2 install prefix
--with-xmlrpc=DIR Include XMLRPC-EPI support
--with-libxml-dir=DIR XMLRPC-EPI: libxml2 install prefix
--with-libexpat-dir=DIR XMLRPC-EPI: libexpat dir for XMLRPC-EPI (deprecated)
--with-iconv-dir=DIR XMLRPC-EPI: iconv dir for XMLRPC-EPI
--disable-xmlwriter Disable XMLWriter support
--with-libxml-dir=DIR XMLWriter: libxml2 install prefix
--with-xsl=DIR Include XSL support. DIR is the libxslt base
install directory (libxslt >= 1.1.0 required)
--enable-zip Include Zip read/write support
--with-zlib-dir=DIR ZIP: Set the path to libz install prefix
--with-pcre-dir ZIP: pcre install prefix
--enable-mysqlnd Enable mysqlnd explicitly, will be done implicitly
when required by other extensions
--disable-mysqlnd-compression-support
Disable support for the MySQL compressed protocol in mysqlnd
--with-zlib-dir=DIR mysqlnd: Set the path to libz install prefix
PEAR:
--with-pear=DIR Install PEAR in DIR [PREFIX/lib/php]
--without-pear Do not install PEAR
Zend:
--with-zend-vm=TYPE Set virtual machine dispatch method. Type is
one of "CALL", "SWITCH" or "GOTO" TYPE=CALL
--enable-maintainer-zts Enable thread safety - for code maintainers only!!
--disable-inline-optimization
If building zend_execute.lo fails, try this switch
--enable-zend-signals Use zend signal handling
TSRM:
--with-tsrm-pth=pth-config
Use GNU Pth
--with-tsrm-st Use SGI's State Threads
--with-tsrm-pthreads Use POSIX threads (default)
Libtool:
--enable-shared=PKGS Build shared libraries default=yes
--enable-static=PKGS Build static libraries default=yes
--enable-fast-install=PKGS
Optimize for fast installation default=yes
--with-gnu-ld Assume the C compiler uses GNU ld default=no
--disable-libtool-lock Avoid locking (might break parallel builds)
--with-pic Try to use only PIC/non-PIC objects default=use both
--with-tags=TAGS Include additional configurations automatic
Some influential environment variables:
CC C compiler command
CFLAGS C compiler flags
LDFLAGS linker flags, e.g. -L<lib dir> if you have libraries in a
nonstandard directory <lib dir>
LIBS libraries to pass to the linker, e.g. -l<library>
CPPFLAGS (Objective) C/C++ preprocessor flags, e.g. -I<include dir> if
you have headers in a nonstandard directory <include dir>
CPP C preprocessor
YACC The `Yet Another Compiler Compiler' implementation to use.
Defaults to the first program found out of: `bison -y', `byacc',
`yacc'.
YFLAGS The list of arguments that will be passed by default to $YACC.
This script will default YFLAGS to the empty string to avoid a
default value of `-d' given by some make applications.
CXX C++ compiler command
CXXFLAGS C++ compiler flags
CXXCPP C++ preprocessor
Use these variables to override the choices made by `configure' or to help
it to find libraries and programs with nonstandard names/locations.
Report bugs to the package provider. ja, das habe ich schon gemacht, siehe oben, trotzdem kennt er --with-extension nicht
|
seahawk1986
Anmeldungsdatum: 27. Oktober 2006
Beiträge: 11257
Wohnort: München
|
tomovic schrieb: ./configure -help > help.txt
[...]
Extensions:
--with-EXTENSION=shared[,PATH]
NOTE: Not all extensions can be build as 'shared'.
Example: --with-foobar=shared,/usr/local/foobar/
o Builds the foobar extension as shared extension.
o foobar package install prefix is /usr/local/foobar/
[...] ja, das habe ich schon gemacht, siehe oben, trotzdem kennt er --with-extension nicht
Du musst EXTENSION durch den Namen der Erweiterung ersetzen, die du bauen willst.
|