在Darwin上从Tensorflow编译二进制文件时,出现以下错误:
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
字段似乎无效。