在 makefile 中指定路径(Windows 上的 GNU make)

2024-02-04

我正在使用 GNU make 来构建一个使用 Microsoft Visual C++ 的项目,并且我希望能够从任何 CMD 窗口运行它,而不必打开预配置路径(以及各种其他环境变量)的预配置窗口通过批处理文件。理想情况下,我想在 makefile 本身中定义相关的环境变量,所以我需要做的就是弹出一个 CMD 窗口并输入“make”。

总的来说,这很简单,但我在 PATH 中挣扎;到目前为止,我尝试使用标准 PATH 变量(如操作系统中定义的)并将路径附加到各种构建工具的每种语法都失败了。

我不会去尝试我尝试过的六七种不同的语法 - 其中一些给出了错误消息,其中一些没有给出错误消息但只是不起作用 - 我会简单地问这个问题:

  • 我必须在 makefile 中添加哪一行,以便将 link.exe 的路径(即“C:\Program Files (x86)\Microsoft Visual Studio 9.0\VC\bin”)添加到“make 使用的路径” “?

到目前为止,我最接近成功的是定义:

LINK =“C:\Program Files (x86)\Microsoft Visual Studio 9.0\VC\bin\link.exe”

...并将所有后续对“link.exe”的引用替换为 $(LINK),但这会失败,因为 link.exe 具有也必须位于路径上的各种依赖项(例如 mspdb80.dll)。


这有效:

DevEnvDir=C:\Program Files (x86)\Microsoft Visual Studio 9.0\Common7\IDE
VCINSTALLDIR=C:\Program Files (x86)\Microsoft Visual Studio 9.0\VC\bin

export Path:=$(DevEnvDir);$(VCINSTALLDIR);$(Path)

