Системный софт, сервисы и утилиты под BSD/UNIX: демоны, вспомогательные службы, админские инструменты.
Модераторы: alexco, GRooVE
Правила форума
Убедительная просьба юзать теги [code] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
-
schmel
- рядовой
- Сообщения: 46
- Зарегистрирован: 2010-02-28 22:28:09
Непрочитанное сообщение
schmel » 2012-02-12 23:55:54
Есть исходники одной проги, которой нет в портах. Из сырцов устанавливается довольно тривиально:
./configure --enable-shared
./gmake opt
./gmake install
как мне эти три команды в Makefile отразить?
Код: Выделить всё
# New ports collection makefile for: root
# Date created: 10 Feb 2012
# Whom: BLA BLA BLA <amdmi3@example.org>
#
# $FreeBSD$
#
PORTNAME= h323plus
PORTVERSION= 12.02.09
CATEGORIES= net
MASTER_SITES= http://openmcu.ru/public/Freebsd_i386/port/
DISTNAME= ${PORTNAME}-${PORTVERSION}
MAINTAINER= amdmi3@example.org
COMMENT= Empty comment
GNU_CONFIGURE= yes
USE_GMAKE= yes
CONFIGURE_ENV= LDFLAGS="-L${LOCALBASE}/lib" CPPFLAGS="-I${LOCALBASE}/include"
CONFIGURE_ARGS=--enable-shared
WRKSRC= ${WRKDIR}/${PORTNAME}
.include <bsd.port.mk>
Данная связка выдает такую ошибку:
Код: Выделить всё
Created dependencies.
gmake -C src optdepend
gmake[1]: Entering directory `/usr/ports/net/openh323/work/h323plus/src'
c++ -D_REENTRANT -fno-exceptions -Wall -DNDEBUG -DPTRACING -I/usr/local/include/openh323 -I/usr/local/share/ptlib/include -M h225_1.cxx >> /usr/local/lib/obj_FreeBSD_x86_r/h225_1.dep
h225_1.cxx:12:18: error: h225.h: No such file or directory
gmake[1]: *** [/usr/local/lib/obj_FreeBSD_x86_r/h225_1.dep] Error 1
gmake[1]: *** Deleting file `/usr/local/lib/obj_FreeBSD_x86_r/h225_1.dep'
gmake[1]: Leaving directory `/usr/ports/net/openh323/work/h323plus/src'
gmake: *** [optdepend] Error 2
*** Error code 1
Stop in /usr/ports/net/openh323.
Кстати - это сильно модифицированный openh323, который есть в портах, но тамошний makefile не подойдет, пришлось самому писать...
schmel
-
Хостинг HostFood.ru
-
Хостинг HostFood.ru
Тарифы на хостинг в России, от 12 рублей:
https://www.host-food.ru/tariffs/hosting/
Тарифы на виртуальные сервера (VPS/VDS/KVM) в РФ, от 189 руб.:
https://www.host-food.ru/tariffs/virtualny-server-vps/
Выделенные сервера, Россия, Москва, от 2000 рублей (HP Proliant G5, Intel Xeon E5430 (2.66GHz, Quad-Core, 12Mb), 8Gb RAM, 2x300Gb SAS HDD, P400i, 512Mb, BBU):
https://www.host-food.ru/tariffs/vydelennyi-server-ds/
Недорогие домены в популярных зонах:
https://www.host-food.ru/domains/
-
Alex Keda
- стреляли...
- Сообщения: 35503
- Зарегистрирован: 2004-10-18 14:25:19
- Откуда: Made in USSR
-
Контактная информация:
Непрочитанное сообщение
Alex Keda » 2012-02-13 19:57:15
USE_GMAKE чтоли ...
Убей их всех! Бог потом рассортирует...
Alex Keda
-
schmel
- рядовой
- Сообщения: 46
- Зарегистрирован: 2010-02-28 22:28:09
Непрочитанное сообщение
schmel » 2012-02-13 20:49:06
USE_GMAKE= yes
Да вроде прописывал. Кстати эта команда эквивалентна gmake opt, или просто gmake?
Если судить по ошибке
Он почему-то не правильном месте ищет заголовочные файлы. Хотя вручную собирается нормально. И почуму-то создает obj в системных либах
Код: Выделить всё
/usr/local/lib/obj_FreeBSD_x86_r/h225_1.dep
Хотя, вручную все норм...
schmel
-
schmel
- рядовой
- Сообщения: 46
- Зарегистрирован: 2010-02-28 22:28:09
Непрочитанное сообщение
schmel » 2012-02-14 8:26:19
Уже перечитал handbook по портам. Пошел анализировать Makefile из
Код: Выделить всё
Entering directory `/usr/ports/net/openh323/work/h323plus/src'
и выяснил, что если указать buildtime="YES", то будет собираться в lib с исходниками, если не указывать, то в системных либах. Ну и добавив команду ALL_TARGET=opt - собралось

Еще один момент - допустим в папке works/h323plus есть еще вложеная папка с плагинами (plugins) - собирается также:
Как можно прописать в Makefile порта, чтоб он сначала собирался в основной папке, а потом переходил в другую папку и собирал там?
schmel