mingw (разработка из под Linux для виндовс)

Модератор: Модераторы разделов

Аватара пользователя
ormorph
Сообщения: 3191
ОС: Gentoo

mingw

Сообщение ormorph »

всем привет!
Такая проблема решил собрать mingw среду для разработки прог для windows под linux.
Использовал для этого готовые пакеты mingw-runtime-3.14 и mingw-w32api-3.11,
а так-же исходники gcc-3.3.6 и binutils-2.15 даю команду для сборки:
i386-mingw32-g++ -o test.exe test.cpp -L"/opt/minigw/i386-mingw32/lib" -mwindows
все собралось нормально и в винде запустилось, только код выходной,
как мне кажется большеват, в смысле больше собранного под прогой Dev-C++,
которая тоже основанна на mingw.
Пробовал собирать на основе заголовочников и библиотек из Dev-C++ эфект тот-же самый,
собралось нормально но код большеват, от binutils разницы небыло, под gcc-4.0 код вооще был
в три раза больше.
при просмотре в hex редакторе выходного кода видно что записано много лишнего
например там прописаны пути к каталогу в котором gcc компилировался и еще пути
к библиотеками с которыми он линковался, при этом асемблерный код выдаваемый
мною собранным gcc в полтора раза короче, а файл длинее.
Проверил собрал gcc в корневом каталоге соответственно пути линковки сократились
удалось уменьшить выходной файл на 1.5 kb

Вопрос: кто нибудь знает как собрать gcc чтобы он не вписывал в выходной файл информацию
о линковке, на винде все равно эти пути ненужны.
Собирал так:

./configure --target=i386-mingw32 --prefix=/opt/minigw --enable-languages=c,c++
make
make install
соответственно заголовочники и библиотеки с которыми линковался находились в
/opt/minigw/i386-mingw32
искал инфу по этому делу так и не нашел.
Спасибо сказали:
d_n_k
Сообщения: 636
ОС: Gentoo GNU/Linux

Re: mingw

Сообщение d_n_k »

может быть поможет http://www.mingw.org/mingwfaq.shtml#faq-cpp-size
все сказанное есть имхо...
Спасибо сказали:
sergio
Сообщения: 436
Статус: Интересующийся новичок
ОС: Debian GNU/Linux 4 & 5

Re: mingw

Сообщение sergio »

strip сделайте.
Ключ -s для gcc
размер будет заметно больше линуксового, поскольку libstdс++.dll у вас в виндозе/систем не лежит...
Debian GNU/Linux 4 -- AMD Athlon64 3000+ / Asus 7600GS -- Gnome
Debian GNU/Linux 5 -- Dell (Vostro) 500 (Celeron M560 / iGM965) -- Gnome
Спасибо сказали:
Аватара пользователя
ormorph
Сообщения: 3191
ОС: Gentoo

Re: mingw

Сообщение ormorph »

sergio : Спасибо за совет с ключиком -s файл получился в 4 раза меньше чем скомпилированный в Dev-C++
все пути линковки с линуксовыми библиотеками исчезли, под виндой и под wine запустился нормально.
Так что выигрыш в размере файла получился.
Спасибо сказали:
Аватара пользователя
ormorph
Сообщения: 3191
ОС: Gentoo

Re: mingw

Сообщение ormorph »

проверил файл скомпилированный Dev-C++
$ strip test.exe
файл получился в полтора раза больше того что компилился мною собранным gcc
с ключиком -s
т.е. пропорционально длине асемблерного кода.
всем спасибо!
Спасибо сказали: