在pwd中编译文件时,使gcc / g ++使用绝对路径作为警告

时间:2011-04-12 22:36:01

标签: gcc g++

当打印在当前目录中编译的文件中发现的错误时,有没有办法让gcc使用绝对路径?

例如,以下是打印错误时的所需内容:

g++ -I. -I../../.. /home/some/path/somefile.cpp

但我希望通过以下方式实现相同目标:

g++ -I. -I../../.. somefile.cpp

我希望警告和错误的格式如下:

/home/some/path/somefile.cpp:299:52: warning: some warning

1 个答案:

答案 0 :(得分:0)

使用gcc本身无法做到这一点,但是在PATH中/usr/bin之前的目录中使用包装脚本安装为“gcc”,“g ++”等是微不足道的:

#! /bin/sh
sourcefile="$1"; shift
case "$sourcefile" in
    /*) ;;
    *) sourcefile="$PWD/$sourcefile" ;;
esac
exec "/usr/bin/${0##*/}" "$sourcefile" "$@"

...前提是您始终将源文件首先放入编译器调用中(您必须调整Makefile)。