|
php.net | support | documentation | report a bug | advanced search | search howto | statistics | random bug | login |
[2003-11-05 09:22 UTC] alan at pair dot com
Description:
------------
By default, libtool uses -pthread, but this causes a compile-time error with FreeBSD 4.8-STABLE:
libtool: Cannot find library `'
Reproduce code:
---------------
We configured as follows:
./configure --with-apache=/usr/pair/sw/apache_1.3.29 --with-config-file-path=/usr/local/etc --enable-magic-quotes --enable-bcmath --without-cdb --with-zlib-dir= /usr/local --with-gd --with-ttf --without-msql --with-mysql=/usr/local --with-iodbc --with-pdflib --enable-inline-optimization --disable-memory-limit --with-db --without-gdbm --with-ndbm --without-db2 --without-dbm --with-gettext --without-readline --with-recode --without-openssl --with-mcrypt --without-db3 --enable-dba --with-curl --with-png-dir=/usr/local/lib --with-jpeg-dir=/usr/local/lib --enable-calendar --with-mhash --enable-xslt --with-xslt-sablot --with-expat-dir=/usr/local --enable-gd-lzw-gif
make
However, I think it can be reproduced with just:
./configure
make
Expected result:
----------------
I expect it to compile.
Actual result:
--------------
It doesn't compile: it spits out a library error, instead.
A Patch:
diff -C 3 ltmain.sh ../php-4.3.3
*** ltmain.sh Mon Feb 10 12:12:17 2003
--- ../php-4.3.3/ltmain.sh Wed Oct 29 07:56:14 2003
***************
*** 1511,1516 ****
--- 1511,1519 ----
fi
continue
;;
+ -pthread) # KJM 10/29/03
+ continue
+ ;;
%DEPLIBS%)
alldeplibs=yes
continue
PatchesPull RequestsHistoryAllCommentsChangesGit/SVN commits
|
|||||||||||||||||||||||||||
Copyright © 2001-2025 The PHP GroupAll rights reserved. |
Last updated: Fri Oct 24 18:00:01 2025 UTC |
OK, with the old ltmain.sh and with those commands, PHP builds normally. So one of the configure options is triggering the pthread stuff. configure definitely knows to try -pthread, look in the source around line 9215. # Create a list of thread flags to try. Items starting with a "-" are # C compiler flags, and other items are library names, except for "none" # which indicates that we try without any flags at all. acx_pthread_flags="pthreads none -Kthread -kthread lthread -pthread -pthreads -mthreads pthread --thread-safe -mt" # The ordering *is* (sometimes) important. Some notes on the # individual items follow: ... # -pthread: Linux/gcc (kernel threads), BSD/gcc (userland threads) So when it decides to use -pthread, libtool later sees that and thinks it's a library reference (e.g. -lm is libm.so) and decides to try to analyze it with ld or whatever.