问题标签 [scons]

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 投票
1 回答
111 浏览

java - OSX下的JAVA_HOME变量...究竟是什么?

我一直在尝试在 OSX 上构建评估器。不幸的是,我几乎不知道 ant 或 scons 究竟做了什么。

我的主要问题是当我做类似的事情时

我在做什么。

提前致谢

0 投票
8 回答
1664 浏览

makefile - Make受欢迎的原因与替代品

是什么力量在使笨拙的旧 Make(带有或不带有 makefile 生成器工具)作为构建工具突出?是替代品的缺陷使它们无法被广泛采用,还是宣传不足,或者 Make 有什么东西让它保持原样?

尽管 Make 在处理大型项目时存在许多弱点和困难(例如,请参阅http://freshmeat.net/articles/what-is-wrong-with-make),但它似乎仍然比更新的、改进的替代品(如Scons )更广泛地使用,果酱耙子库克等。

替代方案是否有可衡量的收益,或者“市场份额”主要取决于团队领导的意见和经验?

0 投票
2 回答
2923 浏览

c++ - 组件测试的测试框架

我正在寻找适合我要求的测试框架。以下是我在自动化测试期间需要执行的步骤:

  • 设置(有一些输入文件,需要读取或复制到某些特定文件夹中。)
  • 执行(单独运行)
  • 拆除(清理以使系统处于旧状态)

除此之外,我还希望有一些智能来确保 .cc 文件是否更改,所有可以验证更改的测试都应该运行。

我正在为此评估 PyUnit、cppunit 和 scons。考虑运行这个问题以确保我的方向正确。你能推荐任何其他的测试框架工具吗?选择正确的测试框架还应考虑哪些其他要求?

0 投票
2 回答
233 浏览

php - 你可以使用 scons 来构建 PHP 扩展吗?

编写 PHP 扩展的标准方法是使用 autoconf/automake 以及一个名为 phpize 的脚本,该脚本似乎会根据特定于您的 PHP 环境的模板生成您的 autoconf 配置。这让它为正确版本的 PHP 等构建 PHP 扩展。

autoconf 和用于配置它的 m4 语言是晦涩难懂的,人们已经编写了替代方案,例如 scons。我希望能够在构建 PHP 扩展时使用其中之一。

原则上,您应该能够使用 scons 或类似工具来构建 PHP 扩展。但是,我看不到您将如何替换 phpize 步骤。

有没有人在使用 scons 或其他更现代的构建工具构建 PHP 扩展方面取得任何成功?

0 投票
3 回答
690 浏览

build - 如何在包含版本号的路径中找到编译器?

我正在尝试为嵌入式系统项目设计一个 SConstruct 文件。我机器上的编译器位于“C:\Program Files\IAR Systems\Embedded Workbench 5.4\arm\bin”我希望构建系统尝试定位工具链,即使安装了另一个版本的 Embedded Workbench,或者如果用户已选择将其安装在其他地方。

我也对 makefile 或 ant 文件中使用的策略感兴趣,因为它们在这里可能也很有用。

有哪些策略可以做到这一点?除了搜索 Windows 注册表或查找“C:\Program Files\IAR Systems\Embedded Workbench *\arm\bin”之外,我还有其他选择吗?

0 投票
1 回答
1086 浏览

scons - SCons 不那么冗长?

我想从 SCons 日志中删除长的编译/链接命令。

我遵循了此页面上所写的内容: 您如何使编译器行更短?

这正是我所做的:

SCons 进入 if('test' 被打印),并且 CXXCOMSTR 和 LINKCOMSTR 被更新(使用 Dump() 检查)。

但似乎 SCOns 根本不在乎:它仍然打印完整的 g++ 命令。

感谢帮助。

0 投票
1 回答
933 浏览

debugging - CDT、SCons 和附加调试

我是 Eclipse/CDT 开发的新手,对 gcc/gdb 不是很有经验。

我的项目(一个共享库)是使用 SCons 在 Eclipse 中构建的。生成的 .so 在 SCons 脚本的末尾被复制到另一个地方(也许这是一个重要的点)。

我的应用程序是一个插件,用户必须在宿主应用程序中加载。所以我想启动宿主应用程序,加载我的插件/库,然后将调试会话附加到宿主应用程序(我认为这是我应该做的)。

我创建了一个调试配置。我选择“C/C++ 附加到应用程序”来创建我的配置。在主选项卡中,我设置了我的项目、构建配置(调用 SCons 脚本),对于“C/C++ 应用程序”,我放置了主机应用程序的路径。

但这不起作用。可能是因为生成的 .so 的位置。在生成器设置中,生成位置是 ${workspace_loc:/myProjectName}。我不理解这种语法,即使我理解 workspace_loc 代表我的项目根目录。无论如何, iot 与 SCons 文件生成 .so 的位置无关。也许这就是问题的根源?

谢谢你的帮助。Eclipse 文档对这些点非常了解。

更新:我收到以下错误:ptrace:不允许操作。

0 投票
1 回答
427 浏览

latex - scons 没有找到 LaTeX DVI 生成器

我在运行 Snow Leopard 的 iMac 上安装了 MacTex-2009(来自http://www.tug.org/mactex/2009/)和 scons(1.2.0)。然后我用一个简单的 SConstruct 文件测试了安装:

和一个明显的 LaTeX "hello.tex" 文件。当我执行“scons”时,我得到:

在第一行之后,我添加了命令:

我可以看到 DVI 生成器没有出现。我在 Linux 机器上使用相同的文件(不同的 TeX 安装)并且它可以工作。

有什么提示吗?

0 投票
6 回答
12821 浏览

static - SCons 使用静态库 (.a) 创建共享库 (.so)

我正在尝试让 SCons 创建一个共享库。进入的项目之一.so.a静态库。

我有这样的一行:

在运行它时,我收到此错误:

但是,我知道可以.a通过以下命令创建共享库:

任何关于让它工作的想法或任何解决方法都将不胜感激。


相关问题:如何让 scons-shared在 LINK 命令行上为Program()调用添加一个附加字符串?如果我能做到这一点,我认为它会满足我的需求。

0 投票
2 回答
802 浏览

python - SCons - 转换目录中的所有图像

我想编写一个 SConstruct 文件,它将(例如)目录中的所有 JPEG 文件转换为 PNG。

我认为我的 Builder 没问题:

但是我不确定如何列出所有需要构建的目标。我可以像这样以 Python-y 的方式做到这一点:

然后也许我会为那些使用别名:

或者手工制作一个节点并将其Depends用于转换。

问题是,这似乎是扫描仪的目标。但我无法让它正常工作。我尝试制作一个可以在目录上工作的 Builder 并调用一个可以添加一堆目标的 Scanner,但它不起作用,因为 SCons 内部期望 Builder 可以在文件上运行。(或者至少,这是我从错误消息中收集到的)。

有没有更多的 SCons-y 方式来做到这一点?