Можно ли скомпилировать двоичные файлы Windows на компьютере с Linux? - PullRequest
5 голосов
/ 04 октября 2009

В моей работе все данные проекта хранятся в NFS, доступной как на компьютерах с Linux, так и с Windows (используя Samba). Вся работа ведется в Linux, но мне нравится идея компилировать некоторые инструменты для Windows, чтобы можно было отлаживать в Visual Studio.

У меня уже есть хороший make-файл, который может создавать код как для 32-битной, так и для 64-битной Linux, используя разные цели. Предполагая, что у меня есть версии Windows для всех внешних библиотек где-то в NFS, и предположим, что код достаточно чистый для компиляции под Windows, возможно ли скомпилировать и связать мою программу для Windows, используя существующий make-файл в Linux? В идеале я хотел бы вызвать make-файл один раз и собрать все три из 32-битного Linux, 64-битного Linux и Windows.

Дополнительным плюсом будет возможность скомпилировать его с любыми метаданными Visual Studio, чтобы упростить отладку.

Ответы [ 3 ]

5 голосов
/ 04 октября 2009

Да, вы можете достичь этого, например, с помощью MinGW .

Однако вам, вероятно, придется адаптировать один или два параметра в вашем make-файле.

1 голос
/ 04 октября 2009

Вам нужен пакет кросс-компиляции. Вы также можете использовать Wine lib.

1 голос
/ 04 октября 2009

Есть несколько возможностей, о которых я могу подумать:

  • Вы можете попробовать запустить Visual Studio под Wine. Если Visual Studio не запускается, вы все равно сможете запускать инструменты командной строки.

  • Запустите полную установку Windows на виртуальной машине. Я сделал это с Linux на Windows, но не наоборот, но я уверен, что это возможно.

  • Использование VNC для доступа к отдельному ПК с Windows с ПК с Linux

  • Использовать перекрестную сборку GCC вместо Visual Studio

...