C 静态链接IUP与Visual Studio

C 静态链接IUP与Visual Studio,c,visual-studio,linker-errors,iup,C,Visual Studio,Linker Errors,Iup,我已经下载了IUPIUP-3.25_Win64_vc15_lib.zip(他们提供的最新x64位VS版本)文件,并将其解压缩到我的项目中(在名为库的子文件夹中)。我正在尝试编译以下内容: #include "Librarty/include/iup.h" int main(int argc, char **argv) { IupOpen(&argc, &argv); IupMessage("TEST", "Test App"); IupClose

我已经下载了IUP
IUP-3.25_Win64_vc15_lib.zip
(他们提供的最新x64位VS版本)文件,并将其解压缩到我的项目中(在名为
的子文件夹中)。我正在尝试编译以下内容:

#include "Librarty/include/iup.h"


int main(int argc, char **argv) {

    IupOpen(&argc, &argv);

    IupMessage("TEST", "Test App");

    IupClose();
    return 0;
}
我已经通过选择添加了头文件的路径

Project > Properties > Additional Include Libraries > File path
它被设置为
Library/include

接下来,我通过以下方式添加了.lib文件:

Project > Properties > Linker > Additional Library Dictionaries
从答案中选取的方法

最后,我通过以下方式添加了.rc文件:

Under Solutions Explorer > Project Name > Add Existing Item > Given File Path 
将其设置为
Library/ext/iup.rc

然后,我尝试编译我的项目,但出现以下错误(我已将编译器设置为x64版本):

我需要做什么才能让它建成

项目路径:

C:\Users\Simon\Desktop\Learn\IUP\
IUP库:

C:\Users\Simon\Desktop\Learn\IUP\Library

编辑:完整链接器:

/OUT:"C:\Users\Simon\Desktop\Learn\IUP\x64\Release\IUP.exe" /MANIFEST /LTCG:incremental /NXCOMPAT /PDB:"C:\Users\Simon\Desktop\Learn\IUP\x64\Release\IUP.pdb" /DYNAMICBASE "kernel32.lib" "user32.lib" "gdi32.lib" "winspool.lib" "comdlg32.lib" "advapi32.lib" "shell32.lib" "ole32.lib" "oleaut32.lib" "uuid.lib" "odbc32.lib" "odbccp32.lib" /DEBUG:FULL /MACHINE:X64 /OPT:REF /PGD:"C:\Users\Simon\Desktop\Learn\IUP\x64\Release\IUP.pgd" /MANIFESTUAC:"level='asInvoker' uiAccess='false'" /ManifestFile:"x64\Release\IUP.exe.intermediate.manifest" /OPT:ICF /ERRORREPORT:PROMPT /NOLOGO /LIBPATH:"C:\Users\Simon\Desktop\Learn\IUP\Librarty" /TLBID:1

确保在“附加依赖项”行中指定的库是64位文件(因为您正试图构建该文件)。二进制文件不能在32位和64位版本之间共享。如果您确实希望为所有配置生成此项目,则需要进入项目设置并为每个平台添加适当的库。@SoronelHaetir啊,对不起,我不太清楚。我下载的zip是x64,我在VS中使用的是x64版本,所以很遗憾,这不是问题所在:(Visual Studio中的一个常见错误是编辑调试目标的属性,然后生成发布目标。链接器是否有更完整的命令行?我看不到您的帖子中正在使用的libs。右键单击树中的项目,然后单击属性,再单击链接器,然后单击命令行。请再次注意,有4种可能的调试组合。)/发布+Win32/x64。在一种配置中设置选项并使用另一种配置进行构建是很常见的。我按照您的建议动态链接了一个DLL,它工作了。但我似乎无法让它在静态lonking中工作。
/OUT:"C:\Users\Simon\Desktop\Learn\IUP\x64\Release\IUP.exe" /MANIFEST /LTCG:incremental /NXCOMPAT /PDB:"C:\Users\Simon\Desktop\Learn\IUP\x64\Release\IUP.pdb" /DYNAMICBASE "kernel32.lib" "user32.lib" "gdi32.lib" "winspool.lib" "comdlg32.lib" "advapi32.lib" "shell32.lib" "ole32.lib" "oleaut32.lib" "uuid.lib" "odbc32.lib" "odbccp32.lib" /DEBUG:FULL /MACHINE:X64 /OPT:REF /PGD:"C:\Users\Simon\Desktop\Learn\IUP\x64\Release\IUP.pgd" /MANIFESTUAC:"level='asInvoker' uiAccess='false'" /ManifestFile:"x64\Release\IUP.exe.intermediate.manifest" /OPT:ICF /ERRORREPORT:PROMPT /NOLOGO /LIBPATH:"C:\Users\Simon\Desktop\Learn\IUP\Librarty" /TLBID:1