问题标签 [prebuild]

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 回答
73 浏览

c++ - 如何在预构建事件中解析 C++ 代码?

我的 C++ 工具链中有一个预构建事件工具(用 Ruby 编写),它可以从现有的 C++ 源代码生成额外的 C++ 代码。我想用更快的生成器替换这个工具,使用 clang 将是最好的选择。

有没有办法编写一个解析文件的 C++ 源代码的 C++ 应用程序,所以我可以在 Clang 中实现这个预构建工具?我正在寻找如何开始的关键字或页面。非常感谢任何帮助!

0 投票
1 回答
749 浏览

android - AOSP 添加预建 APK - 错误未知目标

我正在制作 LineageOS 17.0 的个人版本,我想在其中包含一些预构建的 APK。为此,我有一个单独的文件夹“vendor/apps”,其中包含两个文件 apps-vendor.mk 和 Android。 mk,还有一个我存储 APK 文件的子文件夹“app”。这是在此线程Add prebuilt apk to AOSP build的帮助下完成的。

现在,虽然我已经成功地包含了许多 APK,例如 Blokada、FDroid,但我时不时地遇到一个我根本无法添加到构建中的 APK,例如 TotalCommander。

如果我通过正常的构建过程,它根本不会被添加。如果我使用例如“mma TotalCommander”,我会收到一条错误消息“FAILED: ninja: unknown target 'TotalCommander'”。

以下是我在我的 apps-vendor.mk 文件中包含的内容:

这是我的 Android.mk 文件的摘录:

我尝试了一些不同的方法,例如将 APK 文件名换成一个正在工作的文件名,尝试使用不同的模块名(如 TC 等),所有这些都给出了相同的结果。

0 投票
2 回答
1084 浏览

android - ROM 宋错误:无法识别的模块类型

我试图为 Z00ED 构建 RR Pie,在前十秒我得到以下输出(完整输出)。我试图从这里使用设备回购:

感谢所有的帮助!

0 投票
1 回答
256 浏览

android - 如何在 Android.bp 文件中创建 Path 变量以链接预建目录 AOSP 源代码中的库

我正在尝试为 Android.bp 文件中的预建库创建路径变量。这些库被放置在/prebuilts/sdk/current/androidx/m2repository/androidx/room/room-common/2.3.0-alpha02/和 Android.bp 在其他目录中。如何为预建的 android.bp 文件创建链接以访问库。

0 投票
1 回答
138 浏览

c++ - 使用 CMake 运行预构建步骤的最佳实践

假设您有一个存储库,其中包含一个文件夹(名为 dataset),其中包含多个 .csv 文件和一个 python 脚本(名为 csvcut.py),该脚本获取数据集中的所有 .csv 并生成相应的 .h 文件。

