Re: Крос компиляция для M$
On Mon, Apr 21, 2003 at 11:36:30AM +0600, Dimitry N. Naldaev wrote:
>> Ну почему же, первый тоже собирается с
>>
>> ./configure --build=i686-pc-linux --host=i586-mingw32msvc --disable-nls
>>
> $cd hello-1.3
>$./configure --build=i686-pc-linux --host=i586-mingw32msvc --disable-nls
> $make
>
> все прекрасно собирается даже без варнингов, НО на выходе получается
> ELF-бинари!!! который прекрасно запускаеся на моем linux'е без всяких
> эмуляторов :-(
Скорее всего, устаревший configure. У меня hello-2.1.1, там это
работает.
> после этого открываю в редакторе Makefile и исправляю строчку
>
> CC = gcc
>
> на строчку
>
> CC = i586-mingw32msvc-gcc
>
> (что в общем случае неправильно...)
Да нет, это тоже правильно, только делать надо так:
$ CC=i586-mingw32msvc-gcc ./configure
$ make
Получишь тот же результат. Хотя в общем случае тут может быть несколько
более сложный механизм, если автор закладывался на кросс-компиляцию и
предусмотрел специальную обработку таких флучаев в автоконфигураторе.
> но теперь компилер уже ругается:
>
> hello.c:26: pwd.h: No such file or directory
> make: *** [hello.o] ОШИБКА 1
>
> что я делаю неправильно?
Ты неправильно квотишь! Мое оригинальное сообщение звучало так:
>> Ну почему же, первый тоже собирается с
>> ./configure --build=i686-pc-linux --host=i586-mingw32msvc --disable-nls
>> после совсем небольшой доработки напильником кода в hello.c.
^^^^^^^^^^^^^^^^^^^^^
Доработка заключается в применеии скобок #ifndef WIN32 на getpwuid() и
замене его на ЧтоТамИспользуютВВинде().
--
Andrey V. Kiselev
Home phone: +7 812 5274898 ICQ# 26871517
Reply to: