Как Дарвинские фреймворки могут быть предоставлены правилам `cc_library` или` cc_binary`? - PullRequest
0 голосов
/ 31 августа 2018

При компиляции двоичного файла из Tensorflow на Darwin я получил следующую ошибку: ld: framework not found IOKit.

Я использовал rules_nixpkgs (способ, которым моя команда решила предоставлять исполняемые файлы, компиляторы и т. Д., Изначально не поддерживаемые Bazel), чтобы получить копию инфраструктуры IOKit, и добавил filegroup цель:

nixpkgs_package(
    name = "iokit",
    repository = "@nixpkgs",
    attribute_path = "darwin.IOKit",
    build_file_content = """
package(default_visibility = ["//visibility:public"])
filegroup(
    name = "framework",
    srcs = ["Library/Frameworks/IOKit.framework/IOKit"],
)
cc_library(
    name = "headers",
    hdrs = glob(["Library/Frameworks/IOKit.framework/Headers/*.h"]),
)""",
)

добавление этого в поле srcs двоичной цели не сработало, поскольку допускает только определенные расширения файлов. Добавление поля data, похоже, не имеет никакого эффекта.

...