正是对“导出”和区分大小写的需求之前打败了我。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在 makefile 中指定路径(Windows 上的 GNU make) 的相关文章

  • 致命错误:向量:没有这样的文件或目录

    我有一个 Android 项目 其中包含大量 C 本机代码 但是 我无法构建我的库 因为它无法找到 vector h 头文件 可能是什么问题 我在几乎所有页面中包含的示例 include
  • makefile 目标依赖项取决于目标名称

    我有以下规则 SPECIAL file1 file2 o cpp a h CC c CFLAGS lt o 我希望如果 is in SPECIAL then b h已添加到依赖项列表中 有没有办法做到这一点 而不重复规则 您可以单独分配其他
  • Qt 和 MOC 的困境与简单的制作

    我想这更像是一个 GNU Make 问题 而不是 Qt 和 moc 但这里是 我有一个包含多个目录Q OBJECTS 我有一些简单的代码 它收集所有这些 例如 MOCS shell grep l Q OBJECT HEADERS Assum
  • 从哪里获取 iostream.h

    我正在尝试在 Linux 中做一些事情 但它抱怨找不到 iostream h 我需要安装什么才能获取此文件 这个标准头的正确名称是iostream没有扩展名 如果您的编译器仍然找不到它 请尝试以下操作 find usr include na
  • 如何使用 sys.path.append 在 Python 中导入文件?

    我的桌面上有两个目录 DIR1 and DIR2其中包含以下文件 DIR1 file1 py DIR2 file2 py myfile txt 这些文件包含以下内容 file1 py import sys sys path append s
  • 如何最好地以编程方式将 `__attribute__ ((unused))` 应用于这些自动生成的对象?

    In my makefile我有以下目标 它将文本 HTML 资源 编译 为unsigned char数组使用xxd i http linuxcommand org man pages xxd1 html 我将结果包装在匿名命名空间和标头保
  • 避免使用 git 和 make 重新编译

    我在 git 中有两个开发分支 并且经常需要在两者之间进行更改 然而 真正令人沮丧的是 每次我在 git 中更改分支时 整个项目都会重新构建 因为某些文件的文件系统时间戳会发生变化 Ofc makefiles 配置为将项目构建到两个不同的构
  • 过滤路径列表以仅包含文件

    如果我有一个清单FilePaths 如何过滤它们以仅返回常规文件 即不是符号链接或目录 例如 使用getDirectoryContents main do contents lt getDirectoryContents foo bar l
  • Python:当前目录是否自动包含在路径中?

    Python 3 4 通过阅读其他一些 SO 问题 似乎如果moduleName py文件位于当前目录之外 如果要导入它 必须将其添加到路径中sys path insert 0 path to application app folder
  • 在命令提示符中识别“Pip”,但在 PyCharm 终端中无法识别

    当我尝试在 Windows 命令提示符中运行 pip 时 pip V工作正常 但是当我尝试在 PyCharm 终端中运行它时 我得到 pip is not recognized as an internal or external comm
  • 全部配对图表上的所有路径

    这可能是一个没有最佳解决方案的问题 假设我有一个有向图 不知道它是否有循环 循环检测将是这个问题的方面之一 给定一组顶点 可能是数百万个顶点 我需要计算给定图的所有唯一对之间的所有不同路径 没有重复顶点的路径 我该如何应对这种情况 让我们看
  • 模块路径格式错误...第一个路径元素中缺少点

    我有一个包含 2 个不同可执行文件的项目 每个可执行文件都有自己的依赖项以及对根的共享依赖项 如下所示 Root gt server gt main go gt someOtherFiles go gt go mod gt go sum g
  • 如何获取通过网络驱动器访问的文件的 UNC 路径?

    我正在 VC 中开发一个应用程序 其中网络驱动器用于访问文件 驱动器由用户手动分配 然后在应用程序中选择驱动器 这会导致驱动器并不总是映射到相同的服务器 我该如何获取此类文件的 UNC 路径 这主要是为了识别目的 这是我用来将普通路径转换为
  • Resharper 中的警告“未使用纯方法的返回值”

    我有一个关于我正在工作的 c 项目中从 Visual Studio 中的 Resharper 收到的警告的快速问题 警告是 不使用纯方法的返回值 发生这种情况的方法如下 private static bool FilePathHasInva
  • Windows 内核中可能的最大文件名长度

    我想知道 什么是longestWindows 内核允许的可能名称长度 例如 我知道内核使用UNICODE STRING结构来保存所有对象路径 并且由于宽字符字符串的字节长度存储在USHORT 允许最大路径长度为 2 15 1 个字符 有没有
  • 如何使用ansible扩展Windows路径变量

    使用 win environment 可以向 Windows 主机添加 删除环境变量 但是要修改已经存在的变量 win environment 似乎没有用 因为您无法读取旧值来修改和更新变量 正确的 EDIT 从 Ansible 2 3 开
  • 您如何使编译器行更短?

    通常 当我与其他人一起处理一个项目时 随着时间的推移 编译器在 Makefile 中获取的库路径和包含路径的数量会变得越来越多 此外 路径也可能会变得很长 这是一个例子 g c pipe O2 Wall W DQT BOOTSTRAPPED
  • PHP如何找到Web服务器的临时路径?

    当您处理 HTTP 上传时 文件将上传到 FILES field name tmp name 我知道我可以从那里提取临时路径 但我期待着也许 SERVER具有临时路径 没有 或其他优雅的方式来了解它的参数 有没有 ini get uploa
  • 如何让 Makefile 目标被多次调用?

    在下面的简单示例中 我想做一个make dist并拥有distclean之前执行的目标distdebug and distrelease PHONY distclean dist distdebug distrelease echo in
  • 以不敏感的方式在 bash 中查找路径

    假设一条路径像 home albfan Projects InSaNEWEBproJECT 尽管事实上不使用这样的名称 有没有办法以不敏感的方式检查路径 我遇到了这个解决方案 但如果可能的话 我想找到一个内置或 gnu 程序 functio

