PMG http://forum.pmg.org.ru/ |
|
Сборка проектов под *nix http://forum.pmg.org.ru/viewtopic.php?f=4&t=3015 |
Страница 1 из 1 |
Автор: | eNrix [ 10 июн 2007 11:27 ] |
Заголовок сообщения: | Сборка проектов под *nix |
У меня возникла необходимость собрать проект под этой системой.. для начала попробовать собрать простые проекты как это сделать... если проект состоит из множества файлов... также он должен собирать в статическую или динамическую бибилиотеку(вроде .so) в зависимости от макроса в параметрах проекта Вроде есть какие-то мудренный файлы makefile - но может можно их генерировать как-то проще... |
Автор: | MagicWolf [ 13 июн 2007 12:50 ] |
Заголовок сообщения: | |
Насчет IDE под unix я не знаю, а так действительно через makefile. |
Автор: | R_Ambersky [ 30 июн 2007 01:22 ] |
Заголовок сообщения: | |
Сам мучился с make-файлами, но можно проще! Пишешь скрипт для http://www.cmake.org Утилита Cmake создаёт по этому скрипту make-файл и запускает его компиляцию... |
Автор: | MagicWolf [ 02 июл 2007 12:58 ] |
Заголовок сообщения: | |
А IDE на это дело нету по linux ? |
Автор: | wingman [ 14 авг 2007 01:28 ] |
Заголовок сообщения: | |
makefale можно создавать автоматически (так же, как скрипт configure и т.п.), см. в сторону программы "automake". В статическую (.o) или динамическую (.so) библиотеку проект компилируется только если ты сам ему это укажешь. Чтобы компилировать n-ное количество файлов в одном проекте, нужно каждый указывать в Makefile. |
Автор: | MagicWolf [ 14 авг 2007 10:45 ] |
Заголовок сообщения: | |
Все равно это все муторно. |
Автор: | wingman [ 14 авг 2007 11:27 ] |
Заголовок сообщения: | |
MagicWolf писал(а): Все равно это все муторно.
)) А для меня, например, глюки венды - муторно. О вкусах не спорят Может, кому пригодится - приведу простой пример Makefile: Код: TARGET=test
LIBS ="-lgl -lglu -lmysqlclient" CFLAGS = -O3 -Wall CC = g++ all: $(CC) $(CFLAGS) $(INCLUDE) -c test.cpp -o test.o $(CC) -o $(TARGET) test.o $(LIBS) clean: rm *.o rm $(TARGET) TARGET - имя бинарника на выходе LIBS - библиотеки, перед каждой ставится "-l". В данном случае библиотеки OpenGL и mysql. CFLAGS - доп. флаги для компилятора. В данном случае указали, что у нас 2 процессора и Wall - флаг оптимизации. CC - название компилятора. Теперь набираем "make all" и выполняется то, что в секции "all:", набираем "make clean" и выполняется подчистка. |
Страница 1 из 1 | Часовой пояс: UTC + 3 часа [ Летнее время ] |
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group http://www.phpbb.com/ |