ID:               49267
 Comment by:       cest_robert at hotmail dot com
 Reported By:      s dot rost at ewerk dot com
 Status:           Assigned
 Bug Type:         Compile Failure
 Operating System: Mac OSX 10.6 Snow Leopard
 PHP Version:      5.3, 6 (2009-08-18)
 Assigned To:      scottmac
 New Comment:

I tried the same fixes using a MacBook 2.0 Ghz, 10.6.1 fresh install.
Installed libiconv from Macports 1.8.1 (along with libjpeg, libpng,
etc.) and ensured it was a 64-bit library using "file
/opt/local/lib/libiconv.dylib".

Tried each combination (edited ext/iconv/iconv.c file line 185, edited
Makefile to include -lresolv) but nothing allows the system to compile
correctly.  The error is always:

Undefined symbols:
  "_libiconv_open", referenced from:
      _do_convert in gdkanji.o
      _convert in encodings.o
  "_libiconv", referenced from:
      _do_convert in gdkanji.o
      __php_iconv_appendl in iconv.o
      __php_iconv_appendl in iconv.o
      _php_iconv_string in iconv.o
      _php_iconv_string in iconv.o
      __php_iconv_strlen in iconv.o
      __php_iconv_substr in iconv.o
      __php_iconv_strpos in iconv.o
      __php_iconv_mime_encode in iconv.o
      __php_iconv_mime_encode in iconv.o
      __php_iconv_mime_encode in iconv.o
      __php_iconv_mime_encode in iconv.o
      __php_iconv_mime_encode in iconv.o
      __php_iconv_mime_encode in iconv.o
      _php_iconv_stream_filter_append_bucket in iconv.o
      _php_iconv_stream_filter_append_bucket in iconv.o
      _php_iconv_stream_filter_append_bucket in iconv.o
      _convert in encodings.o
  "_libiconv_close", referenced from:
      _do_convert in gdkanji.o
      _convert in encodings.o
ld: symbol(s) not found
collect2: ld returned 1 exit status
make: *** [libs/libphp5.bundle] Error 1

I've even tried NOT using libiconv with "--without-iconv" in the PHP
config script, but it *still* gives this error no matter what happens.

Spent 3 days now searching for fixes, trying different combinations of
patches and suggestions, but nothing works. I'm completely stumped.


Previous Comments:
------------------------------------------------------------------------

[2009-09-28 19:05:37] bj...@php.net

This issue looks like the same issue as I fixed on FreeBSD some years
ago.
If I can access to that OSX platform I'm sure I can fix it while Scott
is away..

------------------------------------------------------------------------

[2009-09-23 23:53:35] mattcsl at gmail dot com

For php-5.3.0, php-5.3.1RC1, and a snapshot build

I have tried adding -lresolv to EXTRA_LIBS and MH_BUNDLE_FLAGS in
Makefile
 
I have edited ext/iconv/iconv.c like the thread has said.

I even patched iconv.c with the patch that was posted at the end of
this thread. 

Absolutely none of this solves the linking problem! This is seriously
ruining my day. Why is this not working.... 

Mac OS X 10.6.1 

./configure --with-apxs2=/usr/local/apache2/bin/apxs
--with-mysql=/usr/local/mysql --enable-zip --enable-ftp --with-gd
--with-jpeg-dir=/usr/local/lib --with-curl --with-iconv-dir=/usr

Undefined symbols:
  "_libiconv_open", referenced from:
      _do_convert in gdkanji.o
      __php_iconv_strlen in iconv.o
      _php_iconv_string in iconv.o
      __php_iconv_strpos in iconv.o
      __php_iconv_mime_decode in iconv.o
      __php_iconv_mime_decode in iconv.o
      _zif_iconv_substr in iconv.o
      _zif_iconv_substr in iconv.o
      _zif_iconv_mime_encode in iconv.o
      _zif_iconv_mime_encode in iconv.o
      _php_iconv_stream_filter_factory_create in iconv.o
  "_libiconv", referenced from:
      _do_convert in gdkanji.o
      __php_iconv_strlen in iconv.o
      _php_iconv_string in iconv.o
      _php_iconv_string in iconv.o
      __php_iconv_strpos in iconv.o
      __php_iconv_appendl in iconv.o
      __php_iconv_appendl in iconv.o
      _zif_iconv_substr in iconv.o
      _zif_iconv_mime_encode in iconv.o
      _zif_iconv_mime_encode in iconv.o
      _zif_iconv_mime_encode in iconv.o
      _zif_iconv_mime_encode in iconv.o
      _zif_iconv_mime_encode in iconv.o
      _zif_iconv_mime_encode in iconv.o
      _php_iconv_stream_filter_append_bucket in iconv.o
      _php_iconv_stream_filter_append_bucket in iconv.o
      _php_iconv_stream_filter_append_bucket in iconv.o
  "_libiconv_close", referenced from:
      _do_convert in gdkanji.o
      __php_iconv_strlen in iconv.o
      _php_iconv_string in iconv.o
      _php_iconv_string in iconv.o
      __php_iconv_strpos in iconv.o
      __php_iconv_mime_decode in iconv.o
      __php_iconv_mime_decode in iconv.o
      __php_iconv_mime_decode in iconv.o
      _zif_iconv_substr in iconv.o
      _zif_iconv_substr in iconv.o
      _php_iconv_stream_filter_dtor in iconv.o
      _zif_iconv_mime_encode in iconv.o
      _zif_iconv_mime_encode in iconv.o
ld: symbol(s) not found
collect2: ld returned 1 exit status
make: *** [libs/libphp5.bundle] Error 1

------------------------------------------------------------------------

[2009-09-15 22:26:59] j dot jeising at gmail dot com

Apple already added a path to it's own sources:

http://opensource.apple.com/source/apache_mod_php/apache_mod_php-
53/patches/iconv.patch

With the parameters provided in the Makefile this works seamless:

--with-iconv-dir=/usr

------------------------------------------------------------------------

[2009-09-15 19:29:50] skovjuice at gmail dot com

I had this issue on OSX 10.6:

Undefined symbols:
  "_libiconv_open", referenced from:
      _do_convert in gdkanji.o
  "_libiconv", referenced from:
      _do_convert in gdkanji.o
  "_libiconv_close", referenced from:
      _do_convert in gdkanji.o
ld: symbol(s) not found
collect2: ld returned 1 exit status
make: *** [libs/libphp5.bundle] Error 1

Managed to solve it by doing as described in the first post on the
latest PHP 5.3 snapshot.

------------------------------------------------------------------------

[2009-09-11 14:20:59] jason at dajaney dot com

I am also experiencing this same issue on my new mac, running 10.6.

Keep this alive with any updates. 

Undefined symbols:
  "_libiconv_open", referenced from:
      _do_convert in gdkanji.o
  "_libiconv", referenced from:
      _do_convert in gdkanji.o
  "_libiconv_close", referenced from:
      _do_convert in gdkanji.o
ld: symbol(s) not found
collect2: ld returned 1 exit status
make: *** [libs/libphp5.bundle] Error 1

The above was trying my last ditch effort to have --without-iconv in
the ./configure statement. 

Jason

------------------------------------------------------------------------

The remainder of the comments for this report are too long. To view
the rest of the comments, please view the bug report online at
    http://bugs.php.net/49267

-- 
Edit this bug report at http://bugs.php.net/?id=49267&edit=1

Reply via email to