在MAMP上启用PHP信号量函数

时间:2013-04-17 09:25:10

标签: php mamp

我正在尝试使用以下教程创建消息队列;

http://www.ebrueggeman.com/blog/creating-a-message-queue-in-php

我遇到的问题是我收到以下错误;

ErrorException [ Fatal Error ]: Call to undefined function msg_get_queue()

我发现这是因为我的PHP安装缺少一些信号量函数,我应该使用以下参数重新编译我的PHP安装--enable-sysvmsg。

我在Lion OSX上运行MAMP,实际上并不知道从哪里开始。我在MAMP论坛上找不到任何关于如何执行此操作的信息或有关为OSX启用信号量函数的更多信息。解决这个问题的最佳方法是什么?

1 个答案:

答案 0 :(得分:0)

正如您在问题中所说,您需要编译启用 <serviceBehaviors> <behavior> <!-- To avoid disclosing metadata information, set the value below to false and remove the metadata endpoint above before deployment --> <serviceMetadata httpGetEnabled="false" /> <!-- To receive exception details in faults for debugging purposes, set the value below to true. Set to false before deployment to avoid disclosing exception information --> <serviceDebug includeExceptionDetailInFaults="true" /> </behavior> </serviceBehaviors> </behaviors> <services> <service name="TurbineMonitor.TurbineMonitor"> <endpoint address="" behaviorConfiguration="REST" binding="webHttpBinding" contract="TurbineMonitor.ITurbineMonitorService" /> <endpoint address="soap" binding="basicHttpBinding" contract="TurbineMonitor.ITurbineMonitorService" /> <endpoint address="mex" binding="mexHttpBinding" contract="IMetadataExchange" /> </service> </services> 的php版本。 步骤是:

  1. 下载Semaphore
  2. 使用必需的--enable-xxx参数(下面我提到的列表)执行PHP。并不是那么容易,并且您可能还需要安装一些brew软件包(我需要安装./configuremap-uw)。
  3. 执行libiodbc
  4. make版本替换为新的编译版本
我使用的

MAMP参数:

./configure