mapnik配置在rpmbuild期间失败,但手动成功

时间:2015-05-12 16:53:17

标签: awk rpm scons rpmbuild mapnik

我已经在谷歌群组区域发布了这个问题,因为我已经从那里开始了c / p:

我已经解决了这个问题几天了。请耐心等待我:

从RHEL 6.5上新近解决的mapnik 2.2.0源代码开始:

首先,运行" ./ configure" (只是调用scons / scons.py)效果很好。完成正确,然后我运行make + make install,我得到了我想要构建和安装的内容。

我的目标是创建一个mapnik 2.2.0 RPM供内部使用。请不要建议使用"官方"而不是mapnik RPM(或任何其他已经构建的mapnik RPM),因为我的目的是从源代码构建mapnik并创建我自己的RPM。

话虽这么说,当我的RPM进入%构建阶段并运行./configure时,它会在scons检查freetype-config时冻结。我已经让它坐了几个小时,没有任何反应。

在我查看生成的config.log文件之后,看起来配置在" awk"上失败了。命令是这样的:

awk '{print $\(NF-1\)}'

对命令生成的字符串执行命令:

/usr/bin/freetype-config --libs --cflags

我想知道,首先,如何解决这个问题,但其次是为什么这会手动工作,但是当rpmbuild进程进入./configure命令时失败。我确保同一个用户(我自己)在完全相同的文件上运行./configure命令。

我的第三个问题是:为什么配置步骤会冻结此问题,而不是抛出某种错误并停止?

请注意" awk"的问题命令是反斜杠 - 错误是:

awk: {print $\(NF-1\)} 
             ^ backslash not last character on line

当我删除反斜杠时,命令会成功。从长远来看,是否删除反斜杠是正确的做法,我不知道。

这似乎是某种python字符串解析/编码问题,但我不确定。让我感到困惑的是为什么这会手动工作,并在rpmbuild尝试执行时失败。

我唯一想到的是rpmbuild环境和我配置的shell之间存在一些差异。它是什么,我不知道。

感谢您提供的任何帮助。如果我可以提供更多背景信息,请告诉我。

更新:一个svn命令在awk失败后运行,但是在-r选项之后传递的数字丢失了。我想知道这是否会导致问题?想法?

0 个答案:

没有答案