这些 .h 文件包含在一些 .cpp 文件中,以构建add_executable(testlib...用于测试的可执行文件 ( )。

假设您使用add_custom_target(test_pattern...创建一个运行 csvcut.py 的目标(名为 test_pattern),并add_dependencies(testlib test_pattern)在构建 testlib 之前运行该脚本。

这可行,但如果:

  • 该脚本仅在数据集文件夹中的文件或脚本本身发生更改时运行(而不是在 .cpp 更改时);
  • .h 文件在 build 文件夹的子文件夹中生成(即 build/tests/dataset/),并包含在 .cpp 文件中,如下所示#include <tests/dataset/generated.h>

您对进行这些改进/优化有什么建议吗?

谢谢,阿尔贝托

0 投票
1 回答
192 浏览

node.js - Heroku msnodesqlv8 问题 - 部署时出错

我正在尝试将我的应用程序部署到 Heroku,但不断收到此错误,我找不到解决方案。我的数据库已经在服务器上,可以毫无问题地连接。

-----> 在 Heroku-20 堆栈上构建 -----> 使用 buildpack:heroku/nodejs -----> 检测到 Node.js 应用

-----> 创建运行环境

----->安装二进制engines.node(package.json):16.1.0engines.npm(package.json):未指定(使用默认)engines.yarn(package.json):未指定(使用默认)

-----> 安装依赖项安装节点模块(yarn.lock)yarn install v1.22.10 [1/4] 解决包... [2/4] 获取包... [3/4] 链接依赖项.. . [4/4] 构建新包...错误/tmp/build_513662c2/node_modules/msnodesqlv8:命令失败。退出代码:1 命令:prebuild-install || node-gyp rebuild 参数:目录:/tmp/build_513662c2/node_modules/msnodesqlv8 输出:(node:801) [DEP0150] DeprecationWarning:不推荐设置 process.config。将来,该属性将是只读的。(利用node --trace-deprecation ...显示警告的创建位置) make: Entering directory '/tmp/build_513662c2/node_modules/msnodesqlv8/build' CXX(target) Release/obj.target/sqlserverv8/src/ConnectionHandles.o 在来自 ../src/ 的文件中ConnectionHandles.h:22,来自 ../src/ConnectionHandles.cpp:1: ../src/stdafx.h:37:14:致命错误:sqltypes.h:没有这样的文件或目录 37 | #include <sqltypes.h> | ^~~~~~~~~~~~ 编译终止。make: *** [sqlserverv8.target.mk:164: Release/obj.target/sqlserverv8/src/ConnectionHandles.o] 错误 1 ​​make: Leaving directory '/tmp/build_513662c2/node_modules/msnodesqlv8/build' gyp ERR!构建错误 gyp ERR!堆栈错误:make退出代码失败:2 gyp ERR!ChildProcess.onExit (/tmp/build_513662c2/.heroku/node/lib/node_modules/npm/node_modules/node-gyp/lib/build.js:194:23) 的堆栈 gyp 错误!ChildProcess.emit (node:events:365:28) 的堆栈 gyp ERR!堆栈在 Process.ChildProcess._handle.onexit (node:internal/child_process:290:12) gyp ERR!系统 Linux 4.4.0-1088-aws gyp ERR!命令“/tmp/build_513662c2/.heroku/node/bin/node”“/tmp/build_513662c2/.heroku/node/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js”“重建”吉普错误!cwd /tmp/build_513662c2/node_modules/msnodesqlv8 gyp 错误!节点 -v v16.1.0 gyp 错误!节点-gyp -v v7.1.2 gyp 错误!不好的信息 访问https://yarnpkg.com/en/docs/cli/install以获取有关此命令的文档。-----> 构建失败

我认为它与“msnodesqlv8”有关,因为当我从 package.json 中删除它时,一切似乎都工作正常并且可以部署应用程序。任何帮助,将不胜感激。

0 投票
0 回答
33 浏览

unity3d - 如何在 Prebuild 中设置 Unity SplashScreen Logo

我们正在尝试以编程方式为 Android 和 iOS 生成和设置 Unity SplashScreen。

下面的代码在从 Unity 调用时有效,[MenuItem("VoodooSauce/TEST")]但在从IPreprocessBuildWithReport-OnPreprocessBuildor调用时无效RegisterBuildPlayerHandler...

我们动态生成“splashScreenSprite”并可以成功将其保存为PNG。
我们甚至可以将这个 PNG 文件重新加载为 Sprite。

但是,无论我们做什么,SplashScreen.logos 代码都不起作用......

奇怪的是,无论我们在哪里调用我们的代码,它总是会更新 PlayerSettings.SplashScreen 中的其他字段,例如 BackgroundColor 等。

0 投票
0 回答
55 浏览

haskell - 如何使用 haskell 和 stack 在 gitpod 上预构建

我已经检查了https://github.com/gitpod-io/template-haskell 并将一本书的样本(haskell 深度)合并到我的分支中。

预构建没有任何效果,每次打开工作区都会从头开始整个构建过程。所以 gitpod 对于这个项目实际上是不可用的,因为 Zou 必须等待整个构建完成,然后才能开始使用工作区。

我认为原因可能是,堆栈构建将构建工件存储在 ~/.stack 中,并且该位置不是工作区的一部分,因此当工作区关闭时它会丢失。

那正确吗?然后,如何让构建结果保持活力?

0 投票
0 回答
150 浏览

next.js - Next.js - 为大量动态页面预取数据

我创建了一个非常大的项目,其页面有超过 800,000 个变体。在我当前的 React 项目中,我只需访问www.mywebsite.com/my_page/:id上的 url 参数并使用 useEffect。这是简化的示例:

所以这工作得很好。情况是每次打开页面时我都会在此处获取响应,但每个 ID 的信息至少在一年内都是相同的。所以至少一年内没有任何变化。加载包含信息的页面通常需要 5-6 秒,我想知道 Next.js 预取是否可以预先构建所有页面并且无需加载它们?我知道数字 800,000 相当大,所以这就是我要问的原因。如果我使用getStaticProps,我可以用更少的 id 做类似的事情,但是如果需要 5 秒来获取 1 页的数据并且它们是 800,000,这是否意味着我必须等待构建 800,000x5 = 46 天?

提前致谢!