crastpad是C 应用程序的错误报告系统。https://chromium.googlesource.com/crashpad/crashpad//head/head/doc/developing.md
构建说明是
$ cd ~/crashpad/crashpad
$ gn gen out/Default
$ ninja -C out/Default
我可以构建预定义的静态液体,但我还没有找到一种使用gn
或ninja
生成共享库的方法。
运行gn gen outDefault
后,您可以编辑outDefaulttoolchain.ninja
文件以在cc
和cxx
规则的命令中添加额外的编译器标志。
rule cc
command = ninja -t msvc -e environment.amd64 -- cl.exe ... ${cflags} ${cflags_c} /c ...
add the /MD compiler flag after the others, here ^
@bobbyg603的答案是几乎我需要的。
,但是像往常一样,事物不是手工编写的,而是嵌入脚本中的,因此打开编辑器以更改事物通常根本不是真正有用的。以编程方式,您也可以使用:
gn gen outDefault --args="extra_cflags="/MD""
这也将改变CXX的参数。
生成忍者文件后,对于每个忍者文件,查找switch/mtd(debug)或/mt(发行版本),然后将其更改为/mdd或/md被创建
然后,您可以使用Ninja构建CrastPad,输出仍然是LIB文件,因此当您将其链接到项目时,它们将包含在EXE文件中(您不必将其添加到项目中,因为使用DLLS)。<<<<<<<<<<<<<<<</p>
我们今天对此进行了又一次的看法。如果运行gn args --list outDefault
,您会注意到以下内容:
extra_cflags
Current value (from the default) = ""
From //third_party/mini_chromium/mini_chromium/build/BUILD.gn:50
Extra flags passed to the C compiler.
Space-separated string of flags.
"cflags" are passed to all invocations of the C, C++, Objective-C, and
Objective-C++ compilers.
将/MDd
标志添加到您的构建配置运行gn args outDefault
并将extra_cflags="/MDd"
添加到构建配置。