кроссплатформенный C++ фреймворк wxWidgets
кроссплатформенный C++ фреймворк wxWidgets
https://github.com/wxWidgets/wxWidgets
wxWidgets - это свободный и открытый кроссплатформенный C++ фреймворк для написания продвинутых GUI-приложений с использованием нативных элементов управления.
wxWidgets позволяет писать нативные GUI-приложения для всех основных настольных платформ, а также помогает абстрагироваться от различий между ними в не-GUI аспектах. Он бесплатен для использования как в открытых, так и в коммерческих приложениях, поставляется с полным, удобным для чтения и модификации исходным кодом, обширной документацией и коллекцией из более чем сотни примеров. Вы можете узнать больше о wxWidgets на сайте https://www.wxwidgets.org/ и прочитать его документацию онлайн на сайте https://docs.wxwidgets.org/.
Эта версия wxWidgets поддерживает следующие основные платформы:
Windows 7, 8, 10 и 11 (32/64 бита).
Большинство вариантов Unix, использующих инструментарий GTK+ (версии 2.6 или новее или 3.x).
macOS (10.10 или новее) с использованием Cocoa на платформах amd64 и ARM.
Поддерживаются все компиляторы C++11, включая, но не ограничиваясь ими:
Microsoft Visual C++ 2015 или более поздней версии (до 2022 года).
g++ 4.8 или более поздние версии (до 13), включая MinGW/MinGW-64/TDM под Windows.
Clang (до 16).
Пожалуйста, используйте ветку 3.2, если вы должны использовать wxWidgets с компилятором C++98 или поддерживаете Windows XP.
Репозиторий:
https://docs.codelite.org/wxWidgets/repo320/#ubuntu-and-debian
https://www.wxwidgets.org/downloads/
https://www.wxwidgets.org/docs/book/errata/
https://github.com/PBfordev/wxpbguide
примеры:
http://www.anthemion.co.uk/wxWidgetsBook/wxbookexamples.zip учебник
https://www.wxwidgets.org/docs/book/ Видео-инструкция
https://www.youtube.com/playlist?list=PL50rxxMeknmHbhv2suS0xaGkV8JvPNoaM
wxWidgets - это свободный и открытый кроссплатформенный C++ фреймворк для написания продвинутых GUI-приложений с использованием нативных элементов управления.
wxWidgets позволяет писать нативные GUI-приложения для всех основных настольных платформ, а также помогает абстрагироваться от различий между ними в не-GUI аспектах. Он бесплатен для использования как в открытых, так и в коммерческих приложениях, поставляется с полным, удобным для чтения и модификации исходным кодом, обширной документацией и коллекцией из более чем сотни примеров. Вы можете узнать больше о wxWidgets на сайте https://www.wxwidgets.org/ и прочитать его документацию онлайн на сайте https://docs.wxwidgets.org/.
Эта версия wxWidgets поддерживает следующие основные платформы:
Windows 7, 8, 10 и 11 (32/64 бита).
Большинство вариантов Unix, использующих инструментарий GTK+ (версии 2.6 или новее или 3.x).
macOS (10.10 или новее) с использованием Cocoa на платформах amd64 и ARM.
Поддерживаются все компиляторы C++11, включая, но не ограничиваясь ими:
Microsoft Visual C++ 2015 или более поздней версии (до 2022 года).
g++ 4.8 или более поздние версии (до 13), включая MinGW/MinGW-64/TDM под Windows.
Clang (до 16).
Пожалуйста, используйте ветку 3.2, если вы должны использовать wxWidgets с компилятором C++98 или поддерживаете Windows XP.
Репозиторий:
https://docs.codelite.org/wxWidgets/repo320/#ubuntu-and-debian
https://www.wxwidgets.org/downloads/
https://www.wxwidgets.org/docs/book/errata/
https://github.com/PBfordev/wxpbguide
примеры:
http://www.anthemion.co.uk/wxWidgetsBook/wxbookexamples.zip учебник
https://www.wxwidgets.org/docs/book/ Видео-инструкция
https://www.youtube.com/playlist?list=PL50rxxMeknmHbhv2suS0xaGkV8JvPNoaM
Re: кроссплатформенный C++ фреймворк wxWidgets
Конфигурирование wxWidgets в среде Code::Blocks 2021
https://www.youtube.com/watch?v=5HbkHohztQw
Ссылки:
GCC~ https://jmeubank.github.io/tdm-gcc/
Code::Blocks~ https://www.codeblocks.org/
wxWidgets~ https://www.wxwidgets.org/
переходим в распакованную ~/wxWidgets-3.2.4/build/msw\
и собираем с коммандной строки wxWidgets для дебагинга
Собираем из коммандной строки для релиза
Релиз wxWidgets
https://github.com/wxWidgets/wxWidgets/releases
Учебник Code::Blocks
https://wiki.codeblocks.org/index.php/WxSmith_tutorials
Репозиторий, русифицированный Code::Blocks
https://github.com/tsnsoft/CodeBlocks_rus
Репозиторий codeblocks
https://sourceforge.net/projects/codeblocks/files/Binaries/Nightlies/Prerequisites/
https://sourceforge.net/projects/codeblocks/files/Binaries/Nightlies/2020/
Репозиторий cmake
https://cmake.org/download/
Учебник visual studio code
https://wxwiki.yonote.ru/share/13dca086-9700-4682-8443-0e6e57836b35/doc/wxwidgets-c-cmake-i-visual-studio-code-8xDuBpNG94
Использование готовых бинарных файлов wxWidgets в CodeBlocks
https://wiki.wxwidgets.org/Using_wxWidgets_Pre-Built_Binary_in_CodeBlocks
На момент написания этого руководства бинарные релизы доступны только для Visual C++ и TDM-GCC. Я делаю это на Code:Blocks 16.01 с TDM-GCC v4.9.2.
Перейдите на страницу загрузок wxWidgets.
Найдите раздел Binaries того релиза, который вы хотите использовать, и щелкните на wxMSW DLLs
Загрузите следующее.
Vvv - это версия wxWidgets, которую вы хотите использовать, например, в моем случае это будет 3.0.3
XXX - версия компилятора, который вы используете, например, в моем случае это будет 492TDM
wxWidgets-Vvv_Headers.7z
wxMSW-Vvv_gccXXX_Dev.7z
wxMSW-Vvv_gccXXX_ReleaseDLL.7z (необязательно)
Распакуйте все 3 файла в папку. Я использую C:\wxWidgets_include\
Папка для извлечения файлов библиотеки
Содержимое каждой папки
Папка .\include содержит заголовочные файлы для разработки.
Папка .\lib\gcc492TDM_dll_Dev содержит двоичные файлы библиотек как для разработки, так и для распространения.
Папка .\lib\gcc492TDM_dll_Release содержит DLL только для распространения. Она не очень нужна, так как ее содержимое уже доступно в папке с двоичными библиотеками для разработки.
Предварительно скомпилированная DLL необходима для запуска исполняемого файла
Для запуска полученной программы потребуются предварительно скомпилированные DLL-библиотеки. Скопируйте необходимые файлы из папки .\lib\gcc492TDM_dll_Release в папку вашего исполняемого файла. Те же файлы можно найти и в папке .\lib\gcc492TDM_dll_Dev, но это может быть немного беспорядочно.
https://www.youtube.com/watch?v=5HbkHohztQw
Ссылки:
GCC~ https://jmeubank.github.io/tdm-gcc/
Code::Blocks~ https://www.codeblocks.org/
wxWidgets~ https://www.wxwidgets.org/
переходим в распакованную ~/wxWidgets-3.2.4/build/msw\
и собираем с коммандной строки wxWidgets для дебагинга
Код: Выделить всё
mingw32-make -f makefile.gcc SHARED=0 BUILD=debug MONOLITHIC=1
Код: Выделить всё
mingw32-make -f makefile.gcc SHARED=0 BUILD=release MONOLITHIC=1
https://github.com/wxWidgets/wxWidgets/releases
Учебник Code::Blocks
https://wiki.codeblocks.org/index.php/WxSmith_tutorials
Репозиторий, русифицированный Code::Blocks
https://github.com/tsnsoft/CodeBlocks_rus
Репозиторий codeblocks
https://sourceforge.net/projects/codeblocks/files/Binaries/Nightlies/Prerequisites/
https://sourceforge.net/projects/codeblocks/files/Binaries/Nightlies/2020/
Репозиторий cmake
https://cmake.org/download/
Учебник visual studio code
https://wxwiki.yonote.ru/share/13dca086-9700-4682-8443-0e6e57836b35/doc/wxwidgets-c-cmake-i-visual-studio-code-8xDuBpNG94
Использование готовых бинарных файлов wxWidgets в CodeBlocks
https://wiki.wxwidgets.org/Using_wxWidgets_Pre-Built_Binary_in_CodeBlocks
На момент написания этого руководства бинарные релизы доступны только для Visual C++ и TDM-GCC. Я делаю это на Code:Blocks 16.01 с TDM-GCC v4.9.2.
Перейдите на страницу загрузок wxWidgets.
Найдите раздел Binaries того релиза, который вы хотите использовать, и щелкните на wxMSW DLLs
Загрузите следующее.
Vvv - это версия wxWidgets, которую вы хотите использовать, например, в моем случае это будет 3.0.3
XXX - версия компилятора, который вы используете, например, в моем случае это будет 492TDM
wxWidgets-Vvv_Headers.7z
wxMSW-Vvv_gccXXX_Dev.7z
wxMSW-Vvv_gccXXX_ReleaseDLL.7z (необязательно)
Распакуйте все 3 файла в папку. Я использую C:\wxWidgets_include\
Папка для извлечения файлов библиотеки
Содержимое каждой папки
Папка .\include содержит заголовочные файлы для разработки.
Папка .\lib\gcc492TDM_dll_Dev содержит двоичные файлы библиотек как для разработки, так и для распространения.
Папка .\lib\gcc492TDM_dll_Release содержит DLL только для распространения. Она не очень нужна, так как ее содержимое уже доступно в папке с двоичными библиотеками для разработки.
Предварительно скомпилированная DLL необходима для запуска исполняемого файла
Для запуска полученной программы потребуются предварительно скомпилированные DLL-библиотеки. Скопируйте необходимые файлы из папки .\lib\gcc492TDM_dll_Release в папку вашего исполняемого файла. Те же файлы можно найти и в папке .\lib\gcc492TDM_dll_Dev, но это может быть немного беспорядочно.
Re: кроссплатформенный C++ фреймворк wxWidgets
перекомпиляция виджета:
https://wiki.wxwidgets.org/CodeBlocks_Setup_Guide
В дальнейших инструкциях я буду называть каталог wxWidgets %WXWIN%, вы должны изменить его на свой собственный каталог. (например, "c:\wxWidgets-x.x").
Создание собственной библиотеки wxWidgets
Прежде всего, добавьте каталог bin программы MinGW, находящийся в каталоге установки CodeBlocks, в переменную %PATH% (Windows, Mac). Теперь пришло время скомпилировать wxWidgets, откройте командную строку и перейдите в каталог wxWidgets:
Теперь мы находимся в нужном месте и сначала очистим источник:
если после очистки у вас все еще возникают проблемы с компиляцией, возможно, вы захотите удалить каталог в каталоге build\msw. (она содержит объектные файлы...) Когда все очищено, мы можем скомпилировать wxWidgets:
Сначала нам нужно настроить сборку. Если ваш makefile.gcc (в моей версии на 7-ой строке) включает config.gcc, то параметры командной строки будут переопределены config-файлом. Поэтому отредактируйте настройки компилятора в config.gcc, чтобы они соответствовали вашему выбору. Рекомендуется использовать следующие параметры: USE_XRC=1 SHARED=1 MONOLITHIC=1 BUILD=release UNICODE=0
В противном случае вы можете собрать wxWidgets из командной строки следующим образом:
Если вы что-то напутали и хотите почистить, вам нужно передать те же параметры, чтобы сделать clean.
Пример для командной строки clean:
Итак, теперь все скомпилировано для использования кодовых блоков.
Копирование библиотек
После завершения компиляции полезно скопировать библиотеки в другую директорию. Это позволит вам сделать несколько сборок (например, отладочную и релизную).
Поэтому сначала мы создадим каталог, который можно расположить в %WXWIN%\lib.
Затем переходим в каталог %WXWIN%\lib\gcc_dll (может называться по-другому, если вы изменили опции сборки).
Переименуйте каталог %WXWIN%\lib\gcc_dll в каталог по вашему выбору. (Для меня это %WXWIN%\lib\gcc_dllNonUnicode)
ПРИМЕЧАНИЕ: Убедитесь, что все удалено из каталога %WXWIN%\lib\gcc_dll, иначе могут возникнуть проблемы при компиляции другой версии.
Настройка Code::Blocks
Параметры компилятора/линкера
Далее необходимо настроить Code::Blocks на использование аргументов компилятора и компоновщика wx-config. Самый простой способ сделать это - создать новые флаги компилятора, которые в дальнейшем можно будет включать или выключать по мере необходимости.
Создание флага компилятора wxWidgets
Перейдите в меню Проект --> Параметры сборки
В разделе Флаги компилятора --> Общие щелкните правой кнопкой мыши на элементе и выберите "Новый флаг..." из контекстного меню.
В поле "Имя" введите что-то вроде "wxWidgets -- Compiler Suggested Settings".
В поле "Флаги компилятора" введите
`wx-config --cxxflags`.
Нажмите OK
Создание флага компоновщика wxWidgets
В разделе Флаги компилятора --> Общие щелкните правой кнопкой мыши на элементе и выберите "Новый флаг..." из контекстного меню.
В поле "Имя" введите что-то вроде "wxWidgets -- Linker Suggested Settings".
В поле "Флаги компоновщика" введите
`wx-config --libs`.
Нажмите OK
Теперь, когда вы настроили флаги компилятора/линковщика, не забудьте включить их в разделе Project --> Build Options --> YourProjectName для проектов wxWidgets, которые вы хотите собрать.
Поздравляем! Вы можете начать разработку в wxWidgets. Если возникнут какие-либо проблемы, просто спросите на форуме Code::Blocks (http://forums.codeblocks.org/).
https://wiki.wxwidgets.org/CodeBlocks_Setup_Guide
В дальнейших инструкциях я буду называть каталог wxWidgets %WXWIN%, вы должны изменить его на свой собственный каталог. (например, "c:\wxWidgets-x.x").
Создание собственной библиотеки wxWidgets
Прежде всего, добавьте каталог bin программы MinGW, находящийся в каталоге установки CodeBlocks, в переменную %PATH% (Windows, Mac). Теперь пришло время скомпилировать wxWidgets, откройте командную строку и перейдите в каталог wxWidgets:
Код: Выделить всё
cd %WXWIN%\build\msw
Код: Выделить всё
mingw32-make.exe -f makefile.gcc clean
Сначала нам нужно настроить сборку. Если ваш makefile.gcc (в моей версии на 7-ой строке) включает config.gcc, то параметры командной строки будут переопределены config-файлом. Поэтому отредактируйте настройки компилятора в config.gcc, чтобы они соответствовали вашему выбору. Рекомендуется использовать следующие параметры: USE_XRC=1 SHARED=1 MONOLITHIC=1 BUILD=release UNICODE=0
В противном случае вы можете собрать wxWidgets из командной строки следующим образом:
Код: Выделить всё
mingw32-make.exe -f makefile.gcc USE_XRC=1 SHARED=1 MONOLITHIC=1 BUILD=release UNICODE=0
Пример для командной строки clean:
Код: Выделить всё
mingw32-make.exe -f makefile.gcc clean USE_XRC=1 SHARED=1 MONOLITHIC=1 BUILD=release UNICODE=0
Копирование библиотек
После завершения компиляции полезно скопировать библиотеки в другую директорию. Это позволит вам сделать несколько сборок (например, отладочную и релизную).
Поэтому сначала мы создадим каталог, который можно расположить в %WXWIN%\lib.
Затем переходим в каталог %WXWIN%\lib\gcc_dll (может называться по-другому, если вы изменили опции сборки).
Переименуйте каталог %WXWIN%\lib\gcc_dll в каталог по вашему выбору. (Для меня это %WXWIN%\lib\gcc_dllNonUnicode)
ПРИМЕЧАНИЕ: Убедитесь, что все удалено из каталога %WXWIN%\lib\gcc_dll, иначе могут возникнуть проблемы при компиляции другой версии.
Настройка Code::Blocks
Параметры компилятора/линкера
Далее необходимо настроить Code::Blocks на использование аргументов компилятора и компоновщика wx-config. Самый простой способ сделать это - создать новые флаги компилятора, которые в дальнейшем можно будет включать или выключать по мере необходимости.
Создание флага компилятора wxWidgets
Перейдите в меню Проект --> Параметры сборки
В разделе Флаги компилятора --> Общие щелкните правой кнопкой мыши на элементе и выберите "Новый флаг..." из контекстного меню.
В поле "Имя" введите что-то вроде "wxWidgets -- Compiler Suggested Settings".
В поле "Флаги компилятора" введите
`wx-config --cxxflags`.
Нажмите OK
Создание флага компоновщика wxWidgets
В разделе Флаги компилятора --> Общие щелкните правой кнопкой мыши на элементе и выберите "Новый флаг..." из контекстного меню.
В поле "Имя" введите что-то вроде "wxWidgets -- Linker Suggested Settings".
В поле "Флаги компоновщика" введите
`wx-config --libs`.
Нажмите OK
Теперь, когда вы настроили флаги компилятора/линковщика, не забудьте включить их в разделе Project --> Build Options --> YourProjectName для проектов wxWidgets, которые вы хотите собрать.
Поздравляем! Вы можете начать разработку в wxWidgets. Если возникнут какие-либо проблемы, просто спросите на форуме Code::Blocks (http://forums.codeblocks.org/).
vcpkg
https://docs.wxwidgets.org/3.1.7/plat_msw_install.html
https://github.com/Microsoft/vcpkg
Vcpkg поможет вам управлять библиотеками C и C++ в Windows, Linux и MacOS. Этот инструмент и экосистема постоянно развиваются, и мы всегда благодарны за вклад!
Если вы никогда раньше не использовали vcpkg или пытаетесь понять, как им пользоваться, ознакомьтесь с нашим разделом "Начало работы", чтобы узнать, как начать использовать vcpkg.
Для получения краткого описания доступных команд, после установки vcpkg, вы можете запустить vcpkg help или vcpkg help [command] для получения справки по конкретной команде.
https://github.com/microsoft/vcpkg-tool
основной репозиторий https://github.com/microsoft/vcpkg для обсуждения всех возможностей, отслеживания проблем и редактирования доступных библиотек.
Vcpkg-tool: Обзор
Этот репозиторий содержит содержимое, ранее находившееся на https://github.com/microsoft/vcpkg в дереве "toolsrc", и поддержку сборки.
vcpkg-artifacts
vcpkg-artifacts в настоящее время находится в стадии "предварительного просмотра" - наверняка будут внесены изменения, основанные на отзывах.
Вы можете использовать его, но будьте предупреждены, что мы можем изменить форматы, команды и т.д.
Думайте о нем как о конфигурации желаемого состояния для проектов на C/C++, управляемой манифестом.
Он интегрируется в вашу оболочку (PowerShell, CMD, bash/zsh)
может восстанавливать артефакты в соответствии с манифестом, который следует за кодом
предоставляет интерфейсы для обнаружения.
Установка
Хотя использование vcpkg-artifacts одинаково на всех платформах, установка/загрузка/удаление немного отличается в зависимости от используемой платформы.
vcpkg-artifacts не сохраняют никаких изменений в окружении и не добавляют себя автоматически в среду запуска. Если вы хотите, чтобы он загружался в окне, вы можете просто выполнить скрипт. Если добавить его в профиль вручную, он будет загружаться в каждом новом окне.
https://github.com/Microsoft/vcpkg
Код: Выделить всё
Using vcpkg
You can download and install wxWidgets using the vcpkg dependency manager:
> git clone https://github.com/Microsoft/vcpkg.git
> cd vcpkg
> bootstrap-vcpkg.bat
> vcpkg integrate install
> vcpkg install wxwidgets
> vcpkg install wxwidgets:x64-windows
Если вы никогда раньше не использовали vcpkg или пытаетесь понять, как им пользоваться, ознакомьтесь с нашим разделом "Начало работы", чтобы узнать, как начать использовать vcpkg.
Для получения краткого описания доступных команд, после установки vcpkg, вы можете запустить vcpkg help или vcpkg help [command] для получения справки по конкретной команде.
https://github.com/microsoft/vcpkg-tool
основной репозиторий https://github.com/microsoft/vcpkg для обсуждения всех возможностей, отслеживания проблем и редактирования доступных библиотек.
Vcpkg-tool: Обзор
Этот репозиторий содержит содержимое, ранее находившееся на https://github.com/microsoft/vcpkg в дереве "toolsrc", и поддержку сборки.
vcpkg-artifacts
vcpkg-artifacts в настоящее время находится в стадии "предварительного просмотра" - наверняка будут внесены изменения, основанные на отзывах.
Вы можете использовать его, но будьте предупреждены, что мы можем изменить форматы, команды и т.д.
Думайте о нем как о конфигурации желаемого состояния для проектов на C/C++, управляемой манифестом.
Он интегрируется в вашу оболочку (PowerShell, CMD, bash/zsh)
может восстанавливать артефакты в соответствии с манифестом, который следует за кодом
предоставляет интерфейсы для обнаружения.
Установка
Хотя использование vcpkg-artifacts одинаково на всех платформах, установка/загрузка/удаление немного отличается в зависимости от используемой платформы.
vcpkg-artifacts не сохраняют никаких изменений в окружении и не добавляют себя автоматически в среду запуска. Если вы хотите, чтобы он загружался в окне, вы можете просто выполнить скрипт. Если добавить его в профиль вручную, он будет загружаться в каждом новом окне.
Re: кроссплатформенный C++ фреймворк wxWidgets
Код: Выделить всё
g++ -std=c++17 -Wall -Wextra -g -c -o src/main.o src/main.cpp
Не прописывайте пути в опциях проекта, использование wx-config проще и переносимее.
Кроме того, вам нужно будет указать компоновщику на используемые библиотеки с помощью опции -L и использовать -l (строчная буква L) с каждой библиотекой, которая вам понадобится.
Пример:
-L/usr/local/lib -lwxcore-3.1 -lwxbase-3.1
Проверьте имена библиотек и используйте их без префикса lib.
А еще лучше - попробуйте запустить wx-config --libs и использовать полученный результат для опций компоновщика в вашей IDE.
Также для получения полного набора опций компилятора используйте вывод wx-config --cxxflags
Re: кроссплатформенный C++ фреймворк wxWidgets
Добавьте папку для конкретной сборки (например, $(WXWIN)\lib\gcc_lib\mswud для статической сборки Unicode Debug) в include и посмотрите, поможет ли это. Также, если вы хотите использовать возможности C++11 и если вы не используете довольно свежую версию wxWidgets trunk, вам может потребоваться скомпилировать обе библиотеки с опцией CXXFLAGS="-std=gnu++11" вместо -std=c++11.
В меню выберите Проект -> Параметры сборки
Нажмите на "Search directories".
В дереве слева щелкните на имени проекта (не отладочного или релизного).
Путь должен указывать на общую директорию wxWidgets include, в вашем случае, вероятно:
C:\Users\Gabrielius\Documents\C++\wxwidgets\include
Теперь нажмите на "debug". Введенный там путь зависит от используемого компилятора и конфигурации. В вашем случае это может быть:
C:\Users\Gabrielius\Documents\C++\wxwidgets\lib\gcc_lib\mswud
Для конфигурации "релиз":
C:\Users\Gabrielius\Documents\C++\wxwidgets\lib\gcc_lib\mswu
В меню выберите Проект -> Параметры сборки
Нажмите на "Search directories".
В дереве слева щелкните на имени проекта (не отладочного или релизного).
Путь должен указывать на общую директорию wxWidgets include, в вашем случае, вероятно:
C:\Users\Gabrielius\Documents\C++\wxwidgets\include
Теперь нажмите на "debug". Введенный там путь зависит от используемого компилятора и конфигурации. В вашем случае это может быть:
C:\Users\Gabrielius\Documents\C++\wxwidgets\lib\gcc_lib\mswud
Для конфигурации "релиз":
C:\Users\Gabrielius\Documents\C++\wxwidgets\lib\gcc_lib\mswu
Re: кроссплатформенный C++ фреймворк wxWidgets
Бинарный релиз кодблока
https://www.codeblocks.org/downloads/binaries/
Как устанавливать и подключать библиотеки в кодблокс
https://www.youtube.com/watch?v=RdMvCCL4BKQ
https://www.codeblocks.org/downloads/binaries/
Как устанавливать и подключать библиотеки в кодблокс
https://www.youtube.com/watch?v=RdMvCCL4BKQ
Re: кроссплатформенный C++ фреймворк wxWidgets
хотите собрать минимальный образец wxWidgets, вам нужно сделать несколько дополнительных шагов.
Сначала установите флажок "Создать пустой проект" (обычно вы этого не делаете).
По окончании работы мастера скопируйте файл кода "minimal.cpp" из папки "<WXROOT>/samples/minimal/" в папку проекта, созданную мастером.
Скопируйте файл ресурсов "sample.rc" и иконку "sample.ico" из папки "<WXROOT>/samples/" также в папку проекта.
Далее в меню codeblocks выберите "Project->Add files" и выберите код и файл ресурсов, которые вы только что перенесли.
Теперь проект должен нормально собираться и запускаться.
https://forums.wxwidgets.org/viewtopic.php?t=46777
https://docs.wxwidgets.org/3.2.1/plat_msw_binaries.html
https://www.wxwidgets.org/downloads/
https://github.com/mingw-w64/mingw-w64.github.io
https://github.com/huckor/wxwidgets-vscode/releases/tag/wx_3.1.4_v2
https://github.com/huckor/wxwidgets-vscode
https://github.com/tsnsoft/wxwidgets_demo
https://github.com/tsnsoft/CodeBlocks_rus
https://sourceforge.net/projects/codeblocks/files/Binaries/Nightlies/Prerequisites/
https://www.youtube.com/watch?v=51-IaqA-5RQ
https://devcodef1.com/news/1022084/install-wxwidgets-on-windows-10-and-use-it-in-code-blocks-and-visual-studio-2019-community
Сначала установите флажок "Создать пустой проект" (обычно вы этого не делаете).
По окончании работы мастера скопируйте файл кода "minimal.cpp" из папки "<WXROOT>/samples/minimal/" в папку проекта, созданную мастером.
Скопируйте файл ресурсов "sample.rc" и иконку "sample.ico" из папки "<WXROOT>/samples/" также в папку проекта.
Далее в меню codeblocks выберите "Project->Add files" и выберите код и файл ресурсов, которые вы только что перенесли.
Теперь проект должен нормально собираться и запускаться.
https://forums.wxwidgets.org/viewtopic.php?t=46777
https://docs.wxwidgets.org/3.2.1/plat_msw_binaries.html
https://www.wxwidgets.org/downloads/
https://github.com/mingw-w64/mingw-w64.github.io
https://github.com/huckor/wxwidgets-vscode/releases/tag/wx_3.1.4_v2
https://github.com/huckor/wxwidgets-vscode
https://github.com/tsnsoft/wxwidgets_demo
https://github.com/tsnsoft/CodeBlocks_rus
https://sourceforge.net/projects/codeblocks/files/Binaries/Nightlies/Prerequisites/
https://www.youtube.com/watch?v=51-IaqA-5RQ
https://devcodef1.com/news/1022084/install-wxwidgets-on-windows-10-and-use-it-in-code-blocks-and-visual-studio-2019-community
Последний раз редактировалось ya 29 мар 2024, 23:40, всего редактировалось 1 раз.
#include "wx/setup.h"
#include "wx/setup.h"
https://stackoverflow.com/questions/30462649/wxwidgets-missing-wx-setup-h
Когда вы компилируете свои файлы, чтобы включить библиотеки wxWidgets, добавьте это в конец команды gcc:
нужно скопировать файл setup.h из каталога ./wxWidgets/include/wx/msw/wx/setup.h в каталог ./wxWidgets/include/wx.
Таким образом, ваш исходный код может использовать этот файл как #include <wx/setup.h
Этот setup.h включает в себя все внутренние элементы управления пользовательским интерфейсом wxwidgets.
https://stackoverflow.com/questions/30462649/wxwidgets-missing-wx-setup-h
Когда вы компилируете свои файлы, чтобы включить библиотеки wxWidgets, добавьте это в конец команды gcc:
Код: Выделить всё
`wx-config --cxxflags` `wx-config --libs`
Таким образом, ваш исходный код может использовать этот файл как #include <wx/setup.h
Этот setup.h включает в себя все внутренние элементы управления пользовательским интерфейсом wxwidgets.
libwxmsw31u.a libwxpng.a libwxjpeg.a libwxtiff.a libwxzlib.a
Подключаемые библиотеки
libwxmsw31u.a libwxpng.a libwxjpeg.a libwxtiff.a libwxzlib.a
libwxmsw31u.a libwxpng.a libwxjpeg.a libwxtiff.a libwxzlib.a
Re: кроссплатформенный C++ фреймворк wxWidgets
Загрузка wxWidgets
Первым делом необходимо скачать wxWidgets с официального сайта. Зайдите на сайт https://www.wxwidgets.org/downloads/ и выберите стабильную версию, подходящую для вашей системы. Для Windows выберите пакет "Windows ZIP".
Создание wxWidgets
Прежде чем использовать wxWidgets, его нужно собрать. Откройте Командную строку, нажав Win + R и набрав cmd. Перейдите в место, откуда вы извлекли wxWidgets, с помощью команды cd. Например, введите cd C:\wxWidgets\build\msw.
Далее выполните следующую команду для настройки сборки:
Эта команда настраивает сборку для релизной версии без общих библиотек и с поддержкой Юникода. Это может занять некоторое время в зависимости от спецификаций вашей системы.
После завершения настройки выполните следующую команду, чтобы запустить сборку:
Эта команда скомпилирует библиотеки wxWidgets и создаст необходимые файлы.
Настройка Code::Blocks
Если вы используете Code::Blocks в качестве IDE, выполните следующие шаги для установки wxWidgets:
Откройте Code::Blocks и перейдите в раздел Настройки > Компилятор.
Выберите вкладку Глобальные настройки компилятора и нажмите на кнопку Новый.
Задайте имя нового компилятора, например "wxWidgets".
В поле Исполняемый файл компилятора найдите и выберите файл mingw32-g++.exe, расположенный в папке bin вашей установки MinGW.
В поле Флаги компилятора добавьте следующие флаги:
-I C:\wxWidgets\include -D__GNUWIN32__ -D__WXMSW__.
На вкладке Настройки компоновщика добавьте следующие библиотеки в поле Библиотеки компоновщика:
C:\wxWidgets\lib\gcc_dll\libwxmsw31u.a
Нажмите OK, чтобы сохранить настройки.
Настройка Visual Studio 2019 Community
Если вы предпочитаете использовать Visual Studio 2019 Community, выполните следующие шаги для установки wxWidgets:
Откройте Visual Studio и создайте новый проект.
Перейдите в меню Проект > Свойства.
В раскрывающемся меню Конфигурация выберите Все конфигурации.
Перейдите в раздел C/C++ > General и добавьте следующий путь в поле Additional Include Directories (Дополнительные каталоги включения):
C:\wxWidgets\include
Перейдите в Linker > General и добавьте следующий путь в поле Additional Library Directories (Дополнительные библиотечные справочники):
C:\wxWidgets\lib\vc_x64_lib
Перейдите в Linker > Input и добавьте следующие библиотеки в поле Additional Dependencies (Дополнительные зависимости):
wxmsw31u.lib;wxmsw31u_core.lib;wxbase31u.lib;winmm.lib;comctl32.lib;rpcrt4.lib
Нажмите OK, чтобы сохранить настройки.
Поздравляем! Вы успешно установили wxWidgets на Windows 10 и интегрировали его в Code::Blocks и Visual Studio 2019 Community. Теперь вы можете приступить к разработке кроссплатформенных настольных приложений с использованием wxWidgets.
Первым делом необходимо скачать wxWidgets с официального сайта. Зайдите на сайт https://www.wxwidgets.org/downloads/ и выберите стабильную версию, подходящую для вашей системы. Для Windows выберите пакет "Windows ZIP".
Создание wxWidgets
Прежде чем использовать wxWidgets, его нужно собрать. Откройте Командную строку, нажав Win + R и набрав cmd. Перейдите в место, откуда вы извлекли wxWidgets, с помощью команды cd. Например, введите cd C:\wxWidgets\build\msw.
Далее выполните следующую команду для настройки сборки:
Код: Выделить всё
mingw32-make -f makefile.gcc BUILD=release SHARED=0 UNICODE=1
После завершения настройки выполните следующую команду, чтобы запустить сборку:
Код: Выделить всё
mingw32-make -f makefile.gcc
Настройка Code::Blocks
Если вы используете Code::Blocks в качестве IDE, выполните следующие шаги для установки wxWidgets:
Откройте Code::Blocks и перейдите в раздел Настройки > Компилятор.
Выберите вкладку Глобальные настройки компилятора и нажмите на кнопку Новый.
Задайте имя нового компилятора, например "wxWidgets".
В поле Исполняемый файл компилятора найдите и выберите файл mingw32-g++.exe, расположенный в папке bin вашей установки MinGW.
В поле Флаги компилятора добавьте следующие флаги:
-I C:\wxWidgets\include -D__GNUWIN32__ -D__WXMSW__.
На вкладке Настройки компоновщика добавьте следующие библиотеки в поле Библиотеки компоновщика:
C:\wxWidgets\lib\gcc_dll\libwxmsw31u.a
Нажмите OK, чтобы сохранить настройки.
Настройка Visual Studio 2019 Community
Если вы предпочитаете использовать Visual Studio 2019 Community, выполните следующие шаги для установки wxWidgets:
Откройте Visual Studio и создайте новый проект.
Перейдите в меню Проект > Свойства.
В раскрывающемся меню Конфигурация выберите Все конфигурации.
Перейдите в раздел C/C++ > General и добавьте следующий путь в поле Additional Include Directories (Дополнительные каталоги включения):
C:\wxWidgets\include
Перейдите в Linker > General и добавьте следующий путь в поле Additional Library Directories (Дополнительные библиотечные справочники):
C:\wxWidgets\lib\vc_x64_lib
Перейдите в Linker > Input и добавьте следующие библиотеки в поле Additional Dependencies (Дополнительные зависимости):
wxmsw31u.lib;wxmsw31u_core.lib;wxbase31u.lib;winmm.lib;comctl32.lib;rpcrt4.lib
Нажмите OK, чтобы сохранить настройки.
Поздравляем! Вы успешно установили wxWidgets на Windows 10 и интегрировали его в Code::Blocks и Visual Studio 2019 Community. Теперь вы можете приступить к разработке кроссплатформенных настольных приложений с использованием wxWidgets.
Re: кроссплатформенный C++ фреймворк wxWidgets
Для подключения wxWidgets в Code::Blocks на Windows 7, вам необходимо выполнить следующие шаги:
Скачайте и установите wxWidgets с официального сайта: https://www.wxwidgets.org/downloads/. Выберите версию, соответствующую вашей архитектуре (32-битная или 64-битная) и загрузите установщик.
Установите wxWidgets в папку на вашем компьютере, например, C:\wxWidgets.
Откройте Code::Blocks и создайте новый проект.
Нажмите на меню "Project" -> "Build options" -> "Linker settings".
Нажмите на кнопку "Add" и добавьте следующие библиотеки из папки установки wxWidgets:
wxmsw31u_core
wxbase31u
wxtiff
wxjpeg
wxpng
wxzlib
wxexpat
comctl32
rpcrt4
winmm
shell32
Перейдите во вкладку "Search directories" и добавьте путь к папке wxWidgets, где находятся заголовочные файлы (например, C:\wxWidgets\include).
Нажмите "OK" и скомпилируйте и запустите ваш проект.
-------------------------------------------------------------------------------------------------------
Для линковки wxWidgets в Code::Blocks необходимо выполнить следующие шаги:
Скачайте и установите wxWidgets на ваш компьютер. Вы можете скачать исходники с официального сайта (https://www.wxwidgets.org/) и скомпилировать их самостоятельно или установить предкомпилированные библиотеки.
Создайте новый проект в Code::Blocks или откройте существующий проект.
Настройте проект для использования wxWidgets. Для этого откройте "Project -> Build Options", затем перейдите на вкладку "Linker settings". Добавьте следующие библиотеки к списку линковки:
wxbase31u
wxmsw31u_core
wxmsw31u_adv
wxmsw31u_html
Перейдите на вкладку "Search directories" и добавьте путь к папке include wxWidgets в разделе "Compiler".
Добавьте флаги компиляции для использования wxWidgets. Для этого перейдите на вкладку "Compiler Settings" и добавьте следующие флаги компиляции:
Опция "-D__WXMSW__" для указания, что вы используете wxWidgets под Windows.
Опция "-DwxUSE_GUI=1" для использования GUI-компонентов wxWidgets.
Опция "-I{путь_к_папке_исходников_wxWidgets}" для добавления пути к исходникам wxWidgets.
После выполнения всех этих шагов, вы сможете успешно линковать и компилировать ваши проекты, использующие wxWidgets в Code::Blocks.
Скачайте и установите wxWidgets с официального сайта: https://www.wxwidgets.org/downloads/. Выберите версию, соответствующую вашей архитектуре (32-битная или 64-битная) и загрузите установщик.
Установите wxWidgets в папку на вашем компьютере, например, C:\wxWidgets.
Откройте Code::Blocks и создайте новый проект.
Нажмите на меню "Project" -> "Build options" -> "Linker settings".
Нажмите на кнопку "Add" и добавьте следующие библиотеки из папки установки wxWidgets:
wxmsw31u_core
wxbase31u
wxtiff
wxjpeg
wxpng
wxzlib
wxexpat
comctl32
rpcrt4
winmm
shell32
Перейдите во вкладку "Search directories" и добавьте путь к папке wxWidgets, где находятся заголовочные файлы (например, C:\wxWidgets\include).
Нажмите "OK" и скомпилируйте и запустите ваш проект.
-------------------------------------------------------------------------------------------------------
Для линковки wxWidgets в Code::Blocks необходимо выполнить следующие шаги:
Скачайте и установите wxWidgets на ваш компьютер. Вы можете скачать исходники с официального сайта (https://www.wxwidgets.org/) и скомпилировать их самостоятельно или установить предкомпилированные библиотеки.
Создайте новый проект в Code::Blocks или откройте существующий проект.
Настройте проект для использования wxWidgets. Для этого откройте "Project -> Build Options", затем перейдите на вкладку "Linker settings". Добавьте следующие библиотеки к списку линковки:
wxbase31u
wxmsw31u_core
wxmsw31u_adv
wxmsw31u_html
Перейдите на вкладку "Search directories" и добавьте путь к папке include wxWidgets в разделе "Compiler".
Добавьте флаги компиляции для использования wxWidgets. Для этого перейдите на вкладку "Compiler Settings" и добавьте следующие флаги компиляции:
Опция "-D__WXMSW__" для указания, что вы используете wxWidgets под Windows.
Опция "-DwxUSE_GUI=1" для использования GUI-компонентов wxWidgets.
Опция "-I{путь_к_папке_исходников_wxWidgets}" для добавления пути к исходникам wxWidgets.
После выполнения всех этих шагов, вы сможете успешно линковать и компилировать ваши проекты, использующие wxWidgets в Code::Blocks.