Re: Крос компиляция дл я M$

2003-04-21 Пенетрантность Andrey Kiselev
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



Re: Крос компиляция дл я M$

2003-04-19 Пенетрантность Andrey Kiselev
On Fri, Apr 18, 2003 at 11:09:37PM +0400, Victor B. Wagner wrote:
  ./configure --build=i686-pc-linux --host=i586-mingw32msvc --disable-nls
 
 Да, про возможность отрубить nls при конфигурировании я и не подумал.

Да я думаю, что можно и с NLS, только там тоже немного поработать надо.
Или обновить приложенный libintl, может быть его таки довели до ума.

-- 
Andrey V. Kiselev
Home phone:  +7 812 5274898  ICQ# 26871517



Re: Крос компиляция дл я M$

2003-04-18 Пенетрантность Andrey Kiselev
On Fri, Apr 18, 2003 at 12:57:05AM +0400, Victor B. Wagner wrote:
   i586-mingw32msvc-gcc -o hello.exe hello.c
  А как собрать что-нибудь более сложное, чем hello.c? (да и hello.c с ним не 
  идет :-(
 
 Это какой  hello.c? Гнутый и или из Кернигана и Ритчи? Второй - идет.
 Первый и не должен, это тебе не cygwin.

Ну почему же, первый тоже собирается с 

./configure --build=i686-pc-linux --host=i586-mingw32msvc --disable-nls

после совсем небольшой доработки напильником кода в hello.c. Они его
просто ни разу не пробовали так собирать, иначе бы наверняка
компилировался из коробки.


-- 
Andrey V. Kiselev
Home phone:  +7 812 5274898  ICQ# 26871517



Re: Крос компиляция дл я M$

2003-04-18 Пенетрантность Alexander Danilov
On Thu, 17 Apr 2003 21:24:33 +0600
Dimitry N. Naldaev [EMAIL PROTECTED] wrote:

 В сообщении от 17 Апрель 2003 19:36 Alexander Danilov написал:
  On Thu, 17 Apr 2003 18:19:10 +0600
 
  
   PS есть порт gcc под дос, называется djgpp. а можно его тоже как-то
   кросом с линуска пускать? может кто знает рецепт...
 
  это надо патчи брать для djpp, накладывать на gcc и собирать, где-то в
  инете есть cross-compiler-howto(или как-то так)
 
 не получилось у меня найти таое howto :-( где его искать?
 

искать в google.com по словам


cygwin-cross-howto cross-faq


-- 
Alexander Danilov
UIN: 164825399

* Origin: If you can't do it in Perl, you don't want to do it.



Re: Крос компиляция дл я M$

2003-04-18 Пенетрантность Vasiliy 'Druid' Misharev
On Thu, Apr 17, 2003 at 06:19:10PM +0600, Dimitry N. Naldaev wrote:

  apt-get install mingw32
 
 Спасибо, Вот только там доки совсем нету :-(
 
  i586-mingw32msvc-gcc -o hello.exe hello.c
 А как собрать что-нибудь более сложное, чем hello.c? (да и hello.c с ним не 
 идет :-(
  у меня например есть исходники второго квака, да только makefile там идет 
 только для linux'а а для а для мастдаевского VC там 
 .dsp и .dsw файлы идут...
 
 а как и на чем можно ГУЙ делать? а то виндовым ю-зверям ведь всякие менюшки 
 нужны (и так далее)...

идешь на гугл, ищещь гнездо mingw32 и подписываешься на их мэйллист. да
и дока там, помнится, какая-то была...

-- 
A: No
Q: Should I quote below my post?

Good luck!  /AKA Druid



Re: Крос компиляция дл я M$

2003-04-18 Пенетрантность Victor B. Wagner
On 2003.04.18 at 11:08:07 +0400, Andrey Kiselev wrote:

 On Fri, Apr 18, 2003 at 12:57:05AM +0400, Victor B. Wagner wrote:
i586-mingw32msvc-gcc -o hello.exe hello.c
   А как собрать что-нибудь более сложное, чем hello.c? (да и hello.c с ним 
   не 
   идет :-(
  
  Это какой  hello.c? Гнутый и или из Кернигана и Ритчи? Второй - идет.
  Первый и не должен, это тебе не cygwin.
 
 Ну почему же, первый тоже собирается с 
 
 ./configure --build=i686-pc-linux --host=i586-mingw32msvc --disable-nls

Да, про возможность отрубить nls при конфигурировании я и не подумал.



Re: Крос компиляция дл я M$

2003-04-17 Пенетрантность Alexander Danilov
On Thu, 17 Apr 2003 18:19:10 +0600
Dimitry N. Naldaev [EMAIL PROTECTED] wrote:


Народ хочет PE executable с расширением EXE, народ получит PE
executable. А делать его будет gcc под Linux-ом.
  
   а можно попдробнее?
   может ссылочки какие кинешь, что почитать, где взять...
   а если будут .deb пакетики --- то вообще зашибись :-)
   глядишь одной проблемой будет меньше :-)
 
  apt-get install mingw32
 
 Спасибо, Вот только там доки совсем нету :-(
 
  i586-mingw32msvc-gcc -o hello.exe hello.c
 А как собрать что-нибудь более сложное, чем hello.c? (да и hello.c с ним не 
 идет :-(

я как-то fox собирал для ruby, работает глюков не заметил

  у меня например есть исходники второго квака, да только makefile там идет 
 только для linux'а а для а для мастдаевского VC там 
 .dsp и .dsw файлы идут...

так наверно линуксовым пользоваться makefile'ом надо, только имя компилятора
исправить

 
 а как и на чем можно ГУЙ делать? а то виндовым ю-зверям ведь всякие менюшки 
 нужны (и так далее)...

Tcl/Tk для этого дела очень хорошо подходит, в особенности если разобраться
что есть starkit и как его использовать

 
 и как в этом случае отлаживать? а то отдавать заказчику прогу, которая
 ниразу живой Винды с ее глюками не вилела как-то боязно :-)))
 
 PS есть порт gcc под дос, называется djgpp. а можно его тоже как-то кросом
 с линуска пускать? может кто знает рецепт...

это надо патчи брать для djpp, накладывать на gcc и собирать, где-то в инете
есть cross-compiler-howto(или как-то так)


-- 
Alexander Danilov
UIN: 164825399

* Origin: If you can't do it in Perl, you don't want to do it.



Re: Крос компиляция дл я M$

2003-04-17 Пенетрантность Иван Лох
On Thu, Apr 17, 2003 at 07:42:41PM +0600, Dimitry N. Naldaev wrote:
 В сообщении от 17 Апрель 2003 18:38 Иван Лох написал:
  On Thu, Apr 17, 2003 at 06:19:10PM +0600, Dimitry N. Naldaev wrote:
   а как и на чем можно ГУЙ делать? а то виндовым ю-зверям ведь всякие
   менюшки нужны (и так далее)...
 
  На gtk, qt2... на одной из десятка кроссплатформенных библиотек.
 а их нужно заново пересобирать или то что уже стоит у меня в системе 
 покатит???

Нужно.  

-- 
Иван Лох



Re: Крос компиляция дл я M$

2003-04-17 Пенетрантность Victor B. Wagner
On 2003.04.17 at 18:19:10 +0600, Dimitry N. Naldaev wrote:

   глядишь одной проблемой будет меньше :-)
 
  apt-get install mingw32
 
 Спасибо, Вот только там доки совсем нету :-(

Ну так кто же учится программированию по докам к компилятору.
Книжки читать надо.


  i586-mingw32msvc-gcc -o hello.exe hello.c
 А как собрать что-нибудь более сложное, чем hello.c? (да и hello.c с ним не 
 идет :-(

Это какой  hello.c? Гнутый и или из Кернигана и Ритчи? Второй - идет.
Первый и не должен, это тебе не cygwin.

 а как и на чем можно ГУЙ делать? а то виндовым ю-зверям ведь всякие менюшки 
 нужны (и так далее)...

Много на чем. Я на Tcl/Tk делаю. В смысле, беру C-шную библиотеку,
приделываю к ней более высокоуровневые ручки  и дальше пишу программы
на Tcl с использованием этих ручек.

Можно на fltk. Не знаю, правда, как у него с готовыми Makefile для
mingw32, но должны быть. 


 и как в этом случае отлаживать? а то отдавать заказчику прогу, которая ниразу 
 живой Винды с ее глюками не вилела как-то боязно :-)))

Тестами. Кстати, тесты я иногда под wine пускаю. Когда лень vmware
поднимать.

 PS есть порт gcc под дос, называется djgpp. а можно его тоже как-то кросом 
 с 
 линуска пускать? может кто знает рецепт...

Гугль знает. Где-то на сайте delorie он мне нашел перловый скриптик,
который собирал djgpp под Debian. Но к сожалению, он был рассчитан
на 3.1 gcc, с 3.2 так просто не получилось. То есть пакеты-то я собрал,
но в них C работает, а C++ - нет.
Сегодня вот не успел переделать по делориевской хаутушке. Может завтра
доделаю. Tcl и даже Ck к нему (консольный аналог Tk) у меня этим
собрался и работает, а вот с плюсами пока проблемы. Конструкторы у
статических членов класса не вызываются.

Но хочу заметить, что djgpp это не настоящий dos, а DPMI32. 



 
 -- 
 To UNSUBSCRIBE, email to [EMAIL PROTECTED]
 with a subject of unsubscribe. Trouble? Contact [EMAIL PROTECTED]