Форум программистов, компьютерный форум, киберфорум
C/С++ под Linux
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.83/18: Рейтинг темы: голосов - 18, средняя оценка - 4.83
 Аватар для Razzeeyy
30 / 7 / 0
Регистрация: 01.03.2011
Сообщений: 95

компилировать из под Linux'а для Windows

22.09.2011, 15:41. Показов 3685. Ответов 13
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте, не сочтите за оффтоп.
Сижу обычно под linux и рабочий нетбук с ним же.
Написал простенькую программку с использованием OpenGL/GLUT.

Так как простые
люди
смертные
сидят в основном под windows, то есть надобность скомпилировать бинарь для винды, находясь под линуксом.
Как посоветуете это делать?

P.S. Wine пользовать не хотелось бы.
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
22.09.2011, 15:41
Ответы с готовыми решениями:

На Lazarus в Windows можно ли компилировать под Linux?
Программу полностью отрыботал на винде и возникла сложность переноса на линукс. Никак не пойму откуда начать.

SFML как компилировать из-под Linux приложения Windows?
Доброе утро/день/вечер. Как скомпилировать свой проект в линуксе, чтобы на выходе получить .exe для windows приложений? То есть...

Не могу компилировать под Android
3 раза у меня установлено Android SDK на разных жестких дисках: C:/ - Просто SDK, ставил специально для Unity 3D, загружены вот эти...

13
725 / 224 / 73
Регистрация: 01.03.2011
Сообщений: 643
22.09.2011, 16:04
Например MinGW
1
 Аватар для Razzeeyy
30 / 7 / 0
Регистрация: 01.03.2011
Сообщений: 95
22.09.2011, 16:06  [ТС]
Цитата Сообщение от prik Посмотреть сообщение
Например MinGW
Без wine его получиться использовать?
0
Формучанин
364 / 296 / 42
Регистрация: 02.11.2010
Сообщений: 1,245
22.09.2011, 16:16
а чем собственно вайн плох?
0
Эксперт С++
 Аватар для niXman
3211 / 1459 / 74
Регистрация: 09.08.2009
Сообщений: 3,441
Записей в блоге: 2
22.09.2011, 17:01
Razzeeyy, не нужен вам wine. кросскомпилер есть в большинстве дистров. у вас какой?
0
 Аватар для Razzeeyy
30 / 7 / 0
Регистрация: 01.03.2011
Сообщений: 95
22.09.2011, 20:34  [ТС]
Цитата Сообщение от niXman Посмотреть сообщение
у вас какой?
Debian, находил в репозитории mingw32 но вот хз как его использовать =)
0
8 / 8 / 1
Регистрация: 23.09.2011
Сообщений: 45
23.09.2011, 23:07
Просто нужно переменные среды переопределить для Make:
CC=i586-mingw32msvc-cc
GXX=i586-mingw32msvc-g++
и т.д. в общем команды такие же, только приставка "i586-mingw32msvc-".
По крайней мере я так делал, даже на Qt кросскомпиляцию получалось делать, правда там много чего ещё делать нужно.
1
 Аватар для Razzeeyy
30 / 7 / 0
Регистрация: 01.03.2011
Сообщений: 95
24.09.2011, 00:20  [ТС]
Цитата Сообщение от mdt::Vladimir Посмотреть сообщение
Просто нужно переменные среды переопределить для Make:
хорошо, попробую, спасибо
0
Эксперт С++
 Аватар для niXman
3211 / 1459 / 74
Регистрация: 09.08.2009
Сообщений: 3,441
Записей в блоге: 2
24.09.2011, 02:21
Цитата Сообщение от mdt::Vladimir Посмотреть сообщение
Просто нужно переменные среды переопределить для Make
не нужно.
выполняете make так: make CPP=i586-mingw32msvc-cpp CC=i586-mingw32msvc-gcc CXX=i586-mingw32msvc-g++ LD=i586-mingw32msvc-ld
2
8 / 8 / 1
Регистрация: 23.09.2011
Сообщений: 45
24.09.2011, 09:46
Ну я это и имел ввиду
Главное, чтоб в Makefile не было написано просто "g++ -c main.cpp ... и т. д.", а было "$(GXX) -c ..."
1
 Аватар для k1-801
4 / 4 / 6
Регистрация: 07.01.2013
Сообщений: 136
09.01.2014, 20:50
Ровно та же ситуация, только прошу более конкретно расписать. По командам. Допустим, что у нас файл /home/C++/main.cpp и нужен ужасный файл ужасного формата с ужасным содержимым /home/C++/main.exe (и далее, по командам). Извиняюсь за глупость, жутко путаюсь после нового года.

Не по теме:

Количество опечаток в коде выросло в шесть раз

0
8 / 8 / 1
Регистрация: 23.09.2011
Сообщений: 45
13.01.2014, 14:51
Для начала нужно установить mingw. В debian так:
# apt-get install mingw32
далее можно откомпилировать файл main.cpp:
i586-mingw32msvc-g++ -o main.exe main.cpp

Также можно написать Makefile:
Code
1
2
main.exe: main.cpp
    $(GXX) -o main.exe main.cpp
(во второй строчке первый символ - табуляция)
Далее запустить компиляцию:
make GXX=i586-mingw32msvc-g++

