Пишу прогу под никсами..
Компилирую
gcc -o proga proga.c
Знаю, что как-то можно писать и компилировать для винды. вопрос в том как?
Т.е. я добавлю в код ифы
#ifdef (какой-то типа WIN32)
#else
для никсов как-то
#endif
и как компилировать тогда для винды....??
Так вобще можно или я неправ?
cross-platform coding
Модератор: Модераторы разделов
-
- Сообщения: 161
- ОС: FreeBSD
cross-platform coding
-= FreeBSD 7.2/6.4-STABLE =-
-
- Сообщения: 1073
- Статус: столлманист
- ОС: Debian GNU/Linux
Re: cross-platform coding
Правильно, ифдефами подставляете нужный код, а для определение константы есть специальная опция у всех компиляторов.
Посмотрите в мане.
Посмотрите в мане.
"И может собственных Платонов и быстрых разумом Невтонов российская земля рождать."
М. В. Ломоносов
М. В. Ломоносов
-
- Сообщения: 161
- ОС: FreeBSD
Re: cross-platform coding
А как компилить чтобы получился exe'шник который будет спокойно запускаться на Windows XP sp2?
man gcc?
-= FreeBSD 7.2/6.4-STABLE =-
-
- Сообщения: 402
- Статус: Красноглазик со стажем
- ОС: Mavericks
Re: cross-platform coding
Нет, google MinGW
-
- Сообщения: 161
- ОС: FreeBSD
Re: cross-platform coding
А его ставить отдельно надо(
это еинственный вариант? штатными средствами никак?
это еинственный вариант? штатными средствами никак?
-= FreeBSD 7.2/6.4-STABLE =-
-
- Сообщения: 161
- ОС: FreeBSD
Re: cross-platform coding
Вопрос снимается
Тупо поставил
/usr/ports/devel/mingw32-gcc
и при помощи него компилю
в коде делаю блоки
#ifdef WIN32
а вот размер экзешника не очень большой? Аж пол метра!
Я его upx сжимаю. Получатся 150-200 кило. Меньше никак?
Вон если под винде писать, то там в MSVC 50 кило весит
Тупо поставил
/usr/ports/devel/mingw32-gcc
и при помощи него компилю
в коде делаю блоки
#ifdef WIN32
а вот размер экзешника не очень большой? Аж пол метра!
Я его upx сжимаю. Получатся 150-200 кило. Меньше никак?
Вон если под винде писать, то там в MSVC 50 кило весит
-= FreeBSD 7.2/6.4-STABLE =-
-
- Сообщения: 30
Re: cross-platform coding
Попробуй еще сделать strip для бинарника.
Код: Выделить всё
strip -g <file>
-
- Сообщения: 161
- ОС: FreeBSD
Re: cross-platform coding
netguard писал(а): ↑31.01.2008 12:51Попробуй еще сделать strip для бинарника.
Код: Выделить всё
strip -g <file>
Так он же не будет работать с виндовским exe'шником.
Я потому и сжимаю upx'ом, потому что он поддерживает WinPE
-= FreeBSD 7.2/6.4-STABLE =-
-
- Бывший модератор
- Сообщения: 8259
- Статус: Маньяк
- ОС: Arch, Fedora, Ubuntu
-
- Сообщения: 161
- ОС: FreeBSD
Re: cross-platform coding
а) простите, ступил)
спасибо огромное) Сжал до 17 кило) а юпик теперь только до 15 может) круто)
спасибо огромное) Сжал до 17 кило) а юпик теперь только до 15 может) круто)
-= FreeBSD 7.2/6.4-STABLE =-
-
- Бывший модератор
- Сообщения: 8259
- Статус: Маньяк
- ОС: Arch, Fedora, Ubuntu
-
- Сообщения: 161
- ОС: FreeBSD
Re: cross-platform coding
Да собственно еи и пользоваться теперь не надо...2 килобайта того не стоят)
-= FreeBSD 7.2/6.4-STABLE =-