Skip to content

Halide generator to produce c++ file... #8850

@Honya2000

Description

@Honya2000

Hallo,

I'm trying to integrate Halide generator to my cmake project and have issues with debug configurations...
Following examples i setup generator this way:

Find Halide

find_package(Halide REQUIRED)

Generator

add_halide_generator(resize.generator SOURCES halide/rgb_resize_generator.cc)

add_halide_library(halide_ResizeRgb FROM resize.generator GENERATOR resize_generator)

And final step - I link halide_ResizeRgb to my project.

But there is problem with debug build configuration.
It fails because of runtime libs mismatch between generated lib and Halide compiler GenGen:

halide_ResizeRgb.runtime.vcxproj -> halide_ResizeRgb.runtime.lib
16>Halide_GenGen.lib(GenGen.cpp.obj) : error LNK2038: mismatch detected for '_ITERATOR_DEBUG_LEVEL': value '0' doesn't match value '2' in resize_generator.obj
16>Halide_GenGen.lib(GenGen.cpp.obj) : error LNK2038: mismatch detected for 'RuntimeLibrary': value 'MD_DynamicRelease' doesn't match value 'MDd_DynamicDebug' in resize_generator.obj

Actually i expected Halide generated c++ source file instead of obj / libs. So i can then include this c++ file to the project and can easily step into functions with the debugger in usual way.

But unfortunately i didn't find the way how to produce c++ sources instead of object files.
With c++ sources with all required optimizations - loop unrollings / simd intrinsics, etc - it would be portable for any platform, like wasm, linux, windows, etc. And also this would work under visual studio debugger,

Any help please ?

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions