问题标签 [gn]
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.
selenium-chromedriver - 如何使用 Google Chromium GN 构建目标?
我正在尝试使用GN从源代码构建ChromeDriver的可执行目标,我使用Depot Tools将其安装在 PATH 上的目录中,但是当我运行时出现此错误:gn BUILD.gn
如果我设置不正确,我不确定是否需要检查整个 Chromium 目录?
更新
我在gn_tool的帮助下下载了 gn 的工作二进制文件。
我仍然不确定我应该为“构建 chromedriver 目标”运行什么命令,因为现在我尝试的每个命令似乎都给了我这个错误:
...即使在我运行 gn 的目录中有一个 BUILD.gn 文件...
android - 如何使用带有原生库的 android 库作为 Chromium 的依赖项?
我正在努力将一些库(aar
包含本机库 ( .so
))集成到 Chromium 中(更详细地是针对 Snapdragon 优化的分支)。
为了在 Android 代码中使用它,我必须修改chrome/android/BUILD.gn
并添加 2 个依赖项:
所以我必须创建third_party/libxyz
目录,将 aar 文件放在那里并创建BUILD.gn
:
请注意ignore_native_libraries = false
,libxyz 具有本机库。
在构建 Chromium 时出现错误:
不支持带有 .so 文件的 android_aar_prebuilt()。使用 ignore_native_libraries = true 来消除这个错误。
它来自这里: https ://chromium.googlesource.com/chromium/src/build/config/+/master/android/rules.gni#2817
断言(_ignore_native_libraries || !_scanned_files.has_native_libraries, ...
是否有可能使用aar
本机库、一些解决方法或修改rules.gni
?如果我必须自己添加支持 - 我是否应该编辑rules.gni
并添加从解压缩aar
到目标目录的本地库(这似乎很简单)?
更新 1:由于目标名称错误(不支持“-”),我不得不更改目标名称并将“-”替换为“_”。
build - 我在 ../third_party/libevent/event-config.h 中找不到 Windows 的 event-config.h 路径或如何为 Windows 生成 event-config.h
再会 !
我尝试使用 chromium api 构建应用程序。
我安装铬源代码和工具 https://chromium.googlesource.com/chromium/src/+/master/docs/windows_build_instructions.md
我可以生成 Visual Studio 解决方案 *.sln 并编译所有项目。$ gn gen --ide=vs out\Default $ devenv out\Default\all.sln
然后我下载示例 $ git clone https://github.com/dreamer-dead/chromium-sample-app.git sample_app
并尝试构建项目
$ gn gen --args=is_debug=true --root=../ ../out/gn $ ninja -C ../out/gn sample_app
我收到了消息 - 错误为您的平台生成 event-config.h
- 之后我检查了文件 /third_party/libevent/event-config.h
事件配置.h
我可以看到我没有适用于 windows 的 event-config.h
问题 - 我如何为 Windows 生成 event-config.h ?
问候, 弗拉基米尔
webrtc - WebRTC 也不是为 Windows 构建的
就像在这个问题WebRTC not building for Windows中一样,我无法在带有 VS 2015 的 Windows 7 64 位上构建 WebRTC,但问题有所不同。fetch和gclient 同步顺利进行,没有错误。但是当我运行 gn gen out/WebRTC 时,我得到以下错误
我尝试添加上述问题中提到的变量,但没有帮助。任何帮助将不胜感激。
google-chrome - 为 Chromium 创建构建目录时 GN 抛出错误
我正在尝试使用 GN for Chromium 源代码在我的 Windows 10 笔记本电脑上创建一个构建目录。这就是我所做的:
- 设置
WIN TOOLCHAIN
系统环境变量并将其设置为0 - 附加
C:\src\depot_tools
到我的系统Path
变量 -C:\src\depot_tools\src
是源代码所在的位置 - 下载一个有效的 GN.exe 二进制文件并将其放在与 相同的文件夹中
GN.exe.sha1
,该文件夹位于C:\src\depot_tools\src\buildtools\win
我试着跑gn gen out\Default
,但是这一直被抛出-
macos - 在 Mac 上构建 Chromium
我一直在尝试在 Mac 上构建 Chromium。我一直在关注这里的文档
Fetch 将无法正确结束,并将退出并显示以下堆栈跟踪:
我在目录中有 .glient,但没有 .gclient_entries。
当我运行 gclient sync :项目已同步,但它与堆栈跟踪退出:
不知道我在这里缺少什么。
chromium - gn教程hello_world中无法生成vcxproj文件
我跑
但没有生成 hello_world.vcxproj。
build - 设置铬时出错
从源代码设置 chromium 时出现以下错误。
当我跑步时gn gen out/Default
我无法弄清楚如何解决这个问题。
我关注了 https://chromium.googlesource.com/chromium/src/+/master/docs/linux_build_instructions.md
也提到了这些
https://groups.google.com/a/chromium.org/forum/#!topic/ chromium-os-dev/360e3QsLH-8
https://groups.google.com/a/chromium.org/forum/#!msg/chromium-os-dev/nM7Af-sJP_I/YoqXPgZ0BQAJ
无法获得更多细节。
这些讨论涉及PKG_CONFIG_LIBDIR
但不清楚在哪里设置此值或准确使用它。
关于我可能缺少的任何输入?
google-chrome - 如何覆盖 GN 目标/模板的变量值?
我shared_library
在我的 Chromium 构建中添加了 GN 目标。它具有根据toolchain.gni
规则中定义的扩展名:
我想更改扩展名,因此我需要覆盖shlib_extension
变量,但仅适用于我的shared_library
目标。如果我修改toolchain.gni
它将影响所有使用shlib_extension
变量的目标。
我不想使用output_name
shared_library 属性,因为我可以看到使用out_name="lib${target_name}.cr"
以下内容v8.ninja
:
但如果shlib_ext=".cr.so"
进行以下操作v8.ninja
:
(这意味着output_name
更改文件名,而不是扩展名)
作为问题的逻辑延续,是否可以覆盖.gn 文件中的变量,但仅适用于目标/模板is_debug
?is_component_build
假设我想构建V8
(is_component_build=true
并v8.gni
在模板中进行),但其余代码采用默认或用户定义的变量值。
android - (Android 版 Chromium)如何通过 GN/NINJA 添加预构建共享库(.so)而无需源代码?
我正在研究 chromium for android 的源代码:尝试在 Webkit 中开发一些功能。
我做了什么:(1)在“third_party/WebKit/Source/core/frame”中创建test.cpp/test.h:test.cpp包含addlib.h调用addlib.so中的求和函数(下一步创建) (2)通过“g++ -fPIC -shared addlib.cpp -o addlib.so”在“third_party/WebKit/Source/core/frame”中创建add.h和add.so(addlib.so只提供求和的功能两个整数并返回结果)
我的目的:在test.cpp中调用addlib.so中的函数
但是 gn 给了我错误信息:
对我有什么建议吗?非常感谢。