Re: 2 problems with extension
| From: | Adam Klobukowski | Date: | Mon, 16 Jun 2008 16:06:09 +0000 |
| Subject: | Re: 2 problems with extension | ||
| References: | 1 2 3 4 5 6 7 8 | Groups: | php.pecl.dev |
| Request: | Send a blank email to pecl-dev+get-5546@lists.php.net to get a copy of this message | ||
Antony Dovgal pisze:
On 14.06.2008 00:21, Adam Klobukowski wrote:Here it goes: $ make /bin/bash /home/adamk/myext/src/core/PHP_EXT/libtool --mode=compile gcc -I. -I/home/adamk/myext/src/core/PHP_EXT -DPHP_ATOM_INC -I/home/adamk/myext/src/core/PHP_EXT/include -I/home/adamk/myext/src/core/PHP_EXT/main -I/home/adamk/myext/src/core/PHP_EXT -I/usr/include/php5 -I/usr/include/php5/main -I/usr/include/php5/TSRM -I/usr/include/php5/Zend -I/usr/include/php5/ext -I/usr/include/php5/ext/date/lib -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -DHAVE_CONFIG_H -g -O2 -c /home/adamk/myext/src/core/PHP_EXT/_source1.c -o _source1.lo mkdir .libs gcc -I. -I/home/adamk/myext/src/core/PHP_EXT -DPHP_ATOM_INC -I/home/adamk/myext/src/core/PHP_EXT/include -I/home/adamk/myext/src/core/PHP_EXT/main -I/home/adamk/myext/src/core/PHP_EXT -I/usr/include/php5 -I/usr/include/php5/main -I/usr/include/php5/TSRM -I/usr/include/php5/Zend -I/usr/include/php5/ext -I/usr/include/php5/ext/date/lib -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -DHAVE_CONFIG_H -g -O2 -c /home/adamk/myext/src/core/PHP_EXT/_source1.c -fPIC -DPIC -o .libs/_source1.o /bin/bash /home/adamk/myext/src/core/PHP_EXT/libtool --mode=compile gcc -I. -I/home/adamk/myext/src/core/PHP_EXT -DPHP_ATOM_INC -I/home/adamk/myext/src/core/PHP_EXT/include -I/home/adamk/myext/src/core/PHP_EXT/main -I/home/adamk/myext/src/core/PHP_EXT -I/usr/include/php5 -I/usr/include/php5/main -I/usr/include/php5/TSRM -I/usr/include/php5/Zend -I/usr/include/php5/ext -I/usr/include/php5/ext/date/lib -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -DHAVE_CONFIG_H -g -O2 -c /home/adamk/myext/src/core/PHP_EXT/_source2.c -o _source2.lo gcc -I. -I/home/adamk/myext/src/core/PHP_EXT -DPHP_ATOM_INC -I/home/adamk/myext/src/core/PHP_EXT/include -I/home/adamk/myext/src/core/PHP_EXT/main -I/home/adamk/myext/src/core/PHP_EXT -I/usr/include/php5 -I/usr/include/php5/main -I/usr/include/php5/TSRM -I/usr/include/php5/Zend -I/usr/include/php5/ext -I/usr/include/php5/ext/date/lib -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -DHAVE_CONFIG_H -g -O2 -c /home/adamk/myext/src/core/PHP_EXT/_source2.c -fPIC -DPIC -o .libs/_source2.o /bin/bash /home/adamk/myext/src/core/PHP_EXT/libtool --mode=compile gcc -I. -I/home/adamk/myext/src/core/PHP_EXT -DPHP_ATOM_INC -I/home/adamk/myext/src/core/PHP_EXT/include -I/home/adamk/myext/src/core/PHP_EXT/main -I/home/adamk/myext/src/core/PHP_EXT -I/usr/include/php5 -I/usr/include/php5/main -I/usr/include/php5/TSRM -I/usr/include/php5/Zend -I/usr/include/php5/ext -I/usr/include/php5/ext/date/lib -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -DHAVE_CONFIG_H -g -O2 -c /home/adamk/myext/src/core/PHP_EXT/_source3.c -o _source3.lo gcc -I. -I/home/adamk/myext/src/core/PHP_EXT -DPHP_ATOM_INC -I/home/adamk/myext/src/core/PHP_EXT/include -I/home/adamk/myext/src/core/PHP_EXT/main -I/home/adamk/myext/src/core/PHP_EXT -I/usr/include/php5 -I/usr/include/php5/main -I/usr/include/php5/TSRM -I/usr/include/php5/Zend -I/usr/include/php5/ext -I/usr/include/php5/ext/date/lib -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -DHAVE_CONFIG_H -g -O2 -c /home/adamk/myext/src/core/PHP_EXT/_source3.c -fPIC -DPIC -o .libs/_source3.o /bin/bash /home/adamk/myext/src/core/PHP_EXT/libtool --mode=compile gcc -I. -I/home/adamk/myext/src/core/PHP_EXT -DPHP_ATOM_INC -I/home/adamk/myext/src/core/PHP_EXT/include -I/home/adamk/myext/src/core/PHP_EXT/main -I/home/adamk/myext/src/core/PHP_EXT -I/usr/include/php5 -I/usr/include/php5/main -I/usr/include/php5/TSRM -I/usr/include/php5/Zend -I/usr/include/php5/ext -I/usr/include/php5/ext/date/lib -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -DHAVE_CONFIG_H -g -O2 -c /home/adamk/myext/src/core/PHP_EXT/_source4.c -o _source4.lo gcc -I. -I/home/adamk/myext/src/core/PHP_EXT -DPHP_ATOM_INC -I/home/adamk/myext/src/core/PHP_EXT/include -I/home/adamk/myext/src/core/PHP_EXT/main -I/home/adamk/myext/src/core/PHP_EXT -I/usr/include/php5 -I/usr/include/php5/main -I/usr/include/php5/TSRM -I/usr/include/php5/Zend -I/usr/include/php5/ext -I/usr/include/php5/ext/date/lib -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -DHAVE_CONFIG_H -g -O2 -c /home/adamk/myext/src/core/PHP_EXT/_source4.c -fPIC -DPIC -o .libs/_source4.o /bin/bash /home/adamk/myext/src/core/PHP_EXT/libtool --mode=compile gcc -I. -I/home/adamk/myext/src/core/PHP_EXT -DPHP_ATOM_INC -I/home/adamk/myext/src/core/PHP_EXT/include -I/home/adamk/myext/src/core/PHP_EXT/main -I/home/adamk/myext/src/core/PHP_EXT -I/usr/include/php5 -I/usr/include/php5/main -I/usr/include/php5/TSRM -I/usr/include/php5/Zend -I/usr/include/php5/ext -I/usr/include/php5/ext/date/lib -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -DHAVE_CONFIG_H -g -O2 -c /home/adamk/myext/src/core/PHP_EXT/_source5.c -o _source5.lo gcc -I. -I/home/adamk/myext/src/core/PHP_EXT -DPHP_ATOM_INC -I/home/adamk/myext/src/core/PHP_EXT/include -I/home/adamk/myext/src/core/PHP_EXT/main -I/home/adamk/myext/src/core/PHP_EXT -I/usr/include/php5 -I/usr/include/php5/main -I/usr/include/php5/TSRM -I/usr/include/php5/Zend -I/usr/include/php5/ext -I/usr/include/php5/ext/date/lib -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -DHAVE_CONFIG_H -g -O2 -c /home/adamk/myext/src/core/PHP_EXT/_source5.c -fPIC -DPIC -o .libs/_source5.o /bin/bash /home/adamk/myext/src/core/PHP_EXT/libtool --mode=compile gcc -I. -I/home/adamk/myext/src/core/PHP_EXT -DPHP_ATOM_INC -I/home/adamk/myext/src/core/PHP_EXT/include -I/home/adamk/myext/src/core/PHP_EXT/main -I/home/adamk/myext/src/core/PHP_EXT -I/usr/include/php5 -I/usr/include/php5/main -I/usr/include/php5/TSRM -I/usr/include/php5/Zend -I/usr/include/php5/ext -I/usr/include/php5/ext/date/lib -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -DHAVE_CONFIG_H -g -O2 -c /home/adamk/myext/src/core/PHP_EXT/_source6.c -o _source6.lo gcc -I. -I/home/adamk/myext/src/core/PHP_EXT -DPHP_ATOM_INC -I/home/adamk/myext/src/core/PHP_EXT/include -I/home/adamk/myext/src/core/PHP_EXT/main -I/home/adamk/myext/src/core/PHP_EXT -I/usr/include/php5 -I/usr/include/php5/main -I/usr/include/php5/TSRM -I/usr/include/php5/Zend -I/usr/include/php5/ext -I/usr/include/php5/ext/date/lib -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -DHAVE_CONFIG_H -g -O2 -c /home/adamk/myext/src/core/PHP_EXT/_source6.c -fPIC -DPIC -o .libs/_source6.o /bin/bash /home/adamk/myext/src/core/PHP_EXT/libtool --mode=compile gcc -I. -I/home/adamk/myext/src/core/PHP_EXT -DPHP_ATOM_INC -I/home/adamk/myext/src/core/PHP_EXT/include -I/home/adamk/myext/src/core/PHP_EXT/main -I/home/adamk/myext/src/core/PHP_EXT -I/usr/include/php5 -I/usr/include/php5/main -I/usr/include/php5/TSRM -I/usr/include/php5/Zend -I/usr/include/php5/ext -I/usr/include/php5/ext/date/lib -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -DHAVE_CONFIG_H -g -O2 -c /home/adamk/myext/src/core/PHP_EXT/_source7.c -o _source7.lo gcc -I. -I/home/adamk/myext/src/core/PHP_EXT -DPHP_ATOM_INC -I/home/adamk/myext/src/core/PHP_EXT/include -I/home/adamk/myext/src/core/PHP_EXT/main -I/home/adamk/myext/src/core/PHP_EXT -I/usr/include/php5 -I/usr/include/php5/main -I/usr/include/php5/TSRM -I/usr/include/php5/Zend -I/usr/include/php5/ext -I/usr/include/php5/ext/date/lib -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -DHAVE_CONFIG_H -g -O2 -c /home/adamk/myext/src/core/PHP_EXT/_source7.c -fPIC -DPIC -o .libs/_source7.o /bin/bash /home/adamk/myext/src/core/PHP_EXT/libtool --mode=compile gcc -I. -I/home/adamk/myext/src/core/PHP_EXT -DPHP_ATOM_INC -I/home/adamk/myext/src/core/PHP_EXT/include -I/home/adamk/myext/src/core/PHP_EXT/main -I/home/adamk/myext/src/core/PHP_EXT -I/usr/include/php5 -I/usr/include/php5/main -I/usr/include/php5/TSRM -I/usr/include/php5/Zend -I/usr/include/php5/ext -I/usr/include/php5/ext/date/lib -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -DHAVE_CONFIG_H -g -O2 -c /home/adamk/myext/src/core/PHP_EXT/_source8.c -o _source8.lo gcc -I. -I/home/adamk/myext/src/core/PHP_EXT -DPHP_ATOM_INC -I/home/adamk/myext/src/core/PHP_EXT/include -I/home/adamk/myext/src/core/PHP_EXT/main -I/home/adamk/myext/src/core/PHP_EXT -I/usr/include/php5 -I/usr/include/php5/main -I/usr/include/php5/TSRM -I/usr/include/php5/Zend -I/usr/include/php5/ext -I/usr/include/php5/ext/date/lib -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -DHAVE_CONFIG_H -g -O2 -c /home/adamk/myext/src/core/PHP_EXT/_source8.c -fPIC -DPIC -o .libs/_source8.o /bin/bash /home/adamk/myext/src/core/PHP_EXT/libtool --mode=link gcc -DPHP_ATOM_INC -I/home/adamk/myext/src/core/PHP_EXT/include -I/home/adamk/myext/src/core/PHP_EXT/main -I/home/adamk/myext/src/core/PHP_EXT -I/usr/include/php5 -I/usr/include/php5/main -I/usr/include/php5/TSRM -I/usr/include/php5/Zend -I/usr/include/php5/ext -I/usr/include/php5/ext/date/lib -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -DHAVE_CONFIG_H -g -O2 -o myext.la -export-dynamic -avoid-version -prefer-pic -module -rpath /home/adamk/myext/src/core/PHP_EXT/modules _source1.lo _source2.lo _source3.lo _source4.lo _source5.lo _source6.lo _source7.lo _source8.lo gcc -shared .libs/_source1.o .libs/_source2.o .libs/_source3.o .libs/_source4.o .libs/_source5.o .libs/_source6.o .libs/_source7.o .libs/_source8.o .libs/ -Wl,-soname -Wl,myext.so -o .libs/myext.so creating myext.la (cd .libs && rm -f myext.la && ln -s ../myext.la myext.la) /bin/bash /home/adamk/myext/src/core/PHP_EXT/libtool --mode=install cp ./myext.la /home/adamk/myext/src/core/PHP_EXT/modules cp ./.libs/myext.so /home/adamk/myext/src/core/PHP_EXT/modules/myext.so cp ./.libs/myext.lai /home/adamk/myext/src/core/PHP_EXT/modules/myext.la PATH="$PATH:/sbin" ldconfig -n /home/adamk/myext/src/core/PHP_EXT/modules ---------------------------------------------------------------------- Libraries have been installed in: /home/adamk/myext/src/core/PHP_EXT/modules If you ever happen to want to link against installed libraries in a given directory, LIBDIR, you must either use libtool, and specify 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 `LD_LIBRARY_PATH' environment variablePlease paste the output you get when compiling the extension.Please don't stop in the middle of the sentence =) Which symbols does it complain about? Hint: paste ALL the output you get.After /etc/init.d/apache2 restart In /var/log/apache2/error.logg /usr/sbin/apache2: symbol lookup error: /usr/lib/php5/20060613+lfs/myext.so: undefined symbol: yamiNetInitialize This symbol is provided by library I'd like to link with my extension.
during execution- add LIBDIR to the `LD_RUN_PATH' environment variable
during linking- use the `-Wl,--rpath -Wl,LIBDIR' linker flag - have your system administrator add LIBDIR to `/etc/ld.so.conf' See any operating system documentation about shared libraries for more information, such as the ld(1) and ld.so(8) manual pages. ---------------------------------------------------------------------- Build complete. Don't forget to run 'make test'. Adam Klobukowski