我正在尝试以 AOT 形式实现我的模板匹配(带绘图),当我通过包含从另一个项目编译的单独静态库来测试不同的方法是否有效时,我得到了如下构建错误:
严重性代码 描述 项目文件行抑制状态错误 LNK2005 _ZN6Halide7Runtime8Internal13custom_mallocE 已在 template_matching_ccorr.lib(template_matching_ccorr.lib.obj) 卤化物模板匹配 v2 AOT 中定义 运行 c:\Users\Admin\documents\visual studio 2015\Projects\Halide Template Matchign v2 AOT Run\Halide Template Matchign v2 AOT Run\template_matching_sqdiff.lib(template_matching_sqdiff.lib.obj) 1
有没有办法能够包含多个库并能够运行不同的功能?
还有一个类似的函数可以在 AOT 编译代码中使用,或者需要我创建两个不同的 AOT 函数(假设我可以调用多个函数开始)
编辑:快速修复似乎是将 /FORCE:MULTIPLE 添加到链接器的命令行
EDIT2:设法让它通过添加来编译
Target target = get_host_target();
target.set_feature(Target::NoRuntime, true);
除了解决多个定义的管道之外的大多数管道。现在我想知道为什么我必须在运行时使用一个管道,即使我可以只包含 HalideRuntime.h 但它并没有真正起作用。