标签: nmake

如何利用nmake的所有内核?

我刚买了一台新的四核计算机,发现nmake只使用了1个进程.

我曾经使用过具有开关-j4的make来启动4个进程.什么是nmake等价物?

[编辑]根据以下信息,我可以在qmake项目文件中添加一个命令:

QMAKE_CXXFLAGS + =/MP

这对我有效.非常感谢.

c++ eclipse qt nmake multicore

44
推荐指数
5
解决办法
4万
查看次数

如何在Windows上安装PyQt5?

当我尝试使用该命令在Windows上安装PyQt5时

python configure.py
Run Code Online (Sandbox Code Playgroud)

我收到此错误:

Error: Make sure you have a working Qt qmake on your PATH.
Run Code Online (Sandbox Code Playgroud)

我从PyQt5下载了pyQt5 .

我该如何安装PyQt5?


更新:

Qt 5.0.2 for Windows 64-bit (VS 2012, 500 MB)Qt下载页面安装,现在我有这个错误:

Querying qmake about your Qt installation...
Determining the details of your Qt installation...
Error: Failed to determine the detail of your Qt installation. Try again using
the --verbose flag to see more detail about the problem.
Run Code Online (Sandbox Code Playgroud)

当我执行命令时python configure.py --verbose:

Querying qmake about your …
Run Code Online (Sandbox Code Playgroud)

python windows qt nmake pyqt5

26
推荐指数
5
解决办法
14万
查看次数

gnu make,microsoft nmake和posix标准有多相似/不同?

gnu make,microsoft nmake和posix标准有多相似/不同?

显然有"哪个操作系统?","哪个编译器?" 和"哪个链接器?",但我具体指的是makefile本身的语法,语义和命令行选项.

如果我根据gnu make的手册编写makefile,那么我需要注意哪些最重要的可移植性问题?

portability nmake makefile gnu-make

23
推荐指数
1
解决办法
5661
查看次数

对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万
查看次数

Windows中CMake的默认生成器是什么?

在一台PC上运行CMake时,CMake默认生成NMake文件.另一方面,它生成一个Visual Studio项目.

我知道我可以通过添加-G "NMake Makefiles"到我的CMake语句的末尾来覆盖默认值,但我想知道为什么它默认为一个上的Visual Studio项目和另一个上的NMake文件.

c nmake generator cmake visual-studio

18
推荐指数
1
解决办法
1万
查看次数

我在哪里可以获得独立的nmake.exe?

nmake.exe,Microsoft Windows的make端口,曾经可以在Microsoft知识库服务器上下载.他们已经把这篇文章放下了,我不知道在哪里可以可靠地获得一个独立版本nmake.exe.我会使用其中一个Microsoft Visual Studio开发平台的副本,但我担心我会忘记包含一些备用DLL文件.

nmake visual-studio

18
推荐指数
3
解决办法
5万
查看次数

如何使用nmake为C++项目组织项目树?

组织项目文件似乎有两个主要的约定,然后是许多变体.

惯例1:高级类型目录,项目子目录

例如,wxWidgets项目使用以下样式:

/solution
   /bin
      /prj1
      /prj2
   /include
      /prj1
      /prj2
   /lib
      /prj1
      /prj2
   /src
      /prj1
      /prj2
   /test
      /prj1
      /prj2
Run Code Online (Sandbox Code Playgroud)

优点:

  • 如果存在项目依赖项,则可以从单个文件管理它们
  • 平面构建文件结构

缺点:

  • 由于test有自己的头文件和cpp文件,因此当您为EXE文件而不是库生成单元测试应用程序时,它们需要包含您正在测试的应用程序中的目标文件.这需要您创建推理规则并扩展所有源文件的相对路径.
  • 重用另一个解决方案中的任何项目需要您从树结构中提取适当的文件并修改任何构建脚本

惯例2:高级项目目录,类型子目录

例如,Wireshark项目使用此样式

/solution
   /prj1
      /bin
      /include
      /lib
      /src
      /test
   /prj2
      /bin
      /include
      /lib
      /src
      /test
Run Code Online (Sandbox Code Playgroud)

优点:

  • 项目本身在其文件夹中是自包含的,使其更易于移动和重用
  • 允许在构建工具中使用更短的推理规则
  • 促进分层构建脚本

缺点:

  • 如果项目之间存在依赖关系,则需要在项目目录上方添加一层构建脚本来管理构建顺序

我们目前正在使用我们项目的惯例1,到目前为止它已经运作得相当好.现在,我正在添加单元测试(通过CxxTest)并使用nmake促进迁移到持续集成,约定1在创建正确的nmake文件时引起了一些严重的麻烦.

