【问题标题】:Run ./configure in a bash and redirect out/err to a file在 bash 中运行 ./configure 并将 out/err 重定向到文件
【发布时间】:2020-05-10 14:15:31
【问题描述】:

我需要在 bash 中运行 ./configure 并将 out/err 重定向到一个文件,但我遇到了 2 个问题:

1) 使用类似:

ARG_COOKIES="--enable-cookies"
ARG_ENABLEFILE="--enable-file"
cmd=configure
"./$cmd" "$ARG_COOKIES" "ARG_ENABLEFILE" > logfile.conf 2>&1 

我无法在运行时看到配置的结果..

2) 我明白了:

checking for suffix of object files... configure: error: in `/SRC/zabbix-4.2.6':
configure: error: cannot compute suffix of object files: cannot compile

有人可以帮我理解吗? 谢了!

【问题讨论】:

    标签: c bash shell redirect compilation


    【解决方案1】:

    如果您想在屏幕上查看结果并将其保存在文件中,您需要执行以下操作:

    "./$cmd" "$ARG_COOKIES" "ARG_ENABLEFILE" 2>&1 | tee logfile.conf 
    

    第二次检查是否创建了config.log,看看里面有什么。可能是缺少库或不正确的 LD_LIBRARY_PATH

    【讨论】:

    • 感谢您的快速回答,我已经尝试过您的建议,但 ./configure 命令的输出仅在 logfile.conf 中,屏幕上没有打印任何内容。这个 ./configure 命令是在 bash 脚本中启动的,只是为了澄清我的情况。
    • 它应该输出到屏幕,无论它是独立的还是在另一个脚本中。对于测试,您可以尝试将 cmd 从 configure 替换为只会回显一些文本的简单脚本。你应该在屏幕上看到它。第二件事是您可能忘记在第二个参数中将 $ 添加到 ARG_ENABLEFILE - 应该是 "$ARG_ENABLEFILE"
    • 感谢您的建议:关于 $ARG_ENABLEFILE var 抱歉,这是一个错字! :) 不幸的是,我在使用我的 shell 脚本进行编译时仍然遇到问题:就像 ./compile 没有收到 LD_LIBRARY_PATH 即使在我的 shell 脚本中作为导出存在(它已由 $(env) 输出确认。
    猜你喜欢
    • 2021-05-26
    • 1970-01-01
    • 1970-01-01
    • 2017-09-07
    • 2020-03-22
    • 1970-01-01
    • 2021-10-30
    • 2021-11-04
    • 1970-01-01
    相关资源
    最近更新 更多