草庐IT

language-makefile

全部标签

linux - 在 makefile 中添加特定于平台的标志

我需要在我的makefile中设置几个标志,这些标志只需要特定于Windows,即,我不希望它们在其他操作系统上被“看到”。我正在使用MinGW来构建我的项目。这些是我只想为Windows设置的标志:AM_LDFLAGS+=-lws2_32AM_LDFLAGS+=-Xlinker--allow-multiple-definition这是我在makefile.am中所做的:SYS:=$(shellgcc-dumpmachine)ifneq(,$(findstringmingw,$(SYS)))AM_LDFLAGS+=-lws2_32AM_LDFLAGS+=-Xlinker--allow-

windows - GNU Make - 如何添加时间戳输出(最小化 makefile 修改)

我想更好地了解我的构建作业指标,但不幸的是,make本身并不输出时间戳。如果我运行make--print-data-base,对于给定的目标,它会输出一行#Lastmodified2016-08-1513:53:16但这并没有给我持续时间。问题有没有办法在不修改每个目标的情况下获得构建目标的持续时间?一些目标位于生成文件中,这些生成文件是在构建期间生成的,因此修改它们的配方是不可行的。可能的解决方案我可以implementapre-andpost-recipeforeverytarget并以这种方式输出时间戳。鉴于这是并行make,这是个好主意吗?显然,为每个目标调用前后配方会增加构建

c++ - 如何为 C++ 和 proje 编写 makefile

我需要为在Windows上运行的c++visual-studio项目编写一个makefile。我只有5个文件需要编译:main,Board.cpp,Board.h,Node.cpp,Node.h我想在cmd中使用“make”命令并全部编译。我不知道如何为此编写正确的makefile,在搜索时我发现了这个Writemakefilefor.cppand.hppc++但这不是我的情况..帮助?? 最佳答案 最简单的是all:g++main.cppBoard.cppNode.cpp 关于c++-

c++ - Windows 10下为VTK生成Makefile时Qt mkspecs路径错误

我当前的任务是在Windows10下使用(静态)Qt和VTK为应用程序设置工作环境。我成功安装了Qt5.11.1static,现在想构建VTK。任何版本的VTK都可以,只要它与Qt5.11.1兼容,并且必须构建Qt模块(VTK_Group_Qt)。对于我的版本,我决定使用VTK8.1.1,但如前所述,任何版本都可以。我使用CMakeGUI配置VTK,使用MinGWMakefile(我使用MinGW64),效果很好。然后我想继续生成Makefile,打开VTK_Group_Qt。Qt的路径和版本已经被正确识别:Qt5Core_DIR      C:/build_environment/q

windows - Windows中有关于makefile的资料吗?

Windows和Linux中的makefile有什么区别吗?如果我会在Linux中使用,是否有必要学习Windows系统有什么新东西吗? 最佳答案 GnuWin32的好人有GnumakebuiltforWindows作为native二进制文件。它运行良好,但确实有一些小问题,因为一个善意的黑客试图将名为foo的目标与文件foo.exe等同起来。GnuWin32软件包确实包含一个很好的PDF手册IIRC。我在XP上与MinGW中的GCC一起使用它项目,以及几个不同的嵌入式系统交叉编译器工具链。MinGW还提供了GnuMake的本地构建

windows - Windows下使用通过MSYS2安装的cmake 3.5.2, "MinGW Makefiles"生成器丢失

我正在尝试使用MinGW作为编译器在Windows下制作cmake的helloworld测试。Thisanswer建议使用-G标志运行cmake,如下所示:cmake-G"MinGWMakefiles".但是,如果我这样做,我会收到一条消息说这不是已知的生成器。事实上,运行cmake--help,在Generators部分下它列出了以下生成器:如您所见,未列出“MinGWMakefiles”。如果这是相关的,我已经安装了MinGW并在我的系统上的常用文件夹C:\MinGW中工作。我还通过WinBuilds和MSYS2安装了MinGW-w64,同样是在默认安装文件夹中。我正在使用cmak

c - 如何使这个 1996 年的 makefile 起作用?

这是1996年旧GSM标准的make文件。我需要让它在运行OSX10.11.6的MacBook或Windows7的大学计算机上运行。Windows没有安装nmake在谷歌搜索之后,这个问题似乎是一个解决方案。有没有办法绕过makefile的使用?此外,将CDIR和UTILSDIR更改为完整路径在我的Mac上还不够。make-fmakefile.mak仍然返回TCC-A-I/Users/Henrik/Desktop/GSMHR2/DISK/c-Fc-ml-c/Users/Henrik/Desktop/GSMHR2/DISK/c/gsm_hr.cmake:TCC:Nosuchfileord

linux - 如何在 Windows 中设置 makefile

我尝试下载cygwin来运行我的makefile,但出现以下错误:>makeFIND:formatodelparametrononcorrettoFIND:formatodelparametrononcorrettog++-oesempiog++.exe:fatalerror:noinputfilescompilationterminated.makefile:12:recipefortarget'esempio'failedmake:***[esempio]Error1这是我的基本makefile:PHONY:allcleanCPPSOURCES+=$(shellfind.-name

python - Windows 等效于此 Makefile

编写Makefile的优点是“make”通常被认为存在于各种Unices(主要是Linux和Mac)上。现在我有以下Makefile:PYTHON:=pythonall:einstalldepse:virtualenv--distribute--python=${PYTHON}einstalldeps:e/bin/pythonsetup.pydevelope/bin/pipinstallunittest2test:e/bin/unit2discoverclean:rm-rfe如您所见,此Makefile使用简单的目标和变量替换。这可以在Windows上实现吗?也就是说-无需安装外部工具

windows - Makefile 仅适用于 MSYS2 (WIndows) 上的相对路径

我有一组程序可以在Ubuntu上正常编译,并且我正在开发一个也可以在Windows上编译的程序。我正在使用MSYS2。有一个主Makefile如下所示:####ProjectmaindirectoryDIR_MAIN=$(shellpwd)####Compileallall:@$(MAKE)-Csrc/MiscDIR_MAIN=$(DIR_MAIN)@$(MAKE)-Csrc/CF_statesDIR_MAIN=$(DIR_MAIN)等等。在src/中有一些文件夹,每个文件夹都包含该项目的特定Makefile。它们具有以下结构:####Directoriesandflagsifndef