相关疑难解决方法(0)

对make(Linux)和nmake使用相同的makefile(Windows)

我有一个简单的C-Programm(1源文件),我想在Linux和Windows上通过make resp编译.NMAKE.是否有可能使用单个makefile完成此操作?

我想到了类似的东西

ifeq($(MAKE), nmake)
    // nmake code here
else
    // make code here
endif
Run Code Online (Sandbox Code Playgroud)

不幸的是nmake似乎不明白ifeq,所以我不能用它.我有一个工作的makefile,但会产生非常难看的结果:

hello: hello.c
    $(CC) hello.c
Run Code Online (Sandbox Code Playgroud)

这适用于两个系统.问题是结果取决于各个编译器的默认行为.在Linux下,我得到一个可执行的名为'a.out'而不是'hello'.在Windows下,我得到'hello.exe',但也有'hello.obj',我不想拥有它.

有没有人知道另一种方式?或者我正在尝试绝对不可能的事情?

c nmake makefile

20
推荐指数
5
解决办法
2万
查看次数

标签 统计

c ×1

makefile ×1

nmake ×1