Тема: Создание исполняемого файла *.exe для Windows на платформе Linux. HOW?

Как создать программу для Windows на платформе Linux? Установил MinGW (как мне посоветовали), а все равно *.exe не создается. Как максимально легко создать кроссплатформенный код для переноса на Windows? Предполагается использовать библиотеку графических виджитов GTK+.
Пример:
#include <gtk/gtk.h>
int main(int argc, char *argv[])
{
  GtkWidget *window1;
  Gtk_init(&argc, &argv);
  window1 = gtk_window_new(GTK_WINDOW_TOPLEVEL);
  gtk_window_set_title(GTK_WINDOW(window1), "Ну где же кроссплатформенность? :-)");
  gtk_widget_show(window1);
  gtk_main();
  return 0;
}

Окно закрывается через удаление процесса (в Linux) или через диспетчер задач (в Windows).
Так как же и чем откомпилировать эту прогу, для того чтобы создался исполняемый файл *.exe для Windows? :sick:

<root@localhost># rm -f /roo* > report.one

2

Re: Создание исполняемого файла *.exe для Windows на платформе Linux. HOW?

подключаем ВЕНДОВЫЕ библиотеки и компилим. либо не придуриваемся. Если ты используешь гтк то тебе понадобится еще и гтк под венду чтобы это дело у тебя заработало. И вообще собирать нужно под вендой через цигвин. Это уже не эффективно. Потому как к 4х-килобайтному исполняемому файлу тебе придется тянуть еще многомегабайтную библиотеку, плюс к тому на выходе ты получишь черт знает что, скорее всего жутко нестабильное. Нужна кроссплатформерность - пиши джаве.

ЗЫ: MiniGW - самый стремный компилятор под Windows который когда либо выходил, альтернатив MSCPP нет небыло и не будет, адепты борланда тут могут даже не высовываться - ибо борландовский компилятор не соответствует стандарту ISO.

Re: Создание исполняемого файла *.exe для Windows на платформе Linux. HOW?

Ну я поставил себе Boralnd C++ BuilderX и Borland Together. Там вроде можно пробовать код на кроссплатформенность,но я хочу делать проги в линухе, а запускать на видне.:tongue2: А челам, перешедшим на линух, нужно осваивать линух компиляторы.:dumb: Не можешь компилить проги для вЕнды, так и скажи. Джаве не канает, надо С++. Мне сказали, что надо использовать Qt3 библиотеку и т.п. Потом запущу Qt Designer, посмотрю что получится совместно с MinGW. В MinGW можно создать такой код, но там нужны какие то дополнительные библиотеки. Наверное MinGW предназначен для Debian ленухоф.:angel:

<root@localhost># rm -f /roo* > report.one

4

Re: Создание исполняемого файла *.exe для Windows на платформе Linux. HOW?

Я вообще не вижу смысла писать под винду из под линукса. Поставь WMware и не парься.

5

Re: Создание исполняемого файла *.exe для Windows на платформе Linux. HOW?

Я вообще не вижу смысла писать под винду из под линукса. Поставь WMware и не парься.

А если нужно писать софт для телефона, то на нём и вести разработку?

6

Re: Создание исполняемого файла *.exe для Windows на платформе Linux. HOW?

penguin пишет:

А если нужно писать софт для телефона, то на нём и вести разработку?

Для этого есть эмуляторы. Товарищи, у вас в роду практологов небыло?

Вы видели gtk/qt приложения под вендой? Скачайте чонить подобное и подивитесь скорости работы и отрисовки. Большего убожества просто быть не может.
если уж на то пошло то цепляем полный комплект библиотек вендового апи - тупо дерни из тогоже мсцпп - и компиляй. Ибо лучшеих библиотек под венду чем родные - нет и не будет. И учти что тебе нужны файлы формата pe32, а значит нужен компилятор и компоновщик УМЕЮЩИЙ работать с pe32. Подключить библиотеки от MS и скомпилировать не вызовет никаких проблем а вот полученный файл на выходе у тебя работать не будет ни там ни там.

