gpt4 book ai didi

visual-c++ - MSVC - 通过 Makefile 创建静态库

转载 作者:行者123 更新时间:2023-12-05 04:05:41 26 4
gpt4 key购买 nike

因此,我一直在尝试通过在 Microsoft 的 x64 命令行工具下启动 mingw32-make,在 Windows 下的 MSVC 下创建一个静态库。我收到链接器错误 LNK1561:必须定义入口点。为了完整起见,这是我的 Makefile。

all: build\lib\libds.lib

build\lib\libds.lib: build\obj\priority-queue.obj
link /OUT:build\bin\libds.lib build\obj\priority-queue.obj

build\obj\priority-queue.obj: libs/ds/priority-queue.c include/ds/priority-queue.h
cl /Iinclude /c libs/ds/priority-queue.c /Fo:build\obj\priority-queue.obj

当我为 main() 添加定义时,库链接没有问题。怎么回事?

最佳答案

当我们构建静态库时,我们需要使用 link.exe/lib [LIB Options]link.exe -lib [LIB Options]lib [ LIB 选项]。这没有很好的记录(部分在这里 - Running LIB )

请注意 - 当您运行 lib.exe xxx - 它会执行 link.exe -lib xxx 并退出 - 所以 lib.exe不是自助服务实用程序,而是填充到 link.exe(与 dump.exe xxx reexec link.exe -dump xxx 相同)。我们当然可以使用 lib.exe 进行构建,但最好使用 link.exe/lib 命令。

关于visual-c++ - MSVC - 通过 Makefile 创建静态库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50848318/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com