Что делать дальше после успешной сборки wxWidgets: Visual Studio 2010 - PullRequest
0 голосов
/ 04 января 2012

Я скачал c ++ приложение с открытым исходным кодом, которое было создано с использованием Linux IDE / Editor (или, может быть, что-то НЕ Windows ) и больше не поддерживается.

На этот раз я хочу отредактировать и перекомпилировать его, используя VS 2010.

Оставлены ошибки (в основном с префиксом "wx"), такие как:

  • "wxString не определено"
  • "wxStaticText ожидал спецификатор типа"

и т. д. ... заставляет меня думать, что это все о wxWidgets.

После успешной сборкиwxWidgets, что делать дальше, чтобы интегрировать его в реальную программу на С ++, чтобы я мог редактировать и компилировать с использованием VS 2010?

Я использую BorlandC ++ последние 2 года назад, но не знаком с пакетами GUI.

Ответы [ 4 ]

2 голосов
/ 04 января 2012

Первый шаг - сообщить компилятору, где искать включаемые файлы wxWidgets.

Итак, вам необходимо выяснить, где находятся эти файлы, в зависимости от того, где вы установили и создали wxWidgets.

В моей системе это C: \ Program Files (x86) \ wxWidgets-2.8.12

Я считаю, что лучше всего вместо жесткого кодирования пути в каждом проекте создаватьпеременная окружения WXROOT для хранения пути к папке wxWidgets.

Панель управления |Система |Расширенный |Переменные окружения

Теперь вы должны сообщить об этом компилятору

Visual Studio |Проект |Свойства |C / C ++ |Дополнительные каталоги для включения

То, что вы добавите сюда, зависит от того, какую сборку вы делаете.Если вы делаете сборку релиза в юникоде, то это будет хорошим началом

"$ (WXROOT) \ lib \ vc_lib \ mswu"; "$ (WXROOT) \ include"

сейчасВы должны были исправить ошибки компилятора.

Далее вы получите несколько ошибок компоновщика ....

2 голосов
/ 05 января 2012

Возможно, ошибки вызваны тем, что вы используете wxwidget 2.8, который не поддерживается в VS 2010.

Попробуйте собрать wxwidgets 2.9 или использовать VS 2008. У меня не было проблем со сборкой wxwidgets 2.9 на VS 2010.

Домашняя страница сайта Wxwidgets сообщает: «Хотя это все еще официально релиз для разработки, поскольку некоторые детали API еще не заморожены, мы считаем, что 2.9.3 можно использовать в производственной среде».

Что делать после успешной сборки, посмотрите на это http://wiki.wxwidgets.org/Microsoft_Visual_C%2B%2B_Guide

Вы можете использовать учебник из раздела «Создание нового проекта из образца», потому что создание проекта вручную немного сложнее, поскольку wxwidgets требует некоторой дополнительной настройки, а не только установки и включения, и libs dir как делает большинство библиотек.

1 голос
/ 24 сентября 2014

Может быть, я немного опоздал, но это поможет новичкам на wxwidgets.

Прежде всего, каталог Goto Wxwidgets (для загрузки) в моем случае это "C: \ Users \ WxWidgets_all". Теперь в этой папке перейдите в каталог сборки. Теперь откройте командную строку Visual Studio. Если вы уже установили Visual Studio, вы можете легко найти его через меню «Пуск». Теперь в командной строке перейдите на <Path to your wxWidgets>/build/msw/. Теперь выполните следующие команды.

nmake / f makefile.vc --For Static Library and Debug Version
nmake / f makefile.vc SHARED = 1 --For SHARED Library and Debug Version
nmake / f makefile.vc BUILD = release --For SHARED Library and Release Version

После его завершения у вас будет dll или lib в "<path to wxwidgets>\lib\" в зависимости от опции, предоставленной в приведенных выше командах.

Теперь включите все файлы, связанные с wxwidgets, в ваш проект. В основном необходимо указать два пути: «<path to wxwidgets>\inlcude\» и «<path to wxwidgets>\lib\vc_<lib\dll>».

После этого свяжите сгенерированную библиотеку wxwidgets с вашим проектом. Для этого вставьте "<path to wxwidgets>\lib\vc_<lib\dll>" в свойство вашего проекта в разделе библиотеки.

Теперь добавьте ниже препроцессоров в ваш проект.

_WINDOWS
NDEBUG (для выпуска)
_DEBUG (для отладки)
_CRT_SECURE_NO_DEPRECATE=1
_CRT_NON_CONFORMING_SWPRINTFS=1
_SCL_SECURE_NO_WARNINGS=1
__WXMSW__
_UNICODE

После этого добавьте в свой проект следующую библиотеку из "<path to wxwidgets>\lib\vc_<lib\dll>"

wxbase30u_net
wxmsw30u_core
wxbase30u
wxtiff
wxjpeg
wxpng
wxzlib
wxregexu
wxexpat
wxmsw30u_adv

В зависимости от ваших скомпилированных параметров, имя библиотеки может немного отличаться.

Я думаю, что я выполнил все шаги для запуска wxWidgets.

Даже если у вас есть ошибки, вы можете проверить minimal проект в "<path to wxwidgets>\samples" каталог. Попробуйте запустить этот проект, и даже если вы получили ошибку, ваши wxwidgets не собраны должным образом.

Надеюсь, это поможет.

1 голос
/ 04 января 2012

Вот видео , которое показывает, как начать работу с Visual Studio.Также вы можете взглянуть на каталог samples и создать свой собственный проект на основе конфигурации проектов из этого каталога.

...