Re: Создание исполняемого файла *.exe для Windows на платформе Linux. HOW?

В общем, проясняю ситуацию, которая получилась: С помощью MinGW создал три приложения для винды - 1) используя GTK+; 2) используя обычные wsвиджиты; 3) консольное приложение. Результат таков: GTK прогу скомпилировать не удалось, в общем отсутствует библиотека GTK-Win32. Wsвиджитную программу тоже не удалось скомпилировать, нету библиотек. При компиляции консольного приложения получился файл WinConsole.exe который имеет формат ELF. То есть на винде работать он не будет. Использовал систему Mandriva Linux 2007 Free. Устанавливал всевозможные библиотеки, которые входят в состав этого дистрибутива. Я думаю, что все таки можно избежать таких глобальных проблем, используя вместо GTK функции GDI API, но не на версиях Free, а например на дистрибутивах, где больше всяких библиотек для программирования, возможно что даже Mandriva 2007 Discovery подойдет или Powerpack+. Либо загружать библиотеки на разных сайтах.:usch:

Я немножко проясню: Я хотел перейти целиком на Linux и отказаться от программирования для Windows (потому что уже видно, что Windows скоро перестанет существовать или будет существовать для чайников), следовательно хочется создавать программы в Linux т.к. стиль программирования в линухах совсем другой. Но мои преподаватели то по прежнему работают в винде.:/ Мне больше ничего не остается делать, как затормозить прогресс развития линухов и писать коды для Windows, ради них я торможу себя. Ла-а-ан....время расставит всё на свои места.:beer:

Отредактировано HTTPS_sniffer (2007-06-28 18:02:37)

<root@localhost># rm -f /roo* > report.one

8

Re: Создание исполняемого файла *.exe для Windows на платформе Linux. HOW?

HTTPS_sniffer
имхо сама мысль создавать приложения для венды в линуксах, толком не проверяя - весьма скверная, и, я бы даже сказал, еретическая. т.к. винда всё же несколько сложнее телефонов, к тому же полна противоестественных глюков.
т.е. если есть хоть какая-то возможность, то компилить нужно, как сказал nwr, в венде. качаешь MinGW для винды (а лучше мелкософтовский или борландовский компиляторы) и попёр...

9

Re: Создание исполняемого файла *.exe для Windows на платформе Linux. HOW?

Что там чего сложнее -- неважно.  В телефоне может быть та же самая винда.  Это не повод проводить сборку на ней.  IMHO сборку надо проводить там, где удобнее.  Кому где удобнее -- другой вопрос.  И сборка там или сям никак не отменяет тестирование.

10

Re: Создание исполняемого файла *.exe для Windows на платформе Linux. HOW?

FreePascal - вот решение для всех платформ на паскале. Можно проги писать для винды и доса, различных *nix систем, маков. Хочешь поставь lazarus и пиши софт и для линуха и для винды, код переносимый.:)

11

Re: Создание исполняемого файла *.exe для Windows на платформе Linux. HOW?

ты сам писал? пишется? готовые проекты есть(окромя вывода хелловорлда в консольку)?
если уж паскаль то только Kylix

12

Re: Создание исполняемого файла *.exe для Windows на платформе Linux. HOW?

nwr пишет:

если уж паскаль то только Kylix

Аргументы?

"Есть в демократии что-то такое,
до чего неприятно касаться рукою."
----------------------------------------------------------------------------------------------------------------
"Когда в обществе нет цветовой дифференциации штанов — то нет цели! А когда нет цели…"

13

Re: Создание исполняемого файла *.exe для Windows на платформе Linux. HOW?

готовые проекты есть(окромя вывода хелловорлда в консольку)?

Есть это первое, второе - в нём можно многое написать.

если уж паскаль то только Kylix

Kylix воопервых уже давно мёртв, вовторых насколько я знаю, созданные им приложения страдали скоростью работы, так как запускались через эмулятор. Лучше уж использовать lazarus, хоть приложения и на Gtk1, зато не тормозять. Кстати lazarus - IDE для FreePascal, клон Delphi.

