如何将用C编写的源代码从另一个项目包含到我自己的Visual Studio C++项目中

Leb*_*arh 5 c c++ static-libraries visual-studio

我想在Visual Studio中使用Potrace在Windows上进行C++项目,但我不知道如何将Potrace包含到我的项目中.我试图使用Cygwin编译C文件,这样创建一个.a文件,然后在visual studio中链接到它,但这不起作用.Visual Studio能够识别Potrace中的函数,但是当使用Potrace运行测试程序(调用potrace_version())时,Visual Studio得到错误"LNK2019未解析的外部符号_potrace_version在function_main中引用"

我已经通过使用上面提到的技术在Ubuntu上工作,然后用以下代码编译我的代码:g ++ main.cpp backenddxf.cpp ImageManipulation.cpp ./libubuntu/libpotrace.a -o test.out'pkg-config - cflags --libs opencv

我是否必须将源代码(在网站上称为"源代码分发")编译为lib文件,然后将其链接到我的项目,在这种情况下,我该怎么做?或者有什么我错过了.我在Windows 10上使用Visual Studio 2017.

我不是要精通C++的工作原理,所以非常感谢详细的解释.

小智 4

我使用 Yaakov 的答案将 potrace 编译为 .a 文件,使其正常工作

./configure --prefix=/usr/x86_64-64-ming32/sys-root/mingw --host=x86_64-w64-mingw32 --with-libpotrace
Run Code Online (Sandbox Code Playgroud)

进而

make
Run Code Online (Sandbox Code Playgroud)

之后我使用 Stuti Rastogi 的这个答案来了解如何在 Visual Studio 中链接 .a 文件。