问题标签 [bakefile]

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 投票
3 回答
4716 浏览

build-process - Makefile 生成器:premake vs bakefile?

对于我的 C++ 构建过程,我正在使用Bakefile,这是一个不错的小 Makefile 生成器,它允许您在 XML 中指定构建目标,并且可以从中生成各种 Makefile 或项目文件。它工作正常,我用它来生成 GNU autotools 脚本。

现在我听说了Premake,它似乎具有类似的功能。您在Lua中指定目标,它会相应地生成 Makefile。

有谁知道 Bakefile 和 Premake 之间的区别?有没有人有这两种经验?Premake 似乎更新更近,发展更积极?

XML 解析器ticpp使用 Premake,但它要求您在构建 ticpp 之前下载 premake。难道他们不能为各种系统预先生成 Makefile,这样您就不必先下载和安装 premake?

注意:我知道关于什么是最好的构建工具有各种 SO 线程,通常答案是CMakeSConsJam。但是,我对我的用户在构建我的项目之前不必下载的东西感兴趣。

0 投票
3 回答
371 浏览

windows - 在 Windows 和 Linux 上支持 32/64 位目标的跨平台 make 系统

我正在寻找一个类似于 CMake 或 Bakefile 的 make 系统,它支持生成 Visual Studio 项目文件和 makefile(针对 Linux)双目标 x86 和 x64(在同一个项目/make 文件中)。

我看过 CMake 和 Bakefile,它们在这方面似乎都有局限性;它们似乎都不支持多个目标(Bakefile 甚至似乎不支持 64 位 vcproj)。

是否有任何其他可能合适的工具,开源的或付费的?

0 投票
1 回答
454 浏览

makefile - 考虑修改文件进行重建

我有一个 C++ 项目,我使用 Bakefile 进行构建过程,为 msvc、mingw、gnu 等生成 Makefile 以提供跨平台支持。

现在的问题是,如果我更改任何 .h 文件(包含在其他 .cpp 文件中)并且执行重建不会重新编译修改后的文件。但是更改任何 .cpp 文件都会重新编译。

根据项目中包含的任何文件的修改时间戳,我希望考虑对该文件进行重建。

我是否遗漏了需要在 .bkl 文件中添加为标签的内容?请帮忙。

0 投票
1 回答
479 浏览

c++ - 如何运行此烘焙文件 (.bkl)

我有以下烘焙文件(WinSparkle.bkl)

我下载了适用于 Windows 的 bakefile 并安装了它。然后我做了以下

关于可能出了什么问题的任何建议?

0 投票
1 回答
61 浏览

c++ - 在 Bakefile 中获取命令的输出

我刚刚开始使用 wxWidgets 进行项目,并且正在尝试设置 Bakefile 以进行跨平台编译。我需要将wx-config --libs和的输出传递wx-config --cxxflags给编译器。

我怎样才能做到这一点?我在 Bakefile 文档中找不到任何关于将命令的输出转换为变量的内容。反引号似乎不起作用:

0 投票
1 回答
302 浏览

macos - 在 Mac osx 10.11 中安装 Bakefile

我一直在尝试在 mac osx 10.11 中安装bakefile (v0.2.9)。每当我尝试使用 dmg 文件安装 bakefile 时,都会The installation failed.The installer could not install the software because there was no software found to install出错。

我什至尝试从源代码(来自 github 的 v1.2.5.1)构建它。我使用sudo make命令构建了它。但是sudo make install命令会抛出No rule to make target install

有没有其他方法可以在 macosx 10.11 中安装 bakefile?

编辑: 最后我设法在 osx 10.11 中安装了 bakefile 0.2.9。我不能使用最新版本,因为它不支持我们在项目中使用的 bakefile。

虽然安装成功,但当我尝试构建 bakefiles(.bkl) 时出现分段错误 11 。一些论坛建议该问题可能与 python 2.7 有关。我遵循了解决问题所需的所有步骤。但他们都没有帮助。

我一直在使用 python 2.7.11。如何避免这种分段错误?

0 投票
1 回答
274 浏览

linux - 转义系统变量以作为参数传递给 make

我有一个由 bakefile 生成的生成文件,它工作正常。要运行可执行文件,它需要来自不同文件夹的库。我找到了用于指定这些库路径的命令 rpath。但是我必须在使用命令时将它作为参数发送到makefile。我不能直接从烘焙文件中指定它。

我可以使用 LDFLAGS 参数,这很好。我在这里找到了如何使用 $ORIGIN 变量。

我的问题是这种转义是如何工作的?

make LDFLAGS="-Wl,-rpath '-Wl,\$\$ORIGIN'"

是单引号来防止 make 解释变量吗?为什么 \$ 在这里两次?

0 投票
1 回答
122 浏览

wxwidgets - WxWidgets 3.0.3 Bakefile 示例使用不同的 Bakefile 版本打印相互矛盾的错误消息

我在 OSX 10.12.4 上,似乎有一个现有的系统安装WxWidgets 3.0.2以及bakefile 0.2.10.

我不想触摸系统安装的 WxWidgets,所以我下载了 WxWidgets 3.0.3 的 tarball,运行configure --preset=/somelocalfolder && make install.

我想为一个适用于所有平台的简单 WxWidgets 项目设置一个 Bakefile。我阅读bakefile_quickstart.txt并决定尝试从build/bakefiles/wxpresets/sample/minimal.bkl

运行bakefile -f gnu minimal.bkl给了我以下错误:

此错误消息没有意义,因为我相信version 0.2.10大于version 0.2.2.

我决定下载最新版本的 Bakefile version 1.2.5.1,.

命令行标志和二进制名称似乎已经完全改变,所以我只是尝试了以下内容:

bkl minimal.bkl

这给了我错误:

这两个错误消息相互矛盾,我不知道该怎么办。