2016-12-28 13 views
0

Я планирую разработать небольшое приложение GUI с использованием wxWidgets на Ubuntu 16.10. Я загрузил исходный пакет версии 3.1.0, и я могу успешно построить пакет для собственной платформы и для Windows с MinGW.Обработка нескольких компиляций wxWidgets

Однако проблема в том, что я не мог понять, какие префиксы я должен передать команде ../configure --prefix=.

Если я ничего не пропускаю для префиксов, а затем устанавливаю их оба с помощью make install, второй переопределяет 1-й. Хотя wx-config показывает другую конфигурацию как «Также найденную в/usr/local ...», я не могу ее выбрать, используя опцию --toolkit=gtk2, wx-config говорит, что такой сборки нет.

В основном, какие должны быть префиксы для каждой сборки в соответствии с правилами именования linux и соглашениями wxWidgets в целом?

Примечание: Сборки: gtk2-unicode-static-3.1 и x86_64-w64-mingw32-msw-unicode-static-3.1

+0

Уверен, что вам нужна опция '--prefix ='? –

+0

Как я уже сказал, я не мог заставить wx-config выбирать один или другой без префикса. Есть ли какой-либо другой метод * надлежащего * для создания нескольких сборок? Если да, я был бы признателен за то, что ... –

+0

Опция '--prefix' предназначена для установки вашей библиотеки в любом месте, кроме как в каталогах'/usr/lib' или '/ usr/lib64' (вдоль отдельные каталоги для '/ usr/include', а также). Вы потрудились прочитать документацию autoconf? –

ответ

0

В принципе, wx-config, безусловно, должны иметь возможность выбирать между несколькими сборками теми же библиотеками (это около 90% от всей своей логики и целей в жизни) , но я боюсь, что может возникнуть проблема с логикой wx-config для выбора сборки и --host, что необходимо для выбора правильной сборки в вашем случае.

Я не уверен сам, потому что на самом деле я никогда не использовал wx-config, чтобы выбирать между несколькими сборками и вместо этого просто никогда не устанавливать их вообще и использовать сценарий из каталога сборки. То есть что я уверен, что делает работы:

$ mkdir -p ~/build/wx/gtk 
$ cd $_ 
$ ~/src/wx/configure # of course, you can add other options, if needed 
$ make -s 
$ mkdir ../msw 
$ cd $_ 
$ ~/src/wx/configure --host=x86_64-w64-mingw32 --with-msw 
$ make -s 
$ cd ~/src/my/program 
$ make WX_CONFIG=~/build/wx/gtk/wx-config # or the MSW one 

Использование WxWidgets построить без установки, как это тратить дисковое пространство (вы можете сделать rm *.o вернуть большинство из них, конечно, - просто не делать make clean который сотрет библиотеки тоже), но в остальном он имеет только преимущества:

  1. Вам не нужны какие-либо особые права, которые, как правило, необходимые для записи /usr/local или где угодно.
  2. Вы можете легко иметь столько построек, сколько вам нужно, и выбирать между ними можно, просто выбрав правильный wx-config.
  3. Если что-то пойдет не так, вы можете в любой момент только rm -rf ~/build/wx/whatever и начать заново.
+0

Это, вероятно, сработает, спасибо за метод ... –

 Смежные вопросы

  • Нет связанных вопросов^_^