如何在windows平台下为第15课构建windows静态库?

How to build a windows static library for lesson15 under windows platform?

我已经在 windows 平台上使用 Visual studio 2019 成功构建了 LLVM 和 Halide。
然后我尝试制作一些 no_runtime objs 和一个 halide_runtime obj 以及 link 它们在一起。

./lesson_15_generate \
    -g my_first_generator \
    -f my_first_generator_basic \
    -e object,c_header\
    -o . \
    target=x86-64-windows-no_runtime

    ./lesson_15_generate \
        -g my_first_generator \
        -f my_first_generator_sse41 \
        -e object,c_header\
        -o . \
        target=host-x86-64-windows-sse41-no_runtime

    ./lesson_15_generate \
        -g my_first_generator \
        -f my_first_generator_avx \
        -e object,c_header\
        -o . \
        target=host-x86-64-windows-avx-no_runtime

    ./lesson_15_generate \
        -r halide_runtime_x86 \
        -e object,c_header\
        -o . \
        target=x86-64-windows

windows 静态库link编辑如下

prompt>link.exe /out:test.lib halide_runtime_x86.obj my_first_generator_basic.obj my_first_generator_sse41.obj my_first_generator_avx.obj

但是,系统返回如下错误

Microsoft (R) Incremental Linker Version 14.26.28806.0
Copyright (C) Microsoft Corporation.  All rights reserved.

LINK : fatal error LNK1561: entry point must be defined

请说明如何在 windows 平台上构建静态卤化物库。


通过将 /lib 添加到 link.exe

解决了问题

prompt>link.exe /lib /out:test.lib halide_runtime_x86.obj my_first_generator_basic.obj my_first_generator_sse41.obj my_first_generator_avx.obj

将 /lib 添加到 link.exe

prompt>link.exe /lib /out:test.lib halide_runtime_x86.obj my_first_generator_basic.obj my_first_generator_sse41.obj my_first_generator_avx.obj