Компоновщик Visual Studio Community 2017 cl не будет связывать библиотеки GTK3? - PullRequest
0 голосов
/ 30 октября 2018

Я пишу код на C, используя GTK в качестве инструментария GUI. Я установил GTK3 через MSYS2 и сумел скомпилировать и собрать, используя GCC (TDM-Dragon).

Однако в последнее время я пытаюсь скомпилировать и связать, используя cl, включенный в Visual Studio Community 2017 (слышал, что это быстрее и стабильнее). С этим у меня возникают трудности при создании приложения. Я свободно следую этому уроку: 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. Однако компоновщик возвращает следующую ошибку:

ССЫЛКА: фатальная ошибка LNK1181: не удается открыть входной файл 'gtk-3.lib'

Что я здесь не так делаю? Как можно использовать cl для связывания приложений GTK3?

Спасибо всем заранее!

Xuttuh

1 Ответ

0 голосов
/ 08 марта 2019

Проверьте, есть ли у вас gtk-3.lib в пути к папке [%GINC_PATH%]. Даже если у меня есть эта проблема при использовании GTK + 3.0 , конфигурация пакета не дает правильную ссылку на библиотеку.

Библиотека gtk - это что-то вроде gtk-win32-3.0.lib, доступное в папке lib %GINC_PATH%\lib в вашем случае.

У меня все еще есть проблемы со связыванием библиотек GTK в приложении Visual Studio даже после предоставления необходимых ссылок на библиотеки в Linker.

...