The macosxhints Forums

The macosxhints Forums (http://hintsforums.macworld.com/index.php)
-   OS X Developer (http://hintsforums.macworld.com/forumdisplay.php?f=27)
-   -   Install php6 on a mac (http://hintsforums.macworld.com/showthread.php?t=89448)

Daio 05-23-2008 08:08 AM

Forgive me if it's a silly question but did you "make clean" the ICU source before recompiling?

You can quickly check that the ICU libraries have their full paths in the install name from the terminal by typing..
Code:

otool -L /usr/local/icu/lib/libicui18n.dylib
The resulting output should list a handful of libraries and each of them should have their full path rather than just the library name.

I also doubt that /usr/include/libxml2 is the actual base install location for libxml2, that directory should just contain the libxml2 header files. It's more likely that if your relying on the system's own libxml2 then the install directory is probably /usr

With your above configure line what is the error(s) from config.log?

TruthSeeker 05-26-2008 07:41 AM

Code:

$ otool -L /usr/local/icu/lib/libicui18n.dylib
-bash: otool: command not found

nothing is returned by $ locate otool

Xcode is not installed... downloading... i'll post back here.

TruthSeeker 05-26-2008 09:36 AM

ok,
Code:

$ otool -L /usr/local/icu/lib/libicui18n.dylib
libicui18n.38.dylib (compatibility version 38.0.0, current version 38.1.0)        libicuuc.38.dylib (compatibility version 38.0.0, current version 38.1.0)
        libicudata.38.dylib (compatibility version 38.0.0, current version 38.1.0)
        /usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 111.0.0)
        /usr/lib/libstdc++.6.dylib (compatibility version 7.0.0, current version 7.4.0)
        /usr/lib/libgcc_s.1.dylib (compatibility version 1.0.0, current version 1.0.0)

I've retried
Code:

$ ./configure --prefix=/usr/local/php6 --with-apxs2=/usr/sbin/apxs --enable-sockets --with-xml --infodir=/usr/share/info --mandir=/usr/share/man --sysconfdir=/etc --with-mysql=/usr/local/mysql --with-pgsql=/usr/local/pgsql --with-icu-dir=/usr/local/icu --with-libxml-dir=/usr/include/libxml2

(...)

Configuring extensions
checking which regex library to use... php
checking whether to enable LIBXML support... yes
checking libxml2 install dir... /usr/include/libxml2
checking for xml2-config path... /usr/bin/xml2-config
checking whether libxml build works... no
configure: error: build test failed.  Please check the config.log for details.

The config log is available here. :/

Daio 05-26-2008 10:20 AM

From the output from otool it shows that the ICU libraries do not contain their full paths in their install name, which suggests that either you didn't "make clean" before rebuilding the ICU libraries or you haven't applied the suggested modification to the correct file in the ICU config directory?

The output should be....
Code:

$ otool -L /usr/local/icu/lib/libicui18n.dylib
    /usr/local/icu/lib/libicui18n.38.dylib (compatibility version 38.0.0, current version 38.1.0)
    /usr/local/icu/lib/libicuuc.38.dylib (compatibility version 38.0.0, current version 38.1.0)
    /usr/local/icu/lib/libicudata.38.dylib (compatibility version 38.0.0, current version 38.1.0)
    /usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 111.0.0)
    /usr/lib/libstdc++.6.dylib (compatibility version 7.0.0, current version 7.4.0)
    /usr/lib/libgcc_s.1.dylib (compatibility version 1.0.0, current version 1.0.0)

You could try temporarily telling dyld where to look for the ICU libraries. From the terminal window....
Code:

DYLD_LIBRARY_PATH=/usr/local/icu/lib:${DYLD_LIBRARY_PATH}
export DYLD_LIBRARY_PATH

And from the *same* terminal window rerun configure. If it now passes the libxml build test then then that's a good indicator that the problem is with the install name of the ICU libraries. Note, even if configure completes at this stage you will not be able to build working PHP binaries. I'd go back to the ICU source directory and from the terminal type..
Code:

make clean
Then ensure the edit/modification suggested earlier is applied to the config/mh-darwin file, then re- configure and make the ICU libraries, after running "make install" rerun otool on one of the ICU libraries.

If you are absolutely sure that that you did previosuly "make clean" and apply the edit to the mh-darwin config file then perhaps ICU uses a different config file when building on Leopard? In which case someone else will need to give you some pointers as I don't currently have access to a machine running Leopard.


All times are GMT -5. The time now is 05:56 AM.

Powered by vBulletin® Version 3.8.7
Copyright ©2000 - 2014, vBulletin Solutions, Inc.
Site design © IDG Consumer & SMB; individuals retain copyright of their postings
but consent to the possible use of their material in other areas of IDG Consumer & SMB.