Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/70.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
源代码安装Apache 2.2.13+;PHP 5.3+;雪豹_Php_Mysql_Apache_Osx Snow Leopard - Fatal编程技术网

源代码安装Apache 2.2.13+;PHP 5.3+;雪豹

源代码安装Apache 2.2.13+;PHP 5.3+;雪豹,php,mysql,apache,osx-snow-leopard,Php,Mysql,Apache,Osx Snow Leopard,有人能告诉我在雪豹上安装Apache和PHP的经验吗 我曾在Leopard上使用过此功能,它会在安全更新后消失,但非常简单: $ ./configure --enable-layout=Darwin --enable-mods-shared=all $ make $ sudo make install 我又开始跑步了 自从雪豹更新后,我在make命令上遇到了以下问题 libtool: link: cannot find the library `/usr/lib/libexpat.la' or

有人能告诉我在雪豹上安装Apache和PHP的经验吗

我曾在Leopard上使用过此功能,它会在安全更新后消失,但非常简单:

$ ./configure --enable-layout=Darwin --enable-mods-shared=all
$ make
$ sudo make install
我又开始跑步了

自从雪豹更新后,我在make命令上遇到了以下问题

libtool: link: cannot find the library `/usr/lib/libexpat.la' or unhandled argument `/usr/lib/libexpat.la'
make[2]: *** [htpasswd] Error 1
make[1]: *** [all-recursive] Error 1
make: *** [all-recursive] Error 1

MacOSXSnowLeopard已经预装了Apache2.2和PHP5.3。请参阅:


最好不要去管它们,因为它们是为雪豹而优化配置的。

如果你不需要定制的PHP版本,那么苹果提供的PHP可能就可以了,但事实并非如此,问问题的人或是我,因为我在寻找同一问题的答案。还有其他人有什么建议吗

大多数人都知道雪豹(Snow Leopard,SL)基于64位体系结构,当安装SL附带的Xcode 3.2时,gcc编译器默认为4.2.1,似乎默认为x86_64,而不是i386

感谢以下网站:

  • (最有助于找到其他站点)
