相关疑难解决方法(0)

makedepend是否与nmake一起使用?

只是想知道是否有与视觉工作室一起提供的'makedepends'等效物,我可以使用nmake.有人知道吗?

nmake makefile visual-studio-2008 visual-c++

11
推荐指数
3
解决办法
2600
查看次数

从 MSVC 输出生成 Makefile 依赖项

使用 GCC 编译 C/C++ 源代码时,可以使用 flags 以 Makefile 规则形式创建附加依赖信息-MMD -MT $@ -MF $(basename $@).d。我使 Makefile 脚本与 GCC 和 MSVC 工具链兼容,但我仍然在 MSVC 上生成依赖文件方面遇到困难。
有一个标志/showIncludes 以以下形式在 stdout 中输出源文件包含信息Note: including file: filename。尝试解析它(到目前为止成功)我得到了以下 makefile 函数:

msvc-dep-gen =  echo $@: $< |\
    sed -e "s/^.*$$/&\\/" >$(basename $@).d && \
    $(1) /showIncludes |\
    sed -e "/^Note: including file:/!d"\
        -e "s/^Note: including file:\s*\(.*\)$$/\1/"\
        -e "s/\\/\//g"\
        -e "s/ /\\ /g"\
        -e "s/^\(.*\)$$/\t\1 \\/" >> $(basename $@).d
Run Code Online (Sandbox Code Playgroud)

其中参数 $(1) 是使用 MSVC 编译给定源文件的包装命令。这会很好地生成依赖文件,但输出会被过滤掉,因此我会丢失编译器产生的所有警告和错误退出。关于如何防止这种情况有什么聪明的想法吗?

c++ makefile batch-file visual-c++

6
推荐指数
1
解决办法
978
查看次数