hi
i downloaded dovecot-1.0.beta1.tar.gz, did a rpmbuild -ta dovecot-1.0.beta1.tar.gz (which uses the dovecot.spec from the tar.gz), and got the following:
Making install in quota
make[3]: Entering directory
/usr/src/gimre/rpm2/BUILD/dovecot-1.0.beta1/src/plugins/quota' make[4]: Entering directory
/usr/src/gimre/rpm2/BUILD/dovecot-1.0.beta1/src/plugins/quota'
mkdir -p -- /usr/lib/dovecot/imap /usr/lib/dovecot/lda
mkdir: cannot create directory /usr/lib/dovecot': Permission denied mkdir: cannot create directory
/usr/lib/dovecot': Permission denied
make[4]: *** [install-exec-local] Error 1
make[4]: Leaving directory
`/usr/src/gimre/rpm2/BUILD/dovecot-1.0.beta1/src/plugins/quota'
make[3]: *** [install-am] Error 2
so everything did compile alright, but it has some problems with installing the plugins. and i dunno why it tries to create those directories in the root directory. of course i'm compiling it as a non-root users, so it doesn't have any write permissions. and it normally shouldn't have to do an install in directories other then buildroot.
so what's the catch? if i disable from the src/Makefile.in to not compile the plugins, everything works fine, i got a nice rpm file. i'm on Fedora Core 4.
any help would be appreciated. thx.
Try adding:
--with-moduledir=/usr/lib/dovecot/modules
when calling configure. That fixed this for me.
It seems to me when need to fix the default value of moduledir to not confilict with the libdir (or libexecdir).
John
Imre Gergely wrote:
hi
i downloaded dovecot-1.0.beta1.tar.gz, did a rpmbuild -ta dovecot-1.0.beta1.tar.gz (which uses the dovecot.spec from the tar.gz), and got the following:
Making install in quota make[3]: Entering directory
/usr/src/gimre/rpm2/BUILD/dovecot-1.0.beta1/src/plugins/quota' make[4]: Entering directory
/usr/src/gimre/rpm2/BUILD/dovecot-1.0.beta1/src/plugins/quota' mkdir -p -- /usr/lib/dovecot/imap /usr/lib/dovecot/lda mkdir: cannot create directory/usr/lib/dovecot': Permission denied mkdir: cannot create directory
/usr/lib/dovecot': Permission denied make[4]: *** [install-exec-local] Error 1 make[4]: Leaving directory `/usr/src/gimre/rpm2/BUILD/dovecot-1.0.beta1/src/plugins/quota' make[3]: *** [install-am] Error 2so everything did compile alright, but it has some problems with installing the plugins. and i dunno why it tries to create those directories in the root directory. of course i'm compiling it as a non-root users, so it doesn't have any write permissions. and it normally shouldn't have to do an install in directories other then buildroot.
so what's the catch? if i disable from the src/Makefile.in to not compile the plugins, everything works fine, i got a nice rpm file. i'm on Fedora Core 4.
any help would be appreciated. thx.
the same happens, now with this directory:
Making install in quota
make[3]: Entering directory
/usr/src/gimre/rpm2/BUILD/dovecot-1.0.beta1/src/plugins/quota' make[4]: Entering directory
/usr/src/gimre/rpm2/BUILD/dovecot-1.0.beta1/src/plugins/quota'
mkdir -p -- /usr/lib/dovecot/modules/imap /usr/lib/dovecot/modules/lda
mkdir: cannot create directory /usr/lib/dovecot': Permission denied mkdir: cannot create directory
/usr/lib/dovecot': Permission denied
make[4]: *** [install-exec-local] Error 1
i think it has something to do with some DESTDIR variable. i don't know exactly, but take a look at this:
Making install in pop3
make[2]: Entering directory /usr/src/gimre/rpm2/BUILD/dovecot-1.0.beta1/src/pop3' make[3]: Entering directory
/usr/src/gimre/rpm2/BUILD/dovecot-1.0.beta1/src/pop3'
test -z "/var/tmp/root-dovecot-1.0.beta1/usr/libexec/dovecot" || mkdir -p --
"/var/tmp/root-dovecot-1.0.beta1/usr/libexec/dovecot"
/bin/sh ../../libtool --mode=install /usr/bin/install -c 'pop3'
'/var/tmp/root-dovecot-1.0.beta1/usr/libexec/dovecot/pop3'
/usr/bin/install -c pop3 /var/tmp/root-dovecot-1.0.beta1/usr/libexec/dovecot/pop3
make[3]: Nothing to be done for `install-data-am'.
it should install the plugins in /var/tmp/root-dovecot.../usr/lib/dovecot too. so builddir is /usr/src/gimre/rpm2/BUILD/dovecot-1.0.beta1 (rpmbuild creates this), and installdir (destdir) is in /var/tmp/root-dovecot-1.0.beta1, where make install should put all the files to be installed. i found this in the ChangeLog also:
2005-12-10 22:25 Timo Sirainen <tss@iki.fi>
* src/: lib-dict/Makefile.am, plugins/imap-quota/Makefile.am,
plugins/quota/Makefile.am, plugins/trash/Makefile.am: Added
missing header files. Fixed plugin install hooks to use DESTDIR.
somehow it doesn't work for me.
John Gray wrote:
Try adding:
--with-moduledir=/usr/lib/dovecot/modules
when calling configure. That fixed this for me.
It seems to me when need to fix the default value of moduledir to not confilict with the libdir (or libexecdir).
John
Imre Gergely wrote:
hi
i downloaded dovecot-1.0.beta1.tar.gz, did a rpmbuild -ta dovecot-1.0.beta1.tar.gz (which uses the dovecot.spec from the tar.gz), and got the following:
Making install in quota make[3]: Entering directory
/usr/src/gimre/rpm2/BUILD/dovecot-1.0.beta1/src/plugins/quota' make[4]: Entering directory
/usr/src/gimre/rpm2/BUILD/dovecot-1.0.beta1/src/plugins/quota' mkdir -p -- /usr/lib/dovecot/imap /usr/lib/dovecot/lda mkdir: cannot create directory/usr/lib/dovecot': Permission denied mkdir: cannot create directory
/usr/lib/dovecot': Permission denied make[4]: *** [install-exec-local] Error 1 make[4]: Leaving directory `/usr/src/gimre/rpm2/BUILD/dovecot-1.0.beta1/src/plugins/quota' make[3]: *** [install-am] Error 2so everything did compile alright, but it has some problems with installing the plugins. and i dunno why it tries to create those directories in the root directory. of course i'm compiling it as a non-root users, so it doesn't have any write permissions. and it normally shouldn't have to do an install in directories other then buildroot.
so what's the catch? if i disable from the src/Makefile.in to not compile the plugins, everything works fine, i got a nice rpm file. i'm on Fedora Core 4.
any help would be appreciated. thx.
-- Imre Gergely SysAdmin NOCS-CJ Astral Telecom S.A. Plugarilor 28, Cluj-Napoca http://www.astral.ro
I also run/compile Dovecot as a non-root user. What I think you want to do, instead of just moving the modules, is to provide a "--prefix" which will be the parent directory of bin, sbin, etc ... all the subdirectories where files will be installed.
My exact configure line is
./configure --prefix=/home/mario/tools/SunOS --with-gnu-ld=/_TOOLS_/dist/gnu-gcc-3.2.2-binutils-2.13.2.1/sparc-sun-solaris2.8/bin/ld --enable-shared --disable-nls --disable-ipv6 --enable-debug --without-vpopmail --without-pop3d
So all files get installed in my /home/mario/tools/SunOS tree. I then start dovecot with
/home/mario/tools/SunOS/sbin/dovecot
Mario
Imre Gergely wrote:
the same happens, now with this directory:
Making install in quota make[3]: Entering directory
/usr/src/gimre/rpm2/BUILD/dovecot-1.0.beta1/src/plugins/quota' make[4]: Entering directory
/usr/src/gimre/rpm2/BUILD/dovecot-1.0.beta1/src/plugins/quota' mkdir -p -- /usr/lib/dovecot/modules/imap /usr/lib/dovecot/modules/lda mkdir: cannot create directory/usr/lib/dovecot': Permission denied mkdir: cannot create directory
/usr/lib/dovecot': Permission denied make[4]: *** [install-exec-local] Error 1i think it has something to do with some DESTDIR variable. i don't know exactly, but take a look at this:
Making install in pop3 make[2]: Entering directory
/usr/src/gimre/rpm2/BUILD/dovecot-1.0.beta1/src/pop3' make[3]: Entering directory
/usr/src/gimre/rpm2/BUILD/dovecot-1.0.beta1/src/pop3' test -z "/var/tmp/root-dovecot-1.0.beta1/usr/libexec/dovecot" || mkdir -p -- "/var/tmp/root-dovecot-1.0.beta1/usr/libexec/dovecot" /bin/sh ../../libtool --mode=install /usr/bin/install -c 'pop3' '/var/tmp/root-dovecot-1.0.beta1/usr/libexec/dovecot/pop3' /usr/bin/install -c pop3 /var/tmp/root-dovecot-1.0.beta1/usr/libexec/dovecot/pop3 make[3]: Nothing to be done for `install-data-am'.it should install the plugins in /var/tmp/root-dovecot.../usr/lib/dovecot too. so builddir is /usr/src/gimre/rpm2/BUILD/dovecot-1.0.beta1 (rpmbuild creates this), and installdir (destdir) is in /var/tmp/root-dovecot-1.0.beta1, where make install should put all the files to be installed. i found this in the ChangeLog also:
2005-12-10 22:25 Timo Sirainen <tss@iki.fi>
* src/: lib-dict/Makefile.am, plugins/imap-quota/Makefile.am, plugins/quota/Makefile.am, plugins/trash/Makefile.am: Added missing header files. Fixed plugin install hooks to use DESTDIR.
somehow it doesn't work for me.
John Gray wrote:
Try adding:
--with-moduledir=/usr/lib/dovecot/modules
when calling configure. That fixed this for me.
It seems to me when need to fix the default value of moduledir to not confilict with the libdir (or libexecdir).
John
Imre Gergely wrote:
hi
i downloaded dovecot-1.0.beta1.tar.gz, did a rpmbuild -ta dovecot-1.0.beta1.tar.gz (which uses the dovecot.spec from the tar.gz), and got the following:
Making install in quota make[3]: Entering directory
/usr/src/gimre/rpm2/BUILD/dovecot-1.0.beta1/src/plugins/quota' make[4]: Entering directory
/usr/src/gimre/rpm2/BUILD/dovecot-1.0.beta1/src/plugins/quota' mkdir -p -- /usr/lib/dovecot/imap /usr/lib/dovecot/lda mkdir: cannot create directory/usr/lib/dovecot': Permission denied mkdir: cannot create directory
/usr/lib/dovecot': Permission denied make[4]: *** [install-exec-local] Error 1 make[4]: Leaving directory `/usr/src/gimre/rpm2/BUILD/dovecot-1.0.beta1/src/plugins/quota' make[3]: *** [install-am] Error 2so everything did compile alright, but it has some problems with installing the plugins. and i dunno why it tries to create those directories in the root directory. of course i'm compiling it as a non-root users, so it doesn't have any write permissions. and it normally shouldn't have to do an install in directories other then buildroot.
so what's the catch? if i disable from the src/Makefile.in to not compile the plugins, everything works fine, i got a nice rpm file. i'm on Fedora Core 4.
any help would be appreciated. thx.
nope, i don't want that. i know that you can install in some custom specified directory, but i want to install all in the default location. i mean i want to build a RPM file which in turn will install all in the default location.
i compiled it and installed it with make, make install, that worked fine (with --prefix too). i just want a RPM file, and i _don't_ want to build it as root.
that specfile included in the tar.gz looks fine, the problem is the plugins won't install in the temporary location, it wants to install it direct in the root directory, during the rpmbuild process, that's not so good :)
Mario Nigrovic-rvvk40 wrote:
I also run/compile Dovecot as a non-root user. What I think you want to do, instead of just moving the modules, is to provide a "--prefix" which will be the parent directory of bin, sbin, etc ... all the subdirectories where files will be installed.
My exact configure line is
./configure --prefix=/home/mario/tools/SunOS --with-gnu-ld=/_TOOLS_/dist/gnu-gcc-3.2.2-binutils-2.13.2.1/sparc-sun-solaris2.8/bin/ld --enable-shared --disable-nls --disable-ipv6 --enable-debug --without-vpopmail --without-pop3d
So all files get installed in my /home/mario/tools/SunOS tree. I then start dovecot with
/home/mario/tools/SunOS/sbin/dovecot
Mario
Imre Gergely wrote:
the same happens, now with this directory:
Making install in quota make[3]: Entering directory
/usr/src/gimre/rpm2/BUILD/dovecot-1.0.beta1/src/plugins/quota' make[4]: Entering directory
/usr/src/gimre/rpm2/BUILD/dovecot-1.0.beta1/src/plugins/quota' mkdir -p -- /usr/lib/dovecot/modules/imap /usr/lib/dovecot/modules/lda mkdir: cannot create directory/usr/lib/dovecot': Permission denied mkdir: cannot create directory
/usr/lib/dovecot': Permission denied make[4]: *** [install-exec-local] Error 1i think it has something to do with some DESTDIR variable. i don't know exactly, but take a look at this:
Making install in pop3 make[2]: Entering directory
/usr/src/gimre/rpm2/BUILD/dovecot-1.0.beta1/src/pop3' make[3]: Entering directory
/usr/src/gimre/rpm2/BUILD/dovecot-1.0.beta1/src/pop3' test -z "/var/tmp/root-dovecot-1.0.beta1/usr/libexec/dovecot" || mkdir -p -- "/var/tmp/root-dovecot-1.0.beta1/usr/libexec/dovecot" /bin/sh ../../libtool --mode=install /usr/bin/install -c 'pop3' '/var/tmp/root-dovecot-1.0.beta1/usr/libexec/dovecot/pop3' /usr/bin/install -c pop3 /var/tmp/root-dovecot-1.0.beta1/usr/libexec/dovecot/pop3 make[3]: Nothing to be done for `install-data-am'.it should install the plugins in /var/tmp/root-dovecot.../usr/lib/dovecot too. so builddir is /usr/src/gimre/rpm2/BUILD/dovecot-1.0.beta1 (rpmbuild creates this), and installdir (destdir) is in /var/tmp/root-dovecot-1.0.beta1, where make install should put all the files to be installed. i found this in the ChangeLog also:
2005-12-10 22:25 Timo Sirainen <tss@iki.fi>
* src/: lib-dict/Makefile.am, plugins/imap-quota/Makefile.am, plugins/quota/Makefile.am, plugins/trash/Makefile.am: Added missing header files. Fixed plugin install hooks to use
DESTDIR.
somehow it doesn't work for me.
John Gray wrote:
Try adding:
--with-moduledir=/usr/lib/dovecot/modules
when calling configure. That fixed this for me.
It seems to me when need to fix the default value of moduledir to not confilict with the libdir (or libexecdir).
John
Imre Gergely wrote:
hi
i downloaded dovecot-1.0.beta1.tar.gz, did a rpmbuild -ta dovecot-1.0.beta1.tar.gz (which uses the dovecot.spec from the tar.gz), and got the following:
Making install in quota make[3]: Entering directory
/usr/src/gimre/rpm2/BUILD/dovecot-1.0.beta1/src/plugins/quota' make[4]: Entering directory
/usr/src/gimre/rpm2/BUILD/dovecot-1.0.beta1/src/plugins/quota' mkdir -p -- /usr/lib/dovecot/imap /usr/lib/dovecot/lda mkdir: cannot create directory/usr/lib/dovecot': Permission denied mkdir: cannot create directory
/usr/lib/dovecot': Permission denied make[4]: *** [install-exec-local] Error 1 make[4]: Leaving directory `/usr/src/gimre/rpm2/BUILD/dovecot-1.0.beta1/src/plugins/quota' make[3]: *** [install-am] Error 2so everything did compile alright, but it has some problems with installing the plugins. and i dunno why it tries to create those directories in the root directory. of course i'm compiling it as a non-root users, so it doesn't have any write permissions. and it normally shouldn't have to do an install in directories other then buildroot.
so what's the catch? if i disable from the src/Makefile.in to not compile the plugins, everything works fine, i got a nice rpm file. i'm on Fedora Core 4.
any help would be appreciated. thx.
On 2006-01-18 17:58:25 +0200, Imre Gergely wrote:
nope, i don't want that. i know that you can install in some custom specified directory, but i want to install all in the default location. i mean i want to build a RPM file which in turn will install all in the default location.
i compiled it and installed it with make, make install, that worked fine (with --prefix too). i just want a RPM file, and i _don't_ want to build it as root.
that specfile included in the tar.gz looks fine, the problem is the plugins won't install in the temporary location, it wants to install it direct in the root directory, during the rpmbuild process, that's not so good :)
can you post your spec file?
i have build rpms for all alpha builds and now the beta build and never saw your issue.
darix
On Wed, 18 Jan 2006, Marcus Rueckert wrote:
On 2006-01-18 17:58:25 +0200, Imre Gergely wrote:
that specfile included in the tar.gz looks fine, the problem is the plugins won't install in the temporary location, it wants to install it direct in the root directory, during the rpmbuild process, that's not so good :)
can you post your spec file?
i have build rpms for all alpha builds and now the beta build and never saw your issue.
We have faced the same problem. We replaced the line %makeinstall with make DESTDIR=%{buildroot} install
The "%makeinstall" macro does not specify a new module directory, nor does it set the DESTDIR variable.
Peter
Peter Svensson wrote:
On Wed, 18 Jan 2006, Marcus Rueckert wrote:
On 2006-01-18 17:58:25 +0200, Imre Gergely wrote:
that specfile included in the tar.gz looks fine, the problem is the plugins won't install in the temporary location, it wants to install it direct in the root directory, during the rpmbuild process, that's not so good :)
can you post your spec file?
i have build rpms for all alpha builds and now the beta build and never saw your issue.
We have faced the same problem. We replaced the line %makeinstall with make DESTDIR=%{buildroot} install
The "%makeinstall" macro does not specify a new module directory, nor does it set the DESTDIR variable.
Peter
I tried this also, it didn't work... the spec file i'm using is from the tar.gz itself. i just added a --with-mysql option to configure, to build it with mysql support. that's all i changed.
first i did a rpmbuild -ta dovecot-1.0.beta1.tar.gz, this takes the dovecot.spec directly from the tar.gz. that didn't work. it can be compiled but only as root, and that's not alright with me. then i fiddled around in the Makefiles, and took out the part with the plugin so it doesn't compile nor install the plugins, that worked, but that's not so good either :)
i'm using:
[gimre@imi dovecot-1.0.beta1]$ cat /etc/issue Fedora Core release 4 (Stentz) Kernel \r on an \m [gimre@imi dovecot-1.0.beta1]$ make -v GNU Make 3.80 [gimre@imi dovecot-1.0.beta1]$ automake --version automake (GNU automake) 1.9.5 [gimre@imi dovecot-1.0.beta1]$ autoconf --version autoconf (GNU Autoconf) 2.59 [gimre@imi dovecot-1.0.beta1]$ rpm --version RPM version 4.4.1 [gimre@imi dovecot-1.0.beta1]$ gcc -v Using built-in specs. Target: i386-redhat-linux Configured with: ../configure --prefix=/usr --mandir=/usr/share/man --infodir=/usr/share/info --enable-shared --enable-threads=posix --enable-checking=release --with-system-zlib --enable-__cxa_atexit --disable-libunwind-exceptions --enable-libgcj-multifile --enable-languages=c,c++,objc,java,f95,ada --enable-java-awt=gtk --with-java-home=/usr/lib/jvm/java-1.4.2-gcj-1.4.2.0/jre --host=i386-redhat-linux Thread model: posix gcc version 4.0.2 20051125 (Red Hat 4.0.2-8)
participants (5)
-
Imre Gergely
-
John Gray
-
Marcus Rueckert
-
Mario Nigrovic-rvvk40
-
Peter Svensson