The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

форумы  помощь  поиск  регистрация  майллист  ВХОД  слежка  RSS
"Dovecot из порта не могу поставить... :("
Вариант для распечатки  
Пред. тема | След. тема 
Форумы OpenNET: Виртуальная конференция (Public)
Изначальное сообщение [Проследить за развитием треда]

"Dovecot из порта не могу поставить... :("  
Сообщение от SHRDLU email(ok) on 01-Мрт-06, 09:58 
Система FreeBSD 6.0 Решил посмотреть на Dovecot, скачал свежий порт, делаю make install - и вот такая картина:

===>  Vulnerability check disabled, database not found
===>  Found saved configuration for dovecot-1.0.b3
===>  Extracting for dovecot-1.0.b3
=> Checksum OK for dovecot-1.0.beta3.tar.gz.
===>  Patching for dovecot-1.0.b3
===>  Applying FreeBSD patches for dovecot-1.0.b3
===>   dovecot-1.0.b3 depends on shared library: iconv.3 - found
===>   dovecot-1.0.b3 depends on shared library: pq.4 - found
===>  Configuring for dovecot-1.0.b3
checking for a BSD-compatible install... /usr/bin/install -c -o root -g wheel
checking whether build environment is sane... yes

...

config.status: executing depfiles commands

Install prefix ...................... : /usr/local
File offsets ........................ : 64bit
I/O loop method ..................... : kqueue
File change notification method ..... : kqueue
Building with SSL support ........... : yes (OpenSSL)
Building with IPv6 support .......... : yes
Building with pop3 server ........... : yes
Building with GSSAPI support ........ : no
Building with user database modules . : static prefetch passwd passwd-file checkpassword sql (modules)
Building with password lookup modules : static prefetch passwd passwd-file checkpassword sql (modules)
===>  Building for dovecot-1.0.b3

...

cc -shared  .libs/istream-zlib.o .libs/zlib-plugin.o  -L/usr/local/lib -lz  -Wl,-soname -Wl,lib01_zlib_plugin.so -o .libs/lib01_zlib_plugin.so
ar cru .libs/lib01_zlib_plugin.a  istream-zlib.o zlib-plugin.o
ranlib .libs/lib01_zlib_plugin.a
creating lib01_zlib_plugin.la
(cd .libs && rm -f lib01_zlib_plugin.la && ln -s ../lib01_zlib_plugin.la lib01_zlib_plugin.la)
Making all in doc
-e:No such file or directory
*** Error code 1

Stop in /usr/ports/mail/dovecot.

Если в /usr/ports/mail/dovecot/work/dovecot-1.0.beta3 руками запускаю ./configure;make - все проходит на ура.
Это бага или фича? Heeeelp!

Правка | Высказать мнение | Ответить | Cообщить модератору | Наверх

 Оглавление

Сообщения по теме [Сортировка по времени, UBB]


1. "Dovecot из порта не могу поставить... :("  
Сообщение от lavr email on 01-Мрт-06, 11:43 
>Система FreeBSD 6.0 Решил посмотреть на Dovecot, скачал свежий порт, делаю make
>install - и вот такая картина:
>
>===>  Vulnerability check disabled, database not found
>===>  Found saved configuration for dovecot-1.0.b3
>===>  Extracting for dovecot-1.0.b3
>=> Checksum OK for dovecot-1.0.beta3.tar.gz.
>===>  Patching for dovecot-1.0.b3
>===>  Applying FreeBSD patches for dovecot-1.0.b3
>===>   dovecot-1.0.b3 depends on shared library: iconv.3 - found
>===>   dovecot-1.0.b3 depends on shared library: pq.4 - found
>===>  Configuring for dovecot-1.0.b3
>checking for a BSD-compatible install... /usr/bin/install -c -o root -g wheel
>checking whether build environment is sane... yes
>
>...
>
>config.status: executing depfiles commands
>
>Install prefix ...................... : /usr/local
>File offsets ........................ : 64bit
>I/O loop method ..................... : kqueue
>File change notification method ..... : kqueue
>Building with SSL support ........... : yes (OpenSSL)
>Building with IPv6 support .......... : yes
>Building with pop3 server ........... : yes
>Building with GSSAPI support ........ : no
>Building with user database modules . : static prefetch passwd passwd-file checkpassword
>sql (modules)
>Building with password lookup modules : static prefetch passwd passwd-file checkpassword sql
>(modules)
>===>  Building for dovecot-1.0.b3
>
>...
>
>cc -shared  .libs/istream-zlib.o .libs/zlib-plugin.o  -L/usr/local/lib -lz  -Wl,-soname -Wl,lib01_zlib_plugin.so -o
>.libs/lib01_zlib_plugin.so
>ar cru .libs/lib01_zlib_plugin.a  istream-zlib.o zlib-plugin.o
>ranlib .libs/lib01_zlib_plugin.a
>creating lib01_zlib_plugin.la
>(cd .libs && rm -f lib01_zlib_plugin.la && ln -s ../lib01_zlib_plugin.la lib01_zlib_plugin.la)
>Making all in doc
>-e:No such file or directory
^^^ - где-то опции неверно указаны, возможно проблемы с путями,
возможно проблемы со средой и тд и тп