随机推荐

  • 卸载 Microsoft ASP.NET 和 Web 工具

    我认为此扩展导致我的 Visual Studio 2015 Update 2 出现问题 但我无法卸载它 在 扩展 下 它已列出 但 删除 禁用 按钮呈灰色 我在 删除程序 功能 下也找不到它 我到底如何卸载这个扩展 通过其安装程序卸载 下载
  • VSCode 自动导入不适用于干净的角度项目

    使用 Typescript 3 9 7 拥有一个干净的 Angular 10 项目 一些自动导入和建议不起作用 例如 我开始输入 FormsM 它应该出现 FormsModule 来自动完成并从 angular forms 自动导入 但此选
  • 数据表和并行计算

    继这篇文章之后 R 中的多核和 data table https stackoverflow com questions 14697670 multicore and data table in r 我想知道在使用 data table 时
  • 使用 Mongo ObjectId 类型作为 Meteor 用户 ID

    我正在使用 Meteor 并且有一个关于覆盖 Meteor 用于用户 ID 的类型的默认行为的问题 我希望用户能够由唯一标识 idObjectId 类型的字段 而不是 Meteor 默认的任何类型 字符串 为了实现这种情况 我可以在某个地方
  • Android ListView多项选择在点击后不显示突出显示

    我有一个处于多选模式的ListView 我不想要复选框 我只是希望当我单击项目时 它们可以突出显示以显示选中状态 再次单击时 突出显示将消失并取消选中 所以现在我的问题是我的项目根本没有被检查和突出显示 我不知道为什么 这是代码 mFrie
  • 嵌套文件夹中的 web.config

    我正在尝试在另一个网络应用程序中安装一个应用程序 我有我的 aspx 页面和一些代码 我将其放入主应用程序的 app code 文件夹中 我已经为连接字符串等添加了自己的 web config 文件 但我认为存在冲突 所以我的问题是两个人
  • 如何为 opencart 多商店使用单独的语言文件?

    我使用的是 opencart 版本 1 5 5 1 我们有一个使用 opencart 框架编码的网站 该网站还使用 opencart 多商店功能 所有商店均使用英语 现在的问题是 是否可以针对不同的商店使用不同的语言标签 例如 一家商店与运
  • 如何在日语语言环境中显示反斜杠

    在我的应用程序中 我使用反斜杠作为基于文本的活动指示器的一部分 典型的 序列 我删除了 因为它具有不同的宽度 一切都很顺利 直到我看到我的应用程序在日本计算机上运行 反斜杠被替换为日语字符 我怎样才能避免这种情况 您可以使用 oOo 作为序
  • Cassandra:向表中添加新列

    您好 我刚刚在我的表 my table 中添加了一个新列 Business sys ALTER TABLE my table ALTER business sys TYPE set
  • 有没有办法在界面生成器中制作渐变背景色?

    对于我的应用程序 我使用 TableView 并使用自定义的 UITableViewCells 我通过界面生成器而不是以编程方式自定义了我的单元格 有没有办法在界面生成器中将自定义单元格的背景颜色设置为渐变 Thanks 这适用于 Swif
  • 上传多个文件显示错误代码:3

    这个问题和问的一样here https stackoverflow com questions 19275268 phonegap file transfer of picture fails on every other picture
  • NSTimer 一段时间后在后台停止

    当应用程序进入后台时 我使用 NSTimer 在 1 秒后调用一个方法 并在近 17 分钟后计时器停止工作 当它返回前台时 它再次开始工作 所以请告诉我为什么会发生这种情况以及如何解决该问题 我还尝试使用延迟递归的执行选择器来达到相同的目的
  • 调用 QtGui.QFileDialog.getExistingDirectory 时出错

    在 pyqt 代码中 我试图向用户提升一个对话框并让用户选择一个文件夹 看来 QtGui QFileDialog getExistingDirectory 方法应该能够做到这一点 问题是代码运行后有一些错误消息 D Lib debug pr
  • removeObject 是否释放 NSMutableArray 对象中的对象?

    我想知道当您在数组中使用removeObject 删除对象时 是否正确处理了删除的对象 被移除的对象会被释放吗 NSMutableArray 将释放它 如果这是最后一次保留 它将被释放 从文档中 与 NSArray 一样 NSMutable
  • 我的部分视图中的 Jquery 或 Javascript 问题

    我可以在部分视图中使用 jQuery 或 JavaScript 代码吗 我的部分视图中有一个网格 我试图在该部分视图中使用 jQuery 隐藏一个网格元素 我做不到 但如果我在没有部分视图的情况下使用它 相同的代码就可以工作 有人可以帮我吗
  • 委托不在单例中工作[关闭]

    这个问题不太可能对任何未来的访客有帮助 它只与一个较小的地理区域 一个特定的时间点或一个非常狭窄的情况相关 通常不适用于全世界的互联网受众 为了帮助使这个问题更广泛地适用 访问帮助中心 help reopen questions 为了在多个
  • Databricks - 无法从 DataFrame 写入 Delta 位置

    我想更改 Databricks Delta 表的列名称 所以我做了以下事情 Read old table data val old data DF spark read format delta load dbfs mnt main sal
  • 如何重建开发 Pod 变更?

    我有一个开发容器 我使用它在本地连接到我的应用程序 path gt Projects Swift pod 当我在该开发容器中的应用程序代码中进行更改时 构建后不会包含此更改 这就像我正在构建缓存代码 而不是更改我的代码 为了将代码更改包含到
  • 计算网络两个输出之间的 cosine_proximity 损失

    我正在使用 Keras 2 0 2 功能 API Tensorflow 1 0 1 来实现一个接受多个输入并产生两个输出的网络a and b 我需要使用 cosine proximity 损失来训练网络 这样b是标签a 我该怎么做呢 在这里
  • 在 makefile 中指定路径(Windows 上的 GNU make)

    我正在使用 GNU make 来构建一个使用 Microsoft Visual C 的项目 并且我希望能够从任何 CMD 窗口运行它 而不必打开预配置路径 以及各种其他环境变量 的预配置窗口通过批处理文件 理想情况下 我想在 makefil