Visual Studio Community 2017 cl 链接器不会链接 GTK3 库?
Posted
技术标签:
【中文标题】Visual Studio Community 2017 cl 链接器不会链接 GTK3 库?【英文标题】:Visual Studio Community 2017 cl linker won't link GTK3 libraries? 【发布时间】:2018-10-29 22:23:35 【问题描述】:我正在使用 GTK 作为 GUI 工具箱在 C 中编写代码。我通过 MSYS2 安装了 GTK3,并设法使用 GCC (TDM-Dragon) 编译和构建。
但是,最近我正在尝试使用 Visual Studio Community 2017 中包含的 cl 进行编译和链接(听说它更快更稳定)。有了这个,我很难构建一个应用程序。我松散地遵循本教程: http://www.tarnyko.net/en/?q=node/22
我创建了一个 BAT 文件并从 VS 2017 命令提示符调用它:
set GINC_PATH="C:\msys64\mingw64\include"
set GLIB_PATH="C:\msys64\mingw64\lib"
cl gtk3test.c -I"%GINC_PATH%\gtk-3.0" -I"%GINC_PATH%\glib-2.0" -I"%GLIB_PATH%\glib-2.0\include" -I"%GINC_PATH%\pango-1.0" -I"%GINC_PATH%\cairo" -I"%GINC_PATH%\gdk-pixbuf-2.0" -I"%GINC_PATH%\atk-1.0" -Dinline= /link /LIBPATH:%GLIB_PATH% gtk-3.lib gdk-3.lib gobject-2.0.lib glib-2.0.lib
这编译好了,给了我 gtk3test.obj。但是,链接器返回以下错误:
LINK : 致命错误 LNK1181: 无法打开输入文件 'gtk-3.lib'
我在这里做错了什么?如何使用 cl 链接 GTK3 应用程序?
提前谢谢大家!
胡图
【问题讨论】:
【参考方案1】:请检查您的文件夹路径[%GINC_PATH%]
中是否有gtk-3.lib
。即使我在使用 GTK+3.0 时遇到了这个问题,包配置也没有提供正确的库参考。
在您的情况下,gtk 库类似于lib
文件夹%GINC_PATH%\lib
中的gtk-win32-3.0.lib
。
即使在 Linker 中提供了所需的库引用后,我仍然无法在我的 Visual Studio 应用程序中链接 GTK 库。
【讨论】:
以上是关于Visual Studio Community 2017 cl 链接器不会链接 GTK3 库?的主要内容,如果未能解决你的问题,请参考以下文章
2015版Visual Studio Code和Visual Studio Community的区别
Visual Studio community 开发者个人免费版安装教程
Visual Studio community 开发者个人免费版安装教程
Visual Studio 2010 Express 与 Community 2015 兼容?