Если проект состоит из множества файлов, то Makefile будет уже сложнее. Можно воспользоваться средами разработки, позволяющие использовать произвольные компиляторы или генерирующие Makefile'ы.
0
 Аватар для k1-801
4 / 4 / 6
Регистрация: 07.01.2013
Сообщений: 136
14.01.2014, 19:39
Цитата Сообщение от mdt::Vladimir Посмотреть сообщение
Для начала нужно установить mingw. В debian так:
# apt-get install mingw32
далее можно откомпилировать файл main.cpp:
i586-mingw32msvc-g++ -o main.exe main.cpp

Также можно написать Makefile:
Code
1
2
main.exe: main.cpp
    $(GXX) -o main.exe main.cpp
(во второй строчке первый символ - табуляция)
Далее запустить компиляцию:
make GXX=i586-mingw32msvc-g++

Если проект состоит из множества файлов, то Makefile будет уже сложнее. Можно воспользоваться средами разработки, позволяющие использовать произвольные компиляторы или генерирующие Makefile'ы.
Странно, отказывается находить GLUT.
0
67 / 67 / 9
Регистрация: 04.01.2012
Сообщений: 231
Записей в блоге: 1
16.01.2014, 21:49
Нашёл у себя такой Makefile:
Bash
1
2
3
4
5
6
7
8
9
SOURCE = osv.cpp
WIN_CC32 = i586-mingw32msvc-g++
WIN_BF32 = osv.exe
WIN_CI32 = -I/usr/i586-mingw32msvc/include
WIN_CL32 = -L/usr/i586-mingw32msvc/lib -lmingw32 -luser32 -lgdi32 -lopengl32 -lglut
 
all:
   $(WIN_CC32) -o $(WIN_BF32) $(SOURCE) $(WIN_CI32) $(WIN_CL32)
   rm -f ./*.o
Как видно, в программе используются glut и OpenGL. Кстати, в osv.cpp есть объявления:
C++
1
2
3
#include <windows.h>
#include <GL/gl.h>
#include <GL/glut.h>
Но, насколько помню, я какие-то библиотеки куда-то докидывал. Вроде в форматах .a и .lib библиотеки glu, opengl32 и glut. Могу ошибаться - судя по дате изменения Makefile, я это настраивал около года назад.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
16.01.2014, 21:49
Помогаю со студенческими работами здесь

SCPI - на чем компилировать под COM-PORT
Вот, есть мультиметр Метран 514. Он понимает SCPI команды, работает с ПК по компорту (рс232). На чем, в какой среде писать программу под...

Почему VS перестал компилировать под x64?
Почему? Я вообще ничего не менял! Что может быть не так?

Компилировать приложение под Android прямо на планшет
Я пытаюсь в среде Delphi XE10 Seattle, скомпилировать Multi-Device приложение под Android, но при компиляции, IDE запрашивает некие Android...

Прошу научить меня компилировать под android 4.4
Добрый день, уважаемые программисты! Под xamarin раньше не писал, попробовал писать, столкнулся с проблемами, решение которых как-то не...

Где писать код под Си и чем компилировать?
Здравствуйте! Начал изучать Си. Где писать код?(Читал, что можно даже в блокноте) И чем компилировать? У меня Windows 8 x64.


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
14
Ответ Создать тему
Новые блоги и статьи
модель ЗдравоСохранения 8. Подготовка к разному выполнению заданий
anaschu 08.04.2026
https:/ / github. com/ shumilovas/ med2. git main ветка * содержимое блока дэлэй из старой модели теперь внутри зайца новой модели 8ATzM_2aurI
Блокировка документа от изменений, если он открыт у другого пользователя
Maks 08.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа, разработанного в конфигурации КА2. Задача: запретить редактирование документа, если он открыт у другого пользователя. / / . . .
Система безопасности+живучести для сервера-слоя интернета (сети). Двойная привязка.
Hrethgir 08.04.2026
Далее были размышления о системе безопасности. Сообщения с наклонным текстом - мои. А как нам будет можно проверить, что ссылка наша, а не подделана хулиганами, которая выбросит на другую ветку и. . .
Модель ЗдрввоСохранения 7: больше работников, больше ресурсов.
anaschu 08.04.2026
работников и заданий может быть сколько угодно, но настроено всё так, что используется пока что только 20% kYBz3eJf3jQ
Дальние перспективы сервера - слоя сети с космологическим дизайном интефейса карты и логики.
Hrethgir 07.04.2026
Дальнейшее ближайшее планирование вывело к размышлениям над дальними перспективами. И вот тут может быть даже будут нужны оценки специалистов, так как в дальних перспективах всё может очень сильно. . .
Горе от ума
kumehtar 07.04.2026
Эта мне ментальная установка, что вот прямо сейчас, мол, мне для полного счастья не хватает (нужное вписать), и когда я этого достигну - тогда и полный кайф. Одна из самых сильных ловушек на пути. . . .
Использование значений реквизитов справочника в документе, с определенными условиями и правами
Maks 07.04.2026
1. Контроль срока действия договора Алгоритм из решения ниже реализован на примере нетипового документа "ЗаявкаНаРаботу", разработанного в конфигурации КА2. Задача: уведомлять пользователя, если. . .
Доступность команды формы по условию
Maks 07.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: сделать доступной кнопку (команда формы "ЗавершитьСписание") при. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru