gpt4 book ai didi

c++ - 如何使用 `cc_common.create_link_variables` API?

转载 作者:行者123 更新时间:2023-12-02 10:38:13 35 4
gpt4 key购买 nike

我正在尝试编写一些复杂的Starlark规则,这些规则使用(相对)新的cc_common API在Linux上链接并构建多个动态库。

您可以使用以下两种方法使用此API创建编译/链接操作:

  • 使用相对“高级”的compile() / link()方法和
  • create_compile_variables() / create_link_variables()get_memory_inefficient_command_line()一起使用,然后使用生成的命令行直接调用actions.run()

  • 特别是,我正在尝试让#2正常工作。我的问题是,如何创建 param_file传递给 create_link_variables?似乎没有任何Starlark API。

    https://docs.bazel.build/versions/1.1.0/skylark/lib/cc_common.html#create_link_variables

    最佳答案

    agoessling我为您共享了几个源文件here
    应该可以很好地了解如何较低端使用cc_common API进行端到端使用。
    这个API仍然存在漏洞,即内置cc规则通过cc_common不可能提供所有可能的功能,但我想说90%可用。
    我与Bazel团队没有任何关系,并且代码是我自己进行挖掘和嗅探的结果。没有担保,但对我有用。如果您遇到任何困难,请告诉我-我会尽力提供帮助。
    如果您知道如何做得更好(更漂亮,与内置规则更兼容,更独立于平台等),我将不知所措。祝好运!

    关于c++ - 如何使用 `cc_common.create_link_variables` API?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59048999/

    35 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com