我的主要要求/目标是:

  • 降低维护整个解决方案的构建脚本的工作量.

  • 在其他项目的解决方案中分离项目及其构建步骤.

  • 通过使用构建脚本进行签出以便为每次提交释放媒体生成,从而促进持续集成(显然也利用其他工具,如CruiseControl).

  • 为开发人员添加或删除其他项目或源文件尽可能简单且最不容易出错.

所以我问:

  • 这两种方法都有其他优缺点吗?
  • 有没有一个明确的agrument只赞成这些约定之一?

build-automation nmake project-organization

17
推荐指数
1
解决办法
3442
查看次数

Running a program/script from QMake

我们有一个相当大的代码库.绝大多数代码是使用qmake编译来生成makefile的.但是,有一些子项目可以通过运行批处理文件或运行其他程序来生成.

我希望能够使用qmake编译所有内容,但我无法弄清楚如何让qmake简单地运行脚本.

我尝试过的一件事是在我的专业文件中使用QMAKE_EXTRA_TARGETS,如下所示:

TEMPLATE = lib
SOURCES = placeholder.cpp
CONFIG += no_link staticlib
batch_runner.target   = placeholder.cpp
batch_runner.commands = my_batch_file.bat
QMAKE_EXTRA_TARGETS   = batch_runner
Run Code Online (Sandbox Code Playgroud)

然后我必须让批处理文件生成placeholder.cpp,如下所示:

# do the real work here
# ...
# create placeholder.cpp so qmake and nmake are happy
echo // dummy >> placeholder.cpp
Run Code Online (Sandbox Code Playgroud)

这似乎工作正常.麻烦的是它有些笨拙.如果我没有指定batch_runner.target(即我将其留空)或者没有将placeholder.cpp放在SOURCES中,则批处理文件永远不会运行.这是因为qmake没有使batch_runner.commands成为Makefile中任何其他依赖项的操作.

有没有更好的方法让QMake构造一个Makefile,以便在Makefile执行时运行脚本?

qt qmake nmake makefile

16
推荐指数
3
解决办法
2万
查看次数

NMAKE:致命错误U1077:返回代码'0xc0000135'

我正在尝试按照此处说明的步骤操作:但在将以下内容输入控制台后:

configure.exe -release -no-webkit -no-phonon -no-phonon-backend -no-script -no-scripttools -no-qt3support -no-multimedia -no-ltcg
Run Code Online (Sandbox Code Playgroud)

我收到以下错误:

....  
....  
....  
Running syncqt...  
Creating qmake...  

Microsoft (R) Program Maintenance Utility Version 10.00.30319.01
Copyright (C) Microsoft Corporation.  All rights reserved.

        cl -c -Fo./  -W3 -nologo -O2  /MP  -I. -Igenerators -Igenerators\unix -Igenerators\win32 -Igenerators\mac -Igenerators\symbian
 -IE:\qt_source\include -IE:\qt_source\include\QtCore  -IE:\qt_source\include -IE:\qt_source\include\QtCore  -IE:\qt_source\src\corelib
\global  -IE:\qt_source\src\corelib\xml  -IE:\qt_source\mkspecs\win32-msvc2010   -IE:\qt_source\tools\shared  -DQT_NO_TEXTCODEC -DQT_NO
_UNICODETABLES -DQT_LITE_COMPONENT -DQT_NODLL -DQT_NO_STL  -DQT_NO_COMPRESS -DUNICODE -DHAVE_QCONFIG_CPP -DQT_BUILD_QMAKE -DQT_NO_THREA
D  -DQT_NO_QOBJECT -DQT_NO_GEOM_VARIANT -DQT_NO_DATASTREAM -DQT_NO_PCRE -DQT_BOOTSTRAPPED  -DQLIBRARYINFO_EPOCROOT -c -Yc -Fpqmake_pch.
pch -TP …
Run Code Online (Sandbox Code Playgroud)

qt nmake visual-studio-2010

15
推荐指数
1
解决办法
5万
查看次数

配置 CMake 项目时出错:运行 'nmake' '-?' 失败的

我正在按照本教程在 Windows 上构建 GLFW,但在运行时遇到错误cmake -S . -B Build

PS ~\glfw-3.3.2\GLFW> cmake -S . -B Build
CMake Error at CMakeLists.txt:3 (project):
  Running

   'nmake' '-?'

  failed with:

   The system cannot find the file specified


-- Configuring incomplete, errors occurred!
See also "~/glfw-3.3.2/GLFW/Build/CMakeFiles/CMakeOutput.log".
Run Code Online (Sandbox Code Playgroud)

输出日志几乎完全为空,仅包含我的 Windows 版本的一行。我还没有找到任何与我的匹配的讨论或问题。我什至不知道 nmake 是否有-?标志,因为它没有在微软文档网站上列出。

我尝试过定位在其他文件夹中,因为也许就是这种情况。但没有运气。

我尝试用其他错误解决方案来解决它,但无济于事。

c nmake cmake

15
推荐指数
2
解决办法
4万
查看次数