Порты ВСЕ время в развитии. Какая проблема зайти в директорию doc
и посмотреть Makefile и найти в чем ошибка, после чего сделать patch
и положить в директорию files, после чего:

make deinstall
make install

???

>*** Error code 1
>
>Stop in /usr/ports/mail/dovecot.
>
>Если в /usr/ports/mail/dovecot/work/dovecot-1.0.beta3 руками запускаю ./configure;make - все проходит на ура.
>Это бага или фича? Heeeelp!

Скорей всего проблемы environment, path из которых вы собираете порты,
хотя и порт мог быть только что неудачно изменен

Правка | Высказать мнение | Ответить | Cообщить модератору | Наверх

2. "Dovecot из порта не могу поставить... :("  
Сообщение от SHRDLU email(??) on 01-Мрт-06, 12:05 
>Порты ВСЕ время в развитии. Какая проблема зайти в директорию doc
>и посмотреть Makefile и найти в чем ошибка, после чего сделать patch

Да я там уже рылся... не смог понять, в чем дело, вот и решил совета спросить. Ладно, спасибо, погляжу еще.

Правка | Высказать мнение | Ответить | Cообщить модератору | Наверх

3. "Dovecot из порта не могу поставить... :("  
Сообщение от lavr email on 01-Мрт-06, 13:44 
>>Порты ВСЕ время в развитии. Какая проблема зайти в директорию doc
>>и посмотреть Makefile и найти в чем ошибка, после чего сделать patch
>
>Да я там уже рылся... не смог понять, в чем дело, вот
>и решил совета спросить. Ладно, спасибо, погляжу еще.

делов на ДВЕ копейки:

[alone]/mnt/pub/ftp/ports/mail/dovecot > make
...
Making all in doc
-e:No such file or directory
*** Error code 1

Stop in /mnt/pub/ftp/ports/mail/dovecot.
[alone]/mnt/pub/ftp/ports/mail/dovecot >

смотрим внимательно:

[alone]/mnt/pub/ftp/ports/mail/dovecot > make -n
...
(cd /mnt/pub/ftp/ports/mail/dovecot/work/dovecot-1.0.beta3; /usr/bin/env SHELL=/bin/sh PORTOBJFORMAT=elf NO_LINT=YES    PREFIX=/usr/local LOCALBASE=/usr/local X11BASE=/usr/X11R6 MOTIFLIB="-L/usr/X11R6/lib -lXm -lXp" LIBDIR="/usr/lib" CFLAGS="-O2 -fno-strict-aliasing -pipe " CXXFLAGS="-O2 -fno-strict-aliasing -pipe" MANPREFIX="/usr/local" BSD_INSTALL_PROGRAM="install  -s -o root -g wheel -m 555"  BSD_INSTALL_SCRIPT="install  -o root -g wheel -m 555"  BSD_INSTALL_DATA="install  -o root -g wheel -m 444"  BSD_INSTALL_MAN="install  -o root -g wheel -m 444" make -f Makefile  all)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^-
сборка завершилась Ok, ну а ниже НАШ: make all in doc:

-e 's,%%PREFIX%%,/usr/local,g'

