how to install pthread in ubuntu 12.10

非 Y 不嫁゛ 提交于 2019-12-29 07:21:53

问题


I have been strugling for hours on how to install pthread in my ubuntu server to allow php threading. Please help me.


回答1:


HOW TO INSTALL IN LINUX SYSTEM'S:

The following instructions will result in an isolated installation of PHP that does not affect your current installation.

1) Checkout PHP sources into a new directory on your system

cd /usr/src
git clone https://github.com/php/php-src
cd php-src

1a) Optionally checkout a specific version of PHP

git checkout PHP-5.6

2) Download the pthreads sources to the build directory (/ext)

cd ext
git clone https://github.com/krakjoe/pthreads
cd ../

3) Configure new isolated PHP installation

./buildconf --force
./configure --prefix=/opt/php-zts \
            --bindir=/opt/php-zts/bin \
            --with-config-file-dir=/opt/php-zts \
            --with-config-file-scan-dir=/opt/php-zts/modules.d/ \
            --enable-pthreads=shared \
            --with-curl=shared,/usr \
            --with-zlib \
            --with-libxml2 \
            --enable-simplexml \
            --with-mysql=mysqlnd \
            --with-pdo-mysql=mysqlnd \
            --enable-gd-native-ttf \
            --with-mysqli \
            --enable-shared \
            --enable-maintainer-zts \
            --enable-sockets \
            --with-curl=shared \
            --enable-mbstring
make -j8
make install
echo "extension=pthreads.so" > /opt/php-zts/modules.d/pthreads.ini

The configure command used here will result in a fairly standard installation with a sensible set of modules. If the build process fails, you should be able to resolve errors by installing developement packages, for example should the curl module fail to configure or build then

yum install curl-devel

Or the equivalent for your system should resolve the error, allowing the build to continue.

4) Symlink some useful things in /opt/php-zts/bin to /usr/local/bin

ln -s /opt/php-zts/bin/php /usr/local/bin/php-zts
ln -s /opt/php-zts/bin/phpize /usr/local/bin/phpize-zts
ln -s /opt/php-zts/bin/php-config /usr/local/bin/php-config-zts
ln -s /opt/php-zts/bin/php-cgi /usr/local/bin/php-cgi-zts
ln -s /opt/php-zts/bin/phpdbg /usr/local/bin/phpdbg-zts

At this point you have a working installation of PHP (version of your chosen branch or master if none) with pthreads available.

BUILDING MODULES FOR USE WITH ISOLATED INSTALLATION:

The procedure for building modules is as follows (APCu used for example):

cd /usr/src
git clone https://github.com/krakjoe/acpu
cd apcu
phpize-zts
./configure --with-php-config=php-config-zts
make -j8
make install
echo "extension=apcu.so" > /opt/php-zts/modules.d/apcu.ini

You must be sure to pass the correct php-config path when building modules since by default your system installation of PHP will be detected.

All blockquoted commands are ok for copypasta.



来源:https://stackoverflow.com/questions/18033191/how-to-install-pthread-in-ubuntu-12-10

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!