【发布时间】:2013-08-12 15:57:12
【问题描述】:
在编译 Apache 源代码时,我已经能够很好地定义一个宏:
# export CFLAGS=" -DSINGLE_LISTEN_UNSERIALIZED_ACCEPT" // OR even:
# export CFLAGS=" -DSINGLE_LISTEN_UNSERIALIZED_ACCEPT=1"
... 就像一个魅力,然而每次我尝试设置:
# export CFLAGS=" -DDEFAULT_PIDLOG=/var/run/apache/apache.pid"
我在make 期间收到此错误:
prefork.c: In function ‘prefork_pre_config’:
prefork.c:1340:20: error: expected expression before ‘/’ token
make[4]: *** [prefork.lo] Error 1
所以我尝试转义正斜杠和 DEFAULT_PIDLOG 值的不同引用技术,但它总是失败,显然是因为值中的正斜杠。
【问题讨论】:
-
似乎 DEFAULT_PIDLOG 应该定义一个常量 C 字符串。试试
export CFLAGS=" -DDEFAULT_PIDLOG=\\\"/var/run/apache/apache.pid\\\"" -
效果很好,谢谢!
标签: c gcc compiler-construction apache2 libtool