LINUX.ORG.RU

Gtk+3 + Windows

 , ,


2

2

Пробую писать на GTK+ приложения
И на C, и на Vala и на Python (только учу, еще не определился с языком)
Под линукс и БЗД получается собрать бинарь
А под винду как быть? Установил MinGW, но куда копать - не знаю
Хочу получить 64-битное .EXE

Установил MinGW, но куда копать - не знаю
Хочу получить 64-битное .EXE

все в точности как и на линуксе и бзде (при условии что GTK3 там вообще работает - я только GTK2 пробовал).

в чем именно затык?

waker ★★★★★ ()

А под винду как быть?

Сначала ставить https://msys2.github.io/, затем

pacman -Syu
pacman -S mingw-w64-x86_64-toolchain
pacman -S mingw-w64-x86_64-glib2
pacman -S mingw-w64-x86_64-gtk3
pacman -S mingw-w64-x86_64-vala
valac -C --pkg gtk+-3.0 hello.vala
gcc `pkg-config --cflags gtk+-3.0` hello.c `pkg-config --libs gtk+-3.0`
Vala-приложения можно собирать также и CMake. Если нужны инсталлер, поддержка языков, библиотеки и плагины, притом лень писать объёмные CMakeLists.txt, можно воспользоваться чужими инклудами для CMake cmake/backbone, utils/backbone. Например, gtkbuilder-test, gschema-test, plugin.

backbone ★★★★★ ()
Последнее исправление: backbone (всего исправлений: 1)
Ответ на: комментарий от mystery

Ты не понял, под Windows я уже собирал софт, а мне под линуксом для винды

помочь с этим не могу, но возник закономерный вопрос — а как ты под линуксом собираешь для бзди?

waker ★★★★★ ()
Ответ на: комментарий от mystery

А, это круто, тоже так хочу, но как его потом тестировать...

backbone ★★★★★ ()

ТС, а ты Qt 5 пробовал? Просто я вижу страдания в твоем вопросе...

Установив Qt SDK под Wine можешь отлаживать и компилировать чо хошь.

I-Love-Microsoft ★★★★★ ()

ставишь msys2

а дальше как в арче: pacman -Suy, pacman -Qs vala (и ставишь всё, что найдёт: pacman -S vala или pacman -S mingw-w64-i686-vala или mingw-w64-x86_64-vala ), со всеми вытянутыми им зависимостями и аналогично для gtk3, glib, gobject, gtk-doc

понятное дело, что gcc тоже нужно ставить (mingw), make, vim/emacs и тп. настройки раскраски для vim/emacs легко гуглятся.

anonymous ()
Ответ на: комментарий от mystery

тогда осваивай кросскомпиляторы. собираются из-под линукса точно так же, только указываешь CC=mingw-...-gcc виндовый mingw, а не родной CC=gcc. кросскомпилятор можно поставить например через mxe

anonymous ()
Ответ на: комментарий от backbone
valac -C --pkg gtk+-3.0 hello.vala
gcc `pkg-config --cflags gtk+-3.0` hello.c `pkg-config --libs gtk+-3.0`

здесь gcc соберёт нативный виндовый mingw. а тебе из-под линукса нужно несколько целей:

gcc `pkg-config --cflags gtk+-3.0` hello.c `pkg-config --libs gtk+-3.0`
линуксовый gcc

и

x86_64-w64-mingw32.static ` i686-w64-mingw32.static-pkg-config --cflags gtk+-3.0` hello.c ` i686-w64-mingw32.static-pkg-config --libs gtk+-3.0`

кросскомпилятор mingw из линукса в винду64 (в винду32 i686-w64-mingw32.static) и его pkg-config

или написать makefile, в котором это всё проставляется через переменные автоматически. mxe и это автоматизирует.

anonymous ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.