Como instalar apache + php + pthreads

Como instalar apache + php + pthreads

04 LTS 64 bits.

O que eu realmente adoraria fazer é sudo apt-get install libapache2-mod-php5compilar o PHP --enable-maintainer-ztspara poder instalar posteriormente o pthreads com o pecl install pthreads. Infelizmente entendo que não é possível. Eu sei que a maneira mais fácil é recompilar o PHP junto com suporte ao apache e zts. No entanto, eu realmente gosto da maneira como o pacote Ubuntu PHP padrão é configurado e estou acostumado com os caminhos para configuração CLI php.ini, configuração Apache php.ini e outros caminhos para módulos e arquivos que este pacote Ubuntu define. Então, eu só quero mudar um pouco a fonte do pacote e instalá-lo.

# Get the stuff necessary to build the package
sudo apt-get build-dep php5-common

# Get the package source
sudo apt-get source php5-common

Neste ponto, estou obtendo fontes não para o pacote php5-common, mas para todo o pacote php5. Se eu fizesse isso sudo make && make installneste momento, isso significaria que estou instalando muitas coisas desnecessárias?

# Add configuration options
./configure --enable-maintainer-zts

Isso significa que estou anexando uma opção de configuração? Ou estou gerando uma configuração totalmente nova?

Alternativa neste momentoExiste uma maneira de obter as opções de configuração que este pacote define, para que eu possa pegar uma fonte php do php.net e compilá-la com

$ ./configure  --prefix=package_prefix \ // Option 1 from package
--enable-embed \ // Option 2 from package
--with-regex=php \ // Option 3 from package

Continuando a ideia principal...

Solução 1

# Compile (Not compiling)
sudo make && make install

Estarei construindo PHP com TUDO neste momento? Se eu compilar assim, não conseguirei remover a bagunça que fiz usando sudo apt-get purge php5?

Solução 2

# ReCompile the package
dpkg-buildpackage -rfakeroot -uc -b

Isso também não compila. Corrija meus passos para que eu possa instalar tudo corretamente.

Responder1

Você pode obter as opções facilmente assim (você pode procurar no pacote fonte, mas isso é bem menos trabalhoso):

$ sudo apt-get install php5-dev
$ php-config --configure-options

--prefix=/usr --with-apxs2=/usr/bin/apxs2 --with-config-file-path=/etc/php5/apache2 
--with-config-file-scan-dir=/etc/php5/apache2/conf.d --build=x86_64-linux-gnu 
--host=x86_64-linux-gnu --sysconfdir=/etc --localstatedir=/var --mandir=/usr/share/man 
--disable-debug --with-regex=php --disable-rpath --disable-static --with-pic 
--with-layout=GNU --with-pear=/usr/share/php --enable-calendar --enable-sysvsem 
--enable-sysvshm --enable-sysvmsg --enable-bcmath --with-bz2 --enable-ctype 
--with-db4 --without-gdbm --with-iconv --enable-exif --enable-ftp --with-gettext 
--enable-mbstring --with-pcre-regex=/usr --enable-shmop --enable-sockets 
--enable-wddx --with-libxml-dir=/usr --with-zlib --with-kerberos=/usr 
--with-openssl=/usr --enable-soap --enable-zip --with-mhash=yes --with-system-tzdata 
--with-mysql-sock=/var/run/mysqld/mysqld.sock --enable-dtrace --without-mm 
--with-curl=shared,/usr --with-enchant=shared,/usr --with-zlib-dir=/usr 
--with-gd=shared,/usr --enable-gd-native-ttf --with-gmp=shared,/usr 
--with-jpeg-dir=shared,/usr --with-xpm-dir=shared,/usr/X11R6 
--with-png-dir=shared,/usr --with-freetype-dir=shared,/usr 
--with-vpx-dir=shared,/usr --enable-intl=shared --without-t1lib 
--with-ldap=shared,/usr --with-ldap-sasl=/usr --with-mysql=shared,/usr 
--with-mysqli=shared,/usr/bin/mysql_config --with-pspell=shared,/usr 
--with-unixODBC=shared,/usr --with-recode=shared,/usr --with-xsl=shared,/usr 
--with-snmp=shared,/usr --with-sqlite3=shared,/usr --with-mssql=shared,/usr 
--with-tidy=shared,/usr --with-xmlrpc=shared --with-pgsql=shared,/usr

Veja man php-configpara ainda mais opções.

informação relacionada