我的解决方案:

  • 按照hivelogic.com上的说明在SL上安装MySQL

  • 通过上的说明安装Apache 2.2.14-它使用2.2.13,但用14替换13很容易,对吗?;)安装Apache(x86_64)后,请执行以下操作:

    如上所述

  • 编译并安装Apache安装说明之后提到的包(freetype、gettext、libjpeg、libpng、mcrypt、mhash等),直到IMAP,如果需要IMAP,请尝试上面url中提到的说明,但我没有安装,因为我不需要它

    注意:这些文件都编译为x86_64,但libpng除外,它要求将以下文件编译为64位:

    *export CFLAGS=“-arch x86_64”。/configure

  • 这是所有的头撞在桌子上和尝试和错误发生的地方。PHP5.3.0的安装。最大的问题是ICONV,它有链接问题。我搜索了整个Google,还有一些人通过编辑iconv.c文件和Makefile,在执行./configure字符串后,在额外的_LIBS=中添加-lresolv,从而获得了成功。我没有那么幸运,但仍然需要对--iconv参数进行编辑才能工作。而且,使用xmlrpc也不起作用。关于iconv黑客,请参考此

  • 下面是我的./configure字符串:

    ./configure 
    --prefix=/usr/local/php5
    --without-iconv
    --with-apxs2=/usr/local/apache2/bin/apxs
    --enable-pdo
    --with-gd 
    --with-zlib 
    --with-jpeg-dir=/usr/local 
    --with-png-dir=/usr/local 
    --with-libxml-dir=/usr/local 
    --with-curl 
    --with-mcrypt 
    --with-pdo-mysql=/usr/local/mysql 
    --with-mysqli=/usr/local/mysql/bin/mysql_config 
    --with-mysql=/usr/local/mysql 
    --with-mhash 
    --with-libxml-dir=/usr/local 
    --with-t1lib=/usr/local 
    --with-xsl 
    --with-freetype-dir=/usr/local 
    --with-gettext 
    --with-bz2=/usr 
    --with-openssl=/usr 
    --enable-bcmath 
    --enable-calendar 
    --enable-cgi 
    --enable-exif 
    --enable-ftp 
    --enable-gd-native-ttf 
    --enable-mbstring 
    --enable-soap 
    --enable-sqlite-utf8 
    --enable-cli 
    --enable-wddx 
    --enable-zip
    
    make
    sudo make install
    

    最后,我下载了PHP-5.3.2-dev(),它似乎已经修复了与ICONV和XMLRPC的链接问题。我对上面的./configure字符串所做的唯一更改是用xmlrpc替换——不使用iconv,替换为——替换为iconv=/usr/local。这是一个开发版本,我确信它仍然有bug,所以请自行决定使用


    如果您有任何问题,请随时发表意见,我会尽力帮助您

    也许你没有安装开发工具

    参见此处:

    基本上:

  • 将“-lresolv”添加到MH_BUNDLE_标志、额外_LDFLAGS和 “Makefile”中的额外\u LDFLAGS\u程序

  • 更改“ext/iconv/iconv.c”

    #定义iconv libiconv

    致:

    #定义iconv iconv


  • 正如他们所说,它为我工作。

    在apache源代码目录中

    cd srclib/apr-util/xml/expat
    ./configure
    # OR ./configure --prefix=/{{YOURDIR}}/apache/source/httpd-2.2.22/srclib/apr-util/xml/expat/
    sudo make install
    # OR make install
    
    记得在make安装失败后清理您以前的apache安装

    cd {{YOURDIR}}/apache/
    ls -la
    rm -r bin
    rm -r build
    rm -r include
    rm -r lib
    

    Liip的人在OSX上维护了一个很棒的PHP和Apache软件包,安装非常简单。该软件包非常适合开发。您可以在这里查看:

    该软件包在OS x 10.6(又名雪豹)和OS x 10.7(又名狮子)的/usr/local/php5中安装(通常)最新的php5.3.x/5.4.x。它安装了许多有用的扩展(见下文)和ini设置,这是我们在Liip和Local.ch开发时使用的。它特别适合Symfony 2的开发。它还提供了一个像样的php.ini,其中包含根据“最佳实践”配置的所有设置


    然后,您可以使用标准Apache并使用MySQL网站上的软件包安装MySQL(x64)。

    谢谢Michael,我知道这些都是默认安装的,我更喜欢从源代码编译方法。嗨,Alan,您找到解决方案了吗?我知道有人对此有答案。通过安装缺少的库和符号链接,我在编译过程中取得了更大的进步,但仍然出现错误。1K视图,太棒了,看起来不仅仅是我自己需要一个答案。请有人站出来提供一个解决方案好吗?谢谢。真希望我能解决这个问题…更新:接近解决方案,不幸的是,iconv在PHP5.3 make期间有严重问题:未定义符号:“\u libiconv\u open”,引用自:\u do\u convert in gdkanji.o\u convert in encodings.o”\u libiconv“,引用自:_do_convert in gdkanji.o_convert in encodings.o“_libiconv_close”,引用自:_do_convert in gdkanji.o_convert in encodings.o ld:symbol未找到集合2:ld返回1退出状态make:**[libs/libphp5.bundle]错误1最终2k视图,大量研究,我的头撞在桌子上,在./configure期间的消除过程,此处没有可行的答案;我有一个Apache2.2.14+PHP5.3+SnowLeopard的解决方案和工作源代码安装!不幸的是,我不能在我的解决方案中使用XMLRPC或ICONV,因为编译PHP时存在某种冲突。嘿,我知道这是旧的,但您用于安装apache2的链接不再有关于这方面的说明。。。您能否随时更新您的答案,包括如何安装apache2?
    cd {{YOURDIR}}/apache/
    ls -la
    rm -r bin
    rm -r build
    rm -r include
    rm -r lib