问题标签 [waf]
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.
build - 如何为自定义编译器编写 waf 文件?
我厌倦了在 make 中查找魔法符号并决定尝试waf。
我正在尝试使用 calibre 制作电子书,我想创建一个 wscript,它接收一个文件,运行一个包含该文件的一些参数的程序,并产生一个输出。仅当输入文件比输出文件新时才应构建 Waf。
在make中,我会写一个像这样的makefile:
其中 % 是文件基本名称的魔术符号,$ 是输出文件名 (basename.epub) 的符号。
我可以打电话make soverflow.epub
,它会在 soverflow.recipe 上运行 ebook-convert。如果 .recipe 自上次构建以来没有更改,则它不会做任何事情。
我怎样才能在 waf 中做类似的事情?
(为什么是 waf?因为它使用了一种我已经知道的真实语言。如果这在 scons 中真的很容易使用,那也是一个很好的答案。)
python - 在 Mac OS 10.7 上构建 pybindgen 时出现 waf 错误
我正在尝试在 Mac OS 10.7 上构建 Pybindgen。Lion Everything 在 Ubuntu 上运行良好,可以进行比较,但是......
在 OS X 上,waf 安装程序(Pybindgen 使用 waf 构建和安装)对此感到窒息:
=> 但我 100% 确定我的 Mac SDk 中至少有 Python.h ...我知道它在那里...我只是不知道如何确保 waf 找到它... waf 中有一个函数称为 check_python_headers 这似乎是问题所在。我怎样才能解决这个问题?
python - 使用 WAF 构建 QT 项目
我正在尝试使用 waf 构建我的项目。该项目已正确编译,但存在一些链接错误。它无法链接到资源文件(.qrc 文件)
main.cpp.1.o:在函数
main': /home/sobingt/project/masterdetail/build/../main.cpp:20: undefined reference to
qInitResources_masterdetail()'
WAF 输出 --zones=deps
脚本文件
树状结构
我知道这一定是一个愚蠢的错误。请帮忙。链接到qtcentre 中发布的问题 我知道这一定是一个愚蠢的错误。请帮助。链接到在 qtcentre 中发布的问题
我现在正在尝试的解决方案:我在所有包含 Q_OBJECT 宏的头文件(或源文件)上运行 moc。
然后将 moc_something.cpp 添加到正在构建的源中。
我正在尝试资源编译器:
然后必须将 masterdetail.cpp 添加到正在构建的源中。
我认为以上是由 qmake 自动完成的。我正在手动编译它以尝试找到合适的解决方案
c - waf - 构建工作,自定义构建目标失败
waf 命令使用以下 wscript 文件(或者 wscript 文件有一些我目前不知道的其他缺点waf build
)显示编译器错误(如果有的话),waf debug
无论waf release
是否总是失败:
产生的错误waf debug
:
我查看了 waf 演示,阅读了第 6.2.2 节中的 wafbook,但这些并没有为我提供有价值的信息来解决这个问题。
出了什么问题,我该如何解决?
python - 如何告诉 Python waf 在哪里放置包?它可以与virtualenv一起使用吗?
我正在尝试在我选择的目录中安装现成的 waf 包(py2cairo)。理想情况下在我的 virtualenvsite-packages
中。这应该很简单,但我似乎无法让 waf 去做。
我想改变/usr/local/lib/python2.6/site-packages/cairo/__init__.py
我选择的东西。我找不到可以为我执行此操作的配置选项。
该--prefix
命令为字符串添加前缀,但不会更改它。--destdir
似乎没有什么区别。
c++ - 从 Windows 中的 waf 构建 Qt 程序中删除控制台
我有这个使用waf构建的 Qt 程序。我正在 Windows 中对其进行测试,每次运行 exe 文件时,控制台都会打开。在 (Qt)pro 文件中(如果使用 qmake 构建),您只需要确保删除
但我不确定是什么链接器标志,我必须在我的 wscript(waf) 中添加才能实现这一点。我必须指定/SUBSYSTEM: WINDOWS
msvc 编译器将我的程序作为 Windows 程序
请帮忙。
我的 wscript.py
qt - 从 Windows 切换到控制台时出现 LInker 错误
我正在将 Qt 用于 GUI 并在 waf 中构建我的项目。为了从控制台(默认)切换到 Windows 子系统,我必须通过我的 wscript(waf)将此参数传递给 VS 链接器
我在 waf 文件的构建部分中添加了这个,我收到了这个错误
我想将此程序作为 Windows 而不是作为控制台运行。如果我将其作为控制台运行,则代码有效
ubuntu - 构建验证:在 pkg-config 搜索路径中找不到包 libvala-0.12
我正在尝试构建最新版本的valide (0.7.1)
我已经在我的机器(Ubuntu 10.0.4 LTS)上成功构建了 VALA(v 0.17.0)。当我跑
./waf configure
在 valide src 目录中,我得到以下输出:
我在我的系统上检查了相关的 .pc 文件
然后我按如下方式导出了相关的 ENV VAR:
然后我运行./waf configure
。令我沮丧的是,我得到了与之前发布的完全相同的输出。
在 Ubuntu 10.0.4 LTS 上构建验证需要解决什么问题?
c++ - 使用 waf 构建系统将程序与 Boost.Asio 链接
我正在尝试在 Debian 挤压、python 2.6.6 上使用 waf 构建最简单的 Boost.Asio 教程示例“timer1”(它在 timer.cpp 中)。
root@ds:/var/timer# ls
timer.cpp 脚本
wscript 这里是 waf 的配置:
waf configure
是成功的。
但waf --verbose build
以错误结束(我在下面插入<*>
以标记一行)
似乎 waf 调用的 gcc 在链接期间没有找到 boost_system 库。
但是,如果我在没有 waf 的情况下通过 gcc 构建示例,一切正常。
如您所见,waf 使用的命令行(由 标记<*>
)与由 标记的命令行相同<**>
。但结果完全不同。为什么?我怎么能强迫 waf 建造那个东西?这里的解决方案对我也不起作用。也试过
但没有任何影响
还有一个问题。的输出gcc --verbose
比 的输出广泛得多waf --verbose
。在我看来,该verbose
选项必须强制 waf 显示所有此类信息。为什么那不是真的?waf 选项 -vvv 也不显示此信息。