2014-02-19 3 views
1

Предположим, вы только что написали приложение Qt. Напишите раз компилировать всюду ... у вас есть Windows 7 x86 64-разрядная машина. Вы хотели бы:сборщик кросс-платформенных и инсталляторов

  1. Статический собрать этот исполняемый файл (чтобы минимизировать количество DLL/так/каркасы)
  2. Собирать для (x86_64, x86) * (окно [все], Linux, Mac, и почему бы не BSD) = 6/8 пары (процессор, Os)
  3. Вы также хотели бы, чтобы люди выполняют простейшие возможные укладывают

      --> one file for installer which copies an sqlite database in program data and an executable in program files 
          --> linux via yum/yast/apt-get installs 
          --> i'm not sure what to do for mac 
    
  4. простых деинсталляторов

Как вы все это сделаете со своей машины Windows, в частности, перекрестной компиляции для Mac?

Qt Installer Framework представляется подходящим инструментом для работы. Но я не могу понять, как компилятор Mac-двоичный файл в любом случае ...

Что бы вы использовали? Любой инструмент, который вы часто используете?

EDIT следующий совет Я ищу кросс-компилятор. Я попытаюсь интегрировать его в Qt tool-chain ... clang выглядит великолепно.

  1. http://blog.boceto.fr/2012/04/29/the-universal-compiler/
  2. http://blog.boceto.fr/2012/05/07/the-universal-compiler-part-3-clang-targetting-mingw/
  3. http://clang.llvm.org/docs/CrossCompilation.html
+0

@ merlin09 Я полагал, что опечатка в вашем редактировании. – user2346536

+0

Я не думаю, что вы можете перекрестно скомпилировать Mac для любой другой платформы, чем Mac. Кроме того, в общем, управление кросс-компиляторами может быть большой частью работы и связано с недостатком, что вы не можете запускать тесты и вообще не тестировать фактическое приложение. Я предпочел бы работать с виртуальными машинами. –

+0

Но с VM вам нужно иметь изображение MAC os, которое не является бесплатным ... – user2346536

ответ

1

Я думаю, что лучший способ сделать это, чтобы захватить cross-compiler, и просто следуйте инструкциям, указанным в рамках Qt Installer для создания установки исполняемый файл, один раз для каждой платформы.

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