С Новым годом! Форум программистов, компьютерный форум, киберфорум
C/C++: IDE, инструментарий
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.96/75: Рейтинг темы: голосов - 75, средняя оценка - 4.96
420 / 357 / 47
Регистрация: 22.05.2013
Сообщений: 2,518

WxWidgets + CodeBlocks + MinGW "на пальцах"

16.06.2015, 13:35. Показов 15753. Ответов 29
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Гуру, дайте совет новичку!

Освоил консоль в Win+Codeblocs+MinGW. Теперь хочу попробовать рисовать "окошки" (в редакторе окошек, а не только кодом, как в WinAPI). Остановился на wxWidgets (Qt не нравится, да и лицензия не free).

Перебрал кучу инструкций по "настройке". Некоторые требуют сначала скачать wxWidgets, а потом его компилировать. Некоторые говорят что MinGW не подходит - нужен GCC. Слишком много устаревших инструкций...
Самую "компактную" (но относительно "мутную") нашел здесь (http://eax.me/wxwidgets-examples/), но она 4х летней давности (для С++ это много)...

Обьясните какие первые "подводные камни" мне грозят???
Надо переустановить весь инструментарий или просто надо подключить внешнюю wxWidgets в мою сборку?
Есть ли готовые "сборки" чтобы не заморачиваться со сборкой инструментов? (не охота изучить мегабайты хелпов и потратить неделю ради HelloWorld)
Можно ли скачать уже "скомпилированую" под Win64? или компилировать обязательно?
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
16.06.2015, 13:35
Ответы с готовыми решениями:

Странности с wxWidgets и CodeBlocks и с Boost
Я совсем в программировании новичок. Помогите разобраться. Скачал либы wxWidgets и Boost. Собрал c помощью GCC под windows. ...

Дайте совет по связке wxWidgets+codeblocks
Хочу попробовать создание программы с оконным интерфейсом. С горем пополам связку wxWidgets+codeblocks завел. Стартовое приложение с формой...

CodeBlocks и WxWidgets
1. Я поработал немного с CodeBlocks в Виндовс, скомпилировал WxWidgets, создал консольное приложение и приложение WxWidgets с помощью...

29
Эксперт С++
4986 / 3093 / 456
Регистрация: 10.11.2010
Сообщений: 11,170
Записей в блоге: 10
16.06.2015, 13:50
Есть готовые сборки, но они не такие актуальные. Проект переехал на github, поэтому новых сборок скорее всего не будет.
Самый свежий код (из github) должен без проблем собираться через MSYS2.
0
420 / 357 / 47
Регистрация: 22.05.2013
Сообщений: 2,518
16.06.2015, 14:32  [ТС]
Цитата Сообщение от castaway Посмотреть сообщение
Есть готовые сборки, но они не такие актуальные. Проект переехал на github, поэтому новых сборок скорее всего не будет.
Это я понял! И давно скачал! Но как его ПРИКРУТИТЬ к CodeBlocs+MinGW?
Их надо скомпилировать?
Нужны танцы с бубном по настройке?

В кодеблоксе есть ВСТРОЕННАЯ система для нового проекта на WxWidgets.
Требует лишь указать папку и версию (3.х), но потом ругается что не видит какой-то Дебюг конфигурации...
После всех игноров ("да продолжить не смотря на...") получаю проект, который ругается на строчке
C++ (Qt)
1
#include "wx/setup.h"
Похоже надо было еще что-то куда-то прописать... И не уверен что такая ошибка будет одна...

Скачать с гит-хаба было самым простым... Что делать с этим дальше????
0
Модератор
Эксперт CЭксперт С++
 Аватар для sourcerer
5288 / 2376 / 342
Регистрация: 20.02.2013
Сообщений: 5,773
Записей в блоге: 20
16.06.2015, 14:54
Tester64, посмотри как я прикручивал Boost и Clang с помощью msys2 (как раз в Code Blocks). По аналогии попробуй сделать.
1
420 / 357 / 47
Регистрация: 22.05.2013
Сообщений: 2,518
19.06.2015, 15:10  [ТС]
Цитата Сообщение от gru74ik Посмотреть сообщение
По аналогии попробуй сделать.
Спасибо, Вы "открыли мне еще один глаз"!

Пока не получилось... отложу на потом...
Но нашел нужный(вроде) пакет:
Bash
1
pacman -S mingw-w64-i686-wxWidgets
Но С++ похоже где-то не правильно подхватывает пути... Меня завалили другой работой (с++ это пока только хобби), попробую вернуться к этой теме через недельку...

Не по теме:

Жаль что нет сборки вроде CodeBlocs+MinGW+wxWidgets+Boost(там вроде сетевые компоненты были)+Clang(еще не понял зачем)... Один архив скачал, распаковал на C:/D:, запустил пару батников для настройки и работай! как бы сильно это помогло новичкам в опенсорсе!!! Недели уходят на установку инструментов! Делфи именно на этой "сборке" и развил такую популярность!

0
Модератор
Эксперт CЭксперт С++
 Аватар для sourcerer
5288 / 2376 / 342
Регистрация: 20.02.2013
Сообщений: 5,773
Записей в блоге: 20
20.06.2015, 04:58
Цитата Сообщение от Tester64 Посмотреть сообщение
(Qt не нравится, да и лицензия не free).
Хмм...
Миниатюры
WxWidgets + CodeBlocks + MinGW "на пальцах"  
0
Модератор
Эксперт CЭксперт С++
 Аватар для sourcerer
5288 / 2376 / 342
Регистрация: 20.02.2013
Сообщений: 5,773
Записей в блоге: 20
20.06.2015, 05:39
Tester64, и да, вот посмотри: Библиотека инструментов wxWidgets. Сборка (tutorial)
0
420 / 357 / 47
Регистрация: 22.05.2013
Сообщений: 2,518
20.06.2015, 12:14  [ТС]
Цитата Сообщение от gru74ik Посмотреть сообщение
Хмм...
GPL! Насколько я понял, это значит что делая проект я ОБЯЗАН открывать его исходники...
Я могу сделать бесплатную программу! Но исходники - это личное! Не хочу изучать инструмент который изначально сажает меня в "стеклянную комнату" и плодит мне конкурентов.
Да и скорость сборки у Qt не самая шустрая и требования к харду приличные...

Цитата Сообщение от gru74ik Посмотреть сообщение
и да, вот посмотри: Библиотека инструментов wxWidgets. Сборка (tutorial)
Находил почти сразу (на первых страницах гугления), среди соти других инструкций. Этой статье 1.5 года. За это время вполне могли поменять wx и сделать другую систему подключения. Могли не заморачиваться с компиляцией. Могли встроить в комплект CodeBlocks.

Через недельку-две еще раз попробую собрать HelloWorld... (скорее всего проще будет полностью пересобрать ВСЕ инструменты - возможно они не правильно были установлены)
0
Эксперт С++
4986 / 3093 / 456
Регистрация: 10.11.2010
Сообщений: 11,170
Записей в блоге: 10
20.06.2015, 12:31
Цитата Сообщение от Tester64 Посмотреть сообщение
Насколько я понял, это значит что делая проект я ОБЯЗАН открывать его исходники...
На сколько мне известно, лицензия GPL не обязывает открывать исходники (могу ошибаться).
0
 Аватар для smartpointer
70 / 64 / 40
Регистрация: 17.02.2014
Сообщений: 265
20.06.2015, 12:39
У wxWidgets слабая документация, описаны только самые важные методы, про protected члены и методы узнаешь можно сказать из ковыряния исходников, + к этому немного напрягает черезмерное ООП - чуть ли не каждая переменная завернута в класс. Вообщем если нужна будет помощь распишу подробно как собирать, буквально пару дней назад собирал для CodeBlocks Mingw x86_64, единственное, что раздражает в начальных семплах постоянно вылезают Deprecated варнинги.
0
Ушел с форума
Эксперт С++
 Аватар для Убежденный
16481 / 7444 / 1187
Регистрация: 02.05.2013
Сообщений: 11,616
Записей в блоге: 1
20.06.2015, 13:04
Цитата Сообщение от Tester64 Посмотреть сообщение
GPL! Насколько я понял, это значит что делая проект я ОБЯЗАН открывать его исходники...
С GPL - да. А с LGPL нет.
2
420 / 357 / 47
Регистрация: 22.05.2013
Сообщений: 2,518
20.06.2015, 14:32  [ТС]
Цитата Сообщение от smartpointer Посмотреть сообщение
буквально пару дней назад собирал для CodeBlocks Mingw x86_64, единственное, что раздражает в начальных семплах постоянно вылезают Deprecated варнинги.
А вообще реально собрать все один (относительно)портабл архив? Вместе с HelloWord как основным проектом? Думаю у многих был бы на эту сборку спрос!!! (как на Денвер - сборку "php+mysql+apach+..." - скачал, распаковал и пользуйся - не надо часы тратить на изучение и установку каждого компонента, как и на их связывание). Я настроил CodeBlocks+MinGW и на компиляцию в консоли через make (довольно сложные утилиты и тяжелые бат-файлы). По идее можно полностью переносить на другой комп без переустановки с сохранением путей. Даже обошел прописывание в path путей к mingw (через хулиганство со свойствами "мой компьютер") указав пути в кодеблоксе и в батниках. Может и дальше можно "развить" сборку?

Жутко бесят "танцы с бубном"... на первом этапе. Уже 10й раз думал перейти от консоли к графике. Раза 2 ставил и стирал Qt (20-30 секунд ждать появления первого ПУСТОГО окошка после 2-4х секунд на делфи - это издевательство. Консоль в MinGW собирается 5-6 секунд). Про количество неудачных "подходов" к буст - даже вспоминать не хочется (аж бесит тема - так и не смог за пол года запустить на буст сокет сервер)

Цитата Сообщение от smartpointer Посмотреть сообщение
У wxWidgets слабая документация, описаны только самые важные методы, про protected члены и методы узнаешь можно сказать из ковыряния исходников, + к этому немного напрягает черезмерное ООП - чуть ли не каждая переменная завернута в класс.
Мне НЕ нужны сложные компоненты! В худшем случае буду сам рисовать свой компонент на канвасе. (а ко всему в классах привык - даже String предпочел в свой класс завернуть, да и последним языком была ява) Мне нужен удобный инструмент для БЫСТРОГО вызова функций разработанных в консоли (уже разработал линуксоый режим с внутренними командами, но это МЕДЛЕННО - "t1,enter", "t2, enter" - соскучился по кнопкам) и для УДОБНОГО вывода результата этих функций (текст и цифры) на экран разными цветами и размерами шрифтов (а не одна бегущая строка в консольном окне).

Мне не нужен сложный дизайн! Предстоит запуск долгих "случайных" тестов (почти математических). При этом может быть несколько состояний одновременно - от каждой вызванной функции и от массового запускателя. Даже не представляю как сделать это читабельным в консоли (минимум два списка иногда в процессе хочется полистать - последниее 100 команд и последние 100 строк результатов выполенения этих команд).
0
 Аватар для smartpointer
70 / 64 / 40
Регистрация: 17.02.2014
Сообщений: 265
20.06.2015, 15:54
Цитата Сообщение от Tester64 Посмотреть сообщение
А вообще реально собрать все один (относительно)портабл архив?
Думаю да, в конфиге можно указать MONOLITHIC сборку,возможно собрать все в одну либу и одну дллку, однако не проверял что будет на выхлопе поскольку для себя собирал все по-отдельности.В конфиге можно указать что надо,что не надо OpenGL,Threads и т.д - вообще собирается все довольно легко, через mingw32-make.
Цитата Сообщение от Tester64 Посмотреть сообщение
Вместе с HelloWord как основным проектом?
Через wizard-проектов в кодблокс уже встроен шаблон с HelloWorld. Кстати там обнаружил один неприятный баг в mingw и его до сих пор не пофиксили.Сам начальный проект собирается с использованием windres, который вшивает ресурсы в бинарники, он плохо реагирует на пробелы в путях, пришлось сносить CodeBlocks в корень C:\. В общем чем-то мне тоже не приглянулся QT, если бы не скудный мануал - цены бы не было виджетам, все элементы рисуются нативные Кстати там в папочке с сорцами есть отличные семплы их правда нужно отдельно собирать и еще какие то тесты.Вот кстати отличное комьюнити, если хорошо знаешь инглиш https://forums.wxwidgets.org/
0
420 / 357 / 47
Регистрация: 22.05.2013
Сообщений: 2,518
20.06.2015, 17:42  [ТС]
Цитата Сообщение от smartpointer Посмотреть сообщение
Думаю да, в конфиге можно указать MONOLITHIC сборку,возможно собрать все в одну либу и одну дллку,
Вы не поняли! Я про "пакет" ИНСТРУМЕНТОВ! Надежно и качественно один раз собрать CodeBlock+MinGW+Bost+wxWidgets и либо упковать о общий инсталятор либо в архив для распаковки. Внутрь вложить 100% работающий пример с окошком на wxWidget (визард ставит по умолчанию левые пути и не хочет запускаться).

Чтобы купив новый комп не заниматься несколько дней вспоминанием манов по скручиванию этих компомнент(по сути работа "админа", а не "кодера"), а приступить к кодерству уже через пол часа... Докруткой инструментом "под себя" еще можно много месяцев делать (цвета, шрифты, хитрые плагины, оптимизация компиляции), но ХеллоВорлд хочется сделать через 10 минут после распаковки инструмента (как в Qt). Готов на слегка-устаревшие технологии для работы (вплодь до wxWidget 2.x, а не 3.х), но я ОЧЕЬ не люблю админскую работу (подобрать удачные версии, правильно прописать системные пути в настройках Win7) ...
0
420 / 357 / 47
Регистрация: 22.05.2013
Сообщений: 2,518
27.06.2015, 05:29  [ТС]
wxWidgets собрал!!! Заработало! Решил поделиться успешным решением (десятка два перебрал) со "следующим поколением" новичков.
Действовал по https://www.youtube.com/watch?v=FgAaiBg4wEE
Инструкция СЛЕГКА устарела, но все равно сработало! Надо было скомпилировать! Причем довольно хитрыми ключами. В видео они хорошо видны. Фиксация пути в системе через "мой компьютер" не сработала, пришлось полный путь указывать:
Bash
1
D:\My\wxWidgets-3.0.2\build\msw>"c:\Program Files (x86)\CodeBlocks\MinGW\bin\mingw32-make.exe" -f makefile.gcc BUILD=release SHARED=1 MONOLITHIC=1 UNICODE=1
Конечно в примере указал последнюю версию - "wxWidgets 3x"
удачной сборки...
1
3258 / 2060 / 351
Регистрация: 24.11.2012
Сообщений: 4,909
27.06.2015, 07:52
Цитата Сообщение от Tester64 Посмотреть сообщение
Инструкция СЛЕГКА устарела
Актуальная есть в официальной вики.
0
420 / 357 / 47
Регистрация: 22.05.2013
Сообщений: 2,518
27.06.2015, 20:49  [ТС]
Цитата Сообщение от 0x10 Посмотреть сообщение
Актуальная есть в официальной вики.
Видел... Для новичка не знакомого со структурой компилятора эта текстовая мура из "кучи букв и ни одного примера" вряд-ли поможет... Я тоже натыкался... Попытался понять о чем они и пошел дальше...

Уж насколько я не люблю видео-уроки за их нудность, этот (https://www.youtube.com/watch?v=FgAaiBg4wEE) понравился своей лаконичностью. правда
1) звук в самом начале выключил (музыка не нужна, а слов не услышал, да и не нужны)
2) развернул на весь экран и подождал ради повышения качества картинки до HD (не сразу качество улучшается)
3) часто делал стоп-кадр перед следующей операцией. (особенно перед набором команды сборки в 2е строки)
4) у меня собирало явно дольше 40 минут... думаю часа 1.5 щелкало раз в секунду-две, но возможно это из-за хрома, забравшего 80% проца и памяти на 50 закладках.

