问题标签 [jam]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
473 浏览

build - 在 Jam 中定义跨目录依赖

在使用 make 多年之后,我刚刚开始在我的项目中使用 jam(实际上是 ftjam)。

在我的项目工作区中,我有两个目录:

  • src我在哪里构建可执行文件和库
  • test我的测试程序在哪里

我正在尝试建立对测试程序的依赖关系,以便每次编译它们时,库也会重新编译(如果需要的话)。

关于如何做的任何建议?

0 投票
4 回答
8762 浏览

migration - 什么是 Boost Jam,Jam 是否值得迁移?

什么是 Boost Jam,Jam 是否值得迁移?

我知道 jam 是 perforce 构建的构建系统,但是我不确定 boost jam 和常规 jam 有何不同。

我也希望 SO 社区中有人与它合作过,也许可以突出一些差异和/或好处。

0 投票
3 回答
1635 浏览

visual-studio - 从 Jamfile 构建 Visual Studio 项目?

任何人都知道从基于 Jamfiles 的构建中创建 Visual Studio 项目的方法吗?

我会选择一个 jamfile -> XML-or-some-other-intermediate-format exporter tool,所以我可以自己编写。

0 投票
3 回答
2063 浏览

c++ - 如何使用 Jam make 工具构建项目的不同版本?

我有一个 C++ 项目,可以编译成不同的版本,包括发布、调试、共享库和可执行文件,每个版本都有不同的编译器标志。我正在尝试将 Jam 作为 Make 的替代品,因为它看起来像一个更简单的系统。

果酱有这个能力吗?主要问题是它总是将 .o 文件与源文件放在同一个文件夹中,因此在构建多个版本时会覆盖它们。

更新

我找到了一个似乎可行的解决方案。使用此文件,我可以构建库或可执行文件的调试和发布配置。

构建发布库的命令:

如果您只键入jam,它会构建调试可执行文件。这是 Jamfile:

0 投票
1 回答
3694 浏览

unit-testing - 如何使用带有 Jam 的 gtest_main 库构建 googletest 单元测试?

我正在尝试构建一个 googletest 单元测试,以作为我们可能使用的新单元测试框架的概念证明。在 googletest 中,有两种编写单元测试的方法:使用 main 或不使用 main。如果您没有定义 main,您可以链接到 gtest_main 库,其中包含一个 main() 函数,为您节省一些时间。在我的环境中,我们使用 Jam 构建二进制文件。我已经在我的代码中使用 main() 编译二进制文件并使用 libgtest 库,但我正在寻找如何在没有 main 的情况下在 Jam 中构建它。

基本情况(带有 main() 函数):

我可以用这个构建一个二进制文件:

破案(没有 main() 函数):

我无法用这个构建二进制文件。当我尝试链接对象时看到许多错误:

我收到许多与未定义的 blah 引用有关的链接器错误。未定义的引用似乎来自 testing::internal 命名空间,这不是我的代码的一部分。

关于如何解决这个问题的任何想法,或者寻找更多关于这个问题的线索?

0 投票
1 回答
1602 浏览

build - Jam 中的单独构建目录和包含目录

我想改用 Jam 作为我的构建系统。目前,我有一个 src、include 和 build 目录,我想知道如何让 Jam 将目标文件放入 build 目录并在 include 目录中搜索包含文件。

0 投票
1 回答
4169 浏览

c++ - 如何使用 -g 调试标志编译 boost?

我想重新编译我们的 boost 库,但启用了 -g 调试标志。我一直在阅读并看到我们使用jam. 虽然我make很清楚,jam但一直躲避着我,我的挫败感越来越大。

0 投票
1 回答
995 浏览

c++ - 如何在 Windows 上构建 LuaPlus

我下载了 JamPlus(在花了相当长的时间发现这是所需的特定 Jam 衍生产品并且没有随下载提供),并按照指示设置我的 PATH 变量,但事情不起作用。

具体来说,Jam 列出了一系列错误,例如无法找到源文件夹和写入不存在的项目,并且在尝试使用 Visual Studio 构建实际输出的内容时,它会跳过构建 69 个项目并且无法构建另一个项目。

如何构建 LuaPlus?或者甚至只是......直接包含来源或其他东西......?

0 投票
3 回答
3151 浏览

cross-platform - 从 Jam 迁移到 CMake

我了解 Jam 构建现有项目,CMake 生成要构建的项目。但是,鉴于我宁愿生成可以在各种 IDE 中使用的项目,而不是尝试将 Jam 集成到这些 IDE 中,有没有人有任何经验/成功将 Jamfile 转换为 CMakeLists.txt 文件?

0 投票
1 回答
52 浏览

qnx - Jam 在 QNX Neutrino 主机上的内置变量 $(OS) 中有什么价值?

我必须根据构建主机配置我的编译。Windows 和 Linux 很简单,无论如何我都可以访问构建主机来测试它。

到目前为止,我完全没有找到 $(OS) 的值,只是为了检查我的期望,$(OSPLAT)。我假设 OSPLAT 在 x86 机器上是 X86,类似于其他 QNX 支持的 SDP 包

如果有人可以访问安装了 QNX SDP 的 QNX/Neutrino 系统,则下面的 Jam 脚本可以产生结果: