问题标签 [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.
eclipse - 如何使用 Eclipse CDT 构建 SCons 项目?
我们有一个相当大的 C/C++ 项目,使用 scons 进行构建。我想尝试通过 Eclipse-CDT 来构建它。任何人都有这方面的经验,可以告诉我将 scons 设置为 builder 的步骤。(不使用 SConsBuilder 插件,它不适用于 Fedora-11 的 Eclipse-CDT)。
python - 为什么 SCons VariantDir() 不将输出放在给定目录中?
我正在考虑将SCons用于一个新项目。它看起来真的很好,虽然我觉得VariantDir
很混乱。
我有一个简单的项目,在一个目录中有几个 C 源文件,我想在“正常”和“配置文件”模式下构建——有两组不同的 gcc 选项。我希望输出分别进入 normal/ 和 profile/ 目录。
为了测试,我已经缩减到只有一个源文件 tc,其中有一个main()
。我的SConstruct
文件位于同一目录中,如下所示:
当我运行 scons 时,我希望它把 t.exe 放到 release/ 中,但它把它们放在当前目录中。而且我根本无法在未注释的 3 个配置文件行的情况下运行它——如果这样做,我会收到此错误:
scons: *** 为同一个目标指定了两个具有不同操作的环境:to
基本上,我不确定为什么我的 VariantDir() 调用没有告诉 scons 将输出放在指定的输出目录中,release
.
(我在文档和新闻组中阅读了很多内容,但没有任何内容可以回答这个问题。我最接近的是这个页面,它描述了类似的东西,但它涉及一个单独的 src/ 目录和两个单独的 scons 文件, 以及在它们之间导入/导出变量。这似乎并不令人愉快。)
python - 如何使用 eclipse 和 pydev 调试 SCons 脚本?
我是 SCons 的新手,也使用 pydev。有人可以帮助我提供有关如何使用 Eclipse 和 pydev 调试 scons 脚本的说明吗?考虑到 SCons 是一个单独的应用程序而不是 python 的扩展,是否有可能?
scons - 当 foo 存在时,为什么 scons 抱怨“未找到隐式依赖项 foo,目标 bar 需要”?
斯康斯在抱怨
foo 在我的 SCons 构建流程中创建,然后在创建目标栏时使用。创建 foo 后,SCons 在运行 bar 之前重新检查依赖项时抱怨它不存在。为什么 SCons 缓存 foo 的存在检查?
失败后,如果我删除 .sconsign.dblite 并重新运行,SCons 会找到该文件并继续运行。
c++ - 在 Windows 和 Linux 上构建 C++
我参与了针对 Windows 和 Linux (RHEL) 平台的 C++ 项目。到目前为止,开发完全是在 Visual Studio 2008 上完成的。对于 Linux 编译,我们使用了第 3 方 Visual Studio 插件,它读取 VS 解决方案/perojects 文件并在 Linux 机器上远程编译。
最近决定放弃 3rd 方插件。
现在我最关心的是构建系统。我一直在寻找跨平台构建工具。这样我就不需要维护两组构建文件(例如 vcproj/solution for Windows 和 make files for Linux)。
我找到了以下候选人:斯康 B. 制作
您如何看待跨平台开发的工具?
还有一点让我感到困扰的是,如果没有 vcproj 文件,Visual Studio(+ Visual Assist)会失去很多功能——你如何使用这些工具来处理这个问题?
谢谢迪玛
PS 1:我喜欢 Scons 的一点是它(a)使用 python,因此它很灵活,而 cmake 使用专有语言(我知道它不是构建系统的赢家功能)(b)自包含(不需要在 Linux 上生成 makefile,就像使用 cmake 一样)。
那么为什么不是斯康斯呢?为什么在您的项目中决定使用 cmake?
c++ - 使用 Visual Studio 2008 进行跨平台编译
鉴于:
- 超过 500K LOC 的 C++ 代码库
- 用于 Windows (Visual Studio 9 2008) 和 Linux (RHEL) 的基本代码相同
开发过程中最常见的任务当然是编辑/编译/修复(因此我们喜欢编程:))。我们的大多数开发人员都只有 Visual Studio 背景,恕我直言,它非常强大。
有没有办法从 VS 中远程在 Linux 机器上编译?
我找到了这个站点和这个其他站点,但是 Visual Studio 9 2008 不支持 nmake,而我需要添加命令行以至少构建/重建和清理。我发现我可以将一个命令添加为预构建事件或外部工具(Menu->Tools->...)。但它只有 1 个命令,而我需要 3 个命令。
也许还有其他方法?
谢谢迪玛
_
xcode - 是否可以自动生成 Xcode 项目?
简单的问题。是否有任何工具可以从命令行生成 Xcode 项目?我们使用 SCons 来构建我们的跨平台应用程序,但这不支持内部 Xcode 项目生成。我们希望避免手动创建项目,因为这将涉及维护多个文件列表。
scons - Scons Install() 仅适用于 --install-sandbox
我有一个我正在构建的 python 模块的 SConstruct 文件:
跑步:
导致库和相关的 .py 模块安装在 ./sandbox/usr/local/lib/python2.6/site-packages 中。如果我只是运行:
作为 root,没有任何东西安装到 /usr/local/lib/python2.6/site-packages。
为什么没有沙箱选项 scons 不构建安装目标?
caching - 如何缓存使用 Ant 脚本和 SCONS 构建的静态库的配置设置?
目前,我们在构建应用程序之前构建了一组静态库。问题在于,对于每个库,./configure、make、test 序列都有一些变化。我希望能够缓存配置步骤的结果以加快构建速度,因为在同一平台上多次构建是很常见的。我们正在考虑将构建过程中的每个步骤包装在 SCONS 过程中,但我们不确定这是否可行。有任何想法吗?