Ваша ссылка под MinGW, а моя под CodeBlocs!!! Компиляция - это малая часть настройки! Нужно было собранное еще и правильно подключить к IDE. Конечная цель была "начать рисовать окошки в CodeBlocs в удобном редакторе - получить HelloWordl", а не круто и супер-адаптированно под хард собрать библиотеку wxWidgets...
0
1 / 1 / 2
Регистрация: 03.04.2013
Сообщений: 48
25.10.2016, 16:24
Как раз есть проблема по теме.

Поставил связку WxWidgets 3.0.2 + CodeBlocks 16.01 + TDM-GCC-32

WxWidgets скомпилировал с такими параметрами
Bash
1
2
3
mingw32-make -f makefile.gcc clean
mingw32-make -f makefile.gcc BUILD=debug SHARED=0 MONOLITHIC=1 UNICODE=1 CXXFLAGS=-std=gnu++11
mingw32-make -f makefile.gcc BUILD=release SHARED=1 MONOLITHIC=1 UNICODE=1 CXXFLAGS=-std=gnu++11
При компиляции проеката получаю ошибку
ld exe cannot find -lwxmsw30u

Добавлено через 2 часа 22 минуты
Дополню.
В режиме Debug проект компилится. А вот в Realese эта ошибка .
0
415 / 150 / 48
Регистрация: 02.06.2016
Сообщений: 364
27.10.2016, 00:25
При сборке самой wxWidgets для релиза, тоже нужно было указать SHARED=0. И при создании проекта, CodeBlocks должен был ругнуться.
0
1 / 1 / 2
Регистрация: 03.04.2013
Сообщений: 48
27.10.2016, 13:49
Да конечно же, SHARED=0, это просто опечатка в сообщении. Компилировал один в один обе строки.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
27.10.2016, 13:49
Помогаю со студенческими работами здесь