/mnt/pub/ftp/ports/mail/dovecot/work/dovecot-1.0.beta3/dovecot-example.conf
if [ -f /mnt/pub/ftp/ports/mail/dovecot/scripts/post-build ]; then  cd /mnt/pub/ftp/ports/mail/dovecot && /usr/bin/env PORTOBJFORMAT=elf    BSD_INSTALL_PROGRAM="install  -s -o root -g wheel -m 555"  BSD_INSTALL_SCRIPT="install  -o root -g wheel -m 555"  BSD_INSTALL_DATA="install  -o root -g wheel -m 444"  BSD_INSTALL_MAN="install  -o root -g wheel -m 444" CURDIR=/mnt/pub/ftp/ports/mail/dovecot DISTDIR=/usr/ports/distfiles  WRKDIR=/mnt/pub/ftp/ports/mail/dovecot/work WRKSRC=/mnt/pub/ftp/ports/mail/dovecot/work/dovecot-1.0.beta3 PATCHDIR=/mnt/pub/ftp/ports/mail/dovecot/files  SCRIPTDIR=/mnt/pub/ftp/ports/mail/dovecot/scripts FILESDIR=/mnt/pub/ftp/ports/mail/dovecot/files  PORTSDIR=/usr/ports DEPENDS=""  PREFIX=/usr/local LOCALBASE=/usr/local X11BASE=/usr/X11R6 /bin/sh  /mnt/pub/ftp/ports/mail/dovecot/scripts/post-build;  fi
/usr/bin/touch -f /mnt/pub/ftp/ports/mail/dovecot/work/.build_done.dovecot-1.0.b3._usr_local
[alone]/mnt/pub/ftp/ports/mail/dovecot >

итого: -e 's,%%PREFIX%%,/usr/local,g'
есть ничто иное как post-build из Makefile порта dovecot:

[alone]/mnt/pub/ftp/ports/mail/dovecot > less Makefile
...
...
## SQLite Support
#
.if defined(WITH_SQLITE)
USE_SQLITE=             3
CONFIGURE_ARGS+=        --with-sqlite
.endif

post-build:
        @${REINPLACE_CMD} -e 's,%%PREFIX%%,${PREFIX},g' \
                ${WRKSRC}/dovecot-example.conf
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^- вот он
наш кусок, понятно что REINPLACE_CMD НЕОПРЕДЕЛЕН.

pre-install:
        @${SETENV} ${SCRIPTS_ENV} ${SH} ${PKGINSTALL} ${PKGNAME} PRE-INSTALL
...
...

дальше просто, поиск REINPLACE_CMD в /usr/ports/Mk/*
имеем:

[alone]/mnt/pub/ftp/ports/mail/dovecot > less /usr/ports/Mk/bsd.port.mk
...
# Special macro for doing in-place file editing using regexps
.if defined(USE_REINPLACE)
REINPLACE_ARGS?=        -i.bak
REINPLACE_CMD?= ${SED} ${REINPLACE_ARGS}
.endif

если определена переменная USE_REINPLACE, выполняется то что выше,
а именно:
REINPLACE_CMD= /usr/bin/sed -i.bak

Итого, все что нужно сделать - добавить в /usr/ports/mail/dovecot/Makefile
строку:
...
...
USE_ICONV=      yes
USE_RC_SUBR=    dovecot.sh
#--lavr corrected dovecot Makefile
USE_REINPLACE=  yes

все:

[alone]/mnt/pub/ftp/ports/mail/dovecot > grep USE_REINPLACE Makefile
USE_REINPLACE=  yes
[alone]/mnt/pub/ftp/ports/mail/dovecot > make
===>  Building for dovecot-1.0.b3
make  all-recursive
Making all in src
Making all in lib
Making all in lib-dict
Making all in lib-sql
Making all in lib-ntlm
Making all in lib-settings
Making all in lib-charset
Making all in lib-mail
Making all in lib-imap
Making all in lib-index
Making all in lib-storage
Making all in index
Making all in maildir
Making all in mbox
Making all in dbox
Making all in subscription-file
Making all in register
make  all-am
Making all in lib-auth
Making all in auth
Making all in dict
Making all in master
Making all in login-common
Making all in imap-login
Making all in imap
Making all in pop3-login
Making all in pop3
Making all in util
Making all in plugins
Making all in convert
Making all in quota
Making all in imap-quota
Making all in trash
Making all in zlib
Making all in doc
[alone]/mnt/pub/ftp/ports/mail/dovecot >

Правка | Высказать мнение | Ответить | Cообщить модератору | Наверх

4. "Dovecot из порта не могу поставить... :("  
Сообщение от SHRDLU email(??) on 01-Мрт-06, 13:59 
>делов на ДВЕ копейки:

Эх, ничего себе :) это кому как :)

>Итого, все что нужно сделать - добавить в /usr/ports/mail/dovecot/

Огромное тебе спасибо! Твои выкладки распечатал, буду курить на ночь - на будущее.

Правка | Высказать мнение | Ответить | Cообщить модератору | Наверх

Архив | Удалить

Индекс форумов | Темы | Пред. тема | След. тема
Оцените тред (1=ужас, 5=супер)? [ 1 | 2 | 3 | 4 | 5 ] [Рекомендовать для помещения в FAQ]




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2025 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру