Halide Can';不能运行AOT代码

Halide Can';不能运行AOT代码,halide,Halide,我目前正在编写AOT教程,编译部分也可以,但当我尝试构建包含已编译代码的代码(在单独的项目中)时,由于以下错误,它无法构建: 我如何解决它 编辑:跟进问题。我设法编译了2个函数,当我试图在同一个项目中使用它们时,它不断抛出以下错误: 这只是其中的几个错误。所以我的后续问题是。我可以将所有函数合并到一个文件中,还是有其他方法可以忽略双重定义?我通过添加.obj文件作为链接器的一个输入来解决这个问题我通过添加.obj文件作为链接器的一个输入来解决这个问题你可以在目标中包含NoRuntime功能来

我目前正在编写AOT教程,编译部分也可以,但当我尝试构建包含已编译代码的代码(在单独的项目中)时,由于以下错误,它无法构建:

我如何解决它

编辑:跟进问题。我设法编译了2个函数,当我试图在同一个项目中使用它们时,它不断抛出以下错误:


这只是其中的几个错误。所以我的后续问题是。我可以将所有函数合并到一个文件中,还是有其他方法可以忽略双重定义?

我通过添加.obj文件作为链接器的一个输入来解决这个问题

我通过添加.obj文件作为链接器的一个输入来解决这个问题

你可以在目标中包含
NoRuntime
功能来删除
卤化物
功能。当然,您仍然需要这些函数,您可以使用
compile\u standalone\u runtime()。当然,您仍然需要这些函数,您可以使用
compile\u standalone\u runtime()
?每次使用
编译成文件
都会产生一对AOT头文件/对象文件<代码>编译\u独立\u运行时
生成一个对象文件。将它们与使用AOT函数的代码链接在一起。这在Windows上可能会很乏味,因为您必须创建一个(或多个)项目来生成最终项目所需的目标文件。这是否意味着我必须复制要在AOT中编译的所有函数,并将它们放在单个项目中,然后调用
compile\u standalone\u runtime()
?每次使用
编译成文件
都会产生一对AOT头文件/对象文件<代码>编译\u独立\u运行时生成一个对象文件。将它们与使用AOT函数的代码链接在一起。这在Windows上可能会很乏味,因为您必须创建一个(或多个,如果您愿意)项目来生成最终项目所需的对象文件。