CodeBlocks Msys2 и wxWidgets
Windows 10 Home 64 bit. Установил CodeBlocks из codeblocks-17.12-nosetup.zip простым копированием на диск С. С помощью Msys2 закачал нужные...

Mingw и wxWidgets
Появилась необходимость разработать программу, используя wxWidets. Распаковал, собрал, попытался скомпилировать пример - не получилось....

codeblocks + linux(debian) + wxWidgets = ld returned 1 exit status
Здравствуйте. Имеем: 1. Windows 10 + gnu gcc(от msys2); 2. Linux Debian + compiller gnu gcc; 3. wxWidgets 3.2; Что не...

Можно ли для CodeBlocks устанавливать wxWidgets Windows Installer?
На сайте http://www.wxwidgets.org/downloads/ есть wxWidgets_Windows_Installer и wxWidgets_Windows_ZIP (исходники для компиляции). Во...

Предупреждения при компиляции wxWidgets-3.0.5 пакетом MinGW-8.1.0
Здравствуйте. Собираю библиотеку wxWidgets-3.0.5 с помощью MinGW i686-8.1.0-release-posix-sjlj-rt_v6-rev0. Возникает довольно много...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Новые блоги и статьи
Восстановить юзерскрипты Greasemonkey из бэкапа браузера
damix 15.01.2026
Если восстановить из бэкапа профиль Firefox после переустановки винды, то список юзерскриптов в Greasemonkey будет пустым. Но восстановить их можно так. Для этого понадобится консольная утилита. . .
Изучаю kubernetes
lagorue 13.01.2026
А пригодятся-ли мне знания kubernetes в России?
Сукцессия микоризы: основная теория в виде двух уравнений.
anaschu 11.01.2026
https:/ / rutube. ru/ video/ 7a537f578d808e67a3c6fd818a44a5c4/
WordPad для Windows 11
Jel 10.01.2026
WordPad для Windows 11 — это приложение, которое восстанавливает классический текстовый редактор WordPad в операционной системе Windows 11. После того как Microsoft исключила WordPad из. . .
Classic Notepad for Windows 11
Jel 10.01.2026
Old Classic Notepad for Windows 11 Приложение для Windows 11, позволяющее пользователям вернуть классическую версию текстового редактора «Блокнот» из Windows 10. Программа предоставляет более. . .
Почему дизайн решает?
Neotwalker 09.01.2026
В современном мире, где конкуренция за внимание потребителя достигла пика, дизайн становится мощным инструментом для успеха бренда. Это не просто красивый внешний вид продукта или сайта — это. . .
Модель микоризы: классовый агентный подход 3
anaschu 06.01.2026
aa0a7f55b50dd51c5ec569d2d10c54f6/ O1rJuneU_ls https:/ / vkvideo. ru/ video-115721503_456239114
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR
ФедосеевПавел 06.01.2026
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR ВВЕДЕНИЕ Введу сокращения: аналоговый ПИД — ПИД регулятор с управляющим выходом в виде числа в диапазоне от 0% до. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru