компиляция linux программы из под windows

Тема в разделе "WASM.BEGINNERS", создана пользователем FreeX, 23 дек 2009.

  1. FreeX

    FreeX New Member

    Публикаций:
    0
    Регистрация:
    19 май 2009
    Сообщения:
    13
    В общем задача следующая.
    Есть windows машина и исходный код Linux-проекта с make-файлом. Нужно собрать этот проект из под винды, чтобы потом запускать на линукс-машине (формат файла нужен ELF).
    Чем можно воспользоваться?
     
  2. wasm_test

    wasm_test wasm test user

    Публикаций:
    0
    Регистрация:
    24 ноя 2006
    Сообщения:
    5.582
    FreeX
    Линуксом. :)
     
  3. featurelles

    featurelles New Member

    Публикаций:
    0
    Регистрация:
    29 мар 2009
    Сообщения:
    562
    Как ни странно, но Great прав.
     
  4. s0larian

    s0larian New Member

    Публикаций:
    0
    Регистрация:
    15 июл 2004
    Сообщения:
    489
    Адрес:
    Крыжёпполь
    FreeX, можешь поднять binutils и gcc suite - получишь cross-compiler. На windows host, для linux target.
     
  5. cupuyc

    cupuyc New Member

    Публикаций:
    0
    Регистрация:
    2 апр 2009
    Сообщения:
    763
    MinGW
     
  6. SadKo

    SadKo Владимир Садовников

    Публикаций:
    8
    Регистрация:
    4 июн 2007
    Сообщения:
    1.610
    Адрес:
    г. Санкт-Петербург
    MinGW не подойдёт, нужен Cygwin скорее
     
  7. valterg

    valterg Active Member

    Публикаций:
    0
    Регистрация:
    19 авг 2004
    Сообщения:
    2.105
    И MinGW и Cygwin - это порт Линукса под Винды. Нет там target=elf. Там задача портировать из исходников. Для создания elf нужны кросс-средства. Наверняка они есть, хотя проще под виртуалкой. Они сейчас и фришные есть. Просто путь через кросс-средства это способ нажить кучу проблем. Я понимаю для АРМ и МИПС - там на реальном железе тяжко компилить, но на X86 - маразм.
     
  8. Mika0x65

    Mika0x65 New Member

    Публикаций:
    0
    Регистрация:
    30 июл 2005
    Сообщения:
    1.384
    Я делал так: http://wiki.osdev.org/GCC_Cross-Compiler в Cygwin в Windows, получал ELF'ы. Но не факт, что все пройдет гладко.
     
  9. FreeX

    FreeX New Member

    Публикаций:
    0
    Регистрация:
    19 май 2009
    Сообщения:
    13
    ясн. спасибо всем.
    в общем, в данном случае самый оптимальный выход - поднимать линукс-систему и не знать проблем))

    А если у меня код кроссплатформенный, и хочется сразу собирать и под винду, и под линукс, и не перетаскивать исходники с виндус машины на линукс (можно конечно примаунтить в линуксе виндус шару или что-то похожее, но это тоже не вариант)
    какие сейчас cross-compiler популярны?

    PS. Сейчас проект написан под линукс, но собираемся портировать под винду тоже, и поэтому нужно поднять какую-то кроссплатформенную build-систему, под виндой =)
     
  10. FreeX

    FreeX New Member

    Публикаций:
    0
    Регистрация:
    19 май 2009
    Сообщения:
    13
    Mika0x65 спс, почитаю
    Еще слышал про Open Watcom..
    про какие компиляторы еще стоит почитать?
     
  11. valterg

    valterg Active Member

    Публикаций:
    0
    Регистрация:
    19 авг 2004
    Сообщения:
    2.105
    Вот именно для этого и делаются Cygwin и MinGW. В них достаточно все вылизано... Но не получится использовать специфические Линукс функции типа fork и т.п.
    Для ленивых есть готовые варианты оболочек : командная строка - MSYS и GUI - DevCPP
    Cygwin неудобен тем, что придется таскать DLL . MinGW требует msvcrt.dll и стандартные DLL Винды.
    И Cygwin и MinGW теперь ставятся через маленькую утилиту, т.к. полный дистр. огромный и никому не нужен. С утилитой от Cygwin мне не удалось разобраться, с mingw тоже "темный лес", но вроде скачал. Пока остановился на DevCPP - есть протабельный вариант.
     
  12. valterg

    valterg Active Member

    Публикаций:
    0
    Регистрация:
    19 авг 2004
    Сообщения:
    2.105
    *портабельный