Re: Создание исполняемого файла *.exe для Windows на платформе Linux. HOW?

адепты борланда тут могут даже не высовываться

а откуда им тут взяться smile

ибо борландовский компилятор не соответствует стандарту ISO.

Скажем почти соответствует. Добавлены свои расширения (но у кого их нет?) такие как __finally, property и тд. В общем полезные штуки. Кроме того можно в опциях билдера установить флаг соответствия анси. Правда в этом случае придется отказаться от vcl.

альтернатив MSCPP нет небыло и не будет

А он соответсвует анси?
Кстати если уж так говорить, то вроде как интеловский под виндой считается самым быстрым. Я его в глаза не видел, просто слышал такое.

Добавлено Пнд 29 Окт 2007 12:31:26 :
OFF: Кстати - цитирование тут хреново работает

От так тобi запорiжцi виcказали, плюгавче.

15

Re: Создание исполняемого файла *.exe для Windows на платформе Linux. HOW?

а откуда им тут взяться smile

Как откуда. Азъ есьмъ wink Разрабатываю дипломный проект по созданию программного комплекса, часть кода уже привел (самое начало). Delphy не люблю, даже паскаль уже забывать начал. А язык Си - это другое дело.;) Да можно всё преобразовать, только надо хорошенько подумать. Вместо vcl использовать виджиты, а если таких нету, то создать свои классы.:blush:

Re: Создание исполняемого файла *.exe для Windows на платформе Linux. HOW?

А я Python начал изучать. Это ведь можно назвать программирование под Линукс smile
Уже скачал комодо фри Komodo Edit, и аддон с тетрисом к нему smile
Ниче так, пока нравится.

правда пока все это как развлечение.

Отредактировано Дикий Билл (2008-10-06 14:27:35)

От так тобi запорiжцi виcказали, плюгавче.

17

Re: Создание исполняемого файла *.exe для Windows на платформе Linux. HOW?

Дикий Билл
тоже читаю вот уже вторую неделю как о питоне... правда с уклоном в PyQt

Re: Создание исполняемого файла *.exe для Windows на платформе Linux. HOW?

Эхехех.... не успел в достаточной мере изучить питон. как понадобилось делать выбор на чем писать новое приложене. Выбрали вб.нет.

От так тобi запорiжцi виcказали, плюгавче.

19

Re: Создание исполняемого файла *.exe для Windows на платформе Linux. HOW?

Господа, если я не ошибаюсь проблема изначально всего лишь в том, чтобы хорошо писалось и исполнялось, а не в свободности и переносимости, ставьте MSCPP и VisualStudio с одного из пиратских дисков на wine и будет радость. Но есть одна мелочь: про MFS и ActiveX вам определенно прийдется позабыть, и познать радость программирования на WinAPI.
P.S. WinApi в wine поддерживается не всё, поэтому вам надо будет ещё добавить библиотек из целевой дистрибуции Windows
P.P.S. Проверял - работает.

Отредактировано BanderOS (2008-11-08 22:25:15)

Кто умеет, тот делает, а кто не умеет, тот учит
Бернард Шоу

20

Re: Создание исполняемого файла *.exe для Windows на платформе Linux. HOW?

Дикий Билл пишет:

Выбрали вб.нет.

Ну есть ведь и Python.Net

"Есть в демократии что-то такое,
до чего неприятно касаться рукою."
----------------------------------------------------------------------------------------------------------------
"Когда в обществе нет цветовой дифференциации штанов — то нет цели! А когда нет цели…"

Re: Создание исполняемого файла *.exe для Windows на платформе Linux. HOW?

Ну есть ведь и Python.Net

Да это неважно - сам язык просто недосточно изучил для того чтоб чтото делать на нем. Но питон мне скажу честно - понравился. Продолжу изучение в свободное время.
А вообще висуал студия експресс конечно хитрый ход smile очень неплохо для беспланого. Да и на бейсике можно запросто начинать не зная тонкостей этого языка.
Правда есть в бейсике откровенно идиотские вещи.
В общем щас пион - просто для души smile

От так тобi запорiжцi виcказали, плюгавче.