On Wed, 27 Sep 2023 07:32:53 +0200, Rene Kita wrote: > On Tue, Sep 26, 2023 at 05:58:26PM +0200, Jean Delvare wrote: > > On Thu, 2023-08-10 at 16:50 +0200, Rene Kita wrote: > > > When working from the git repo and starting clean a `make install' > > > errors out because some files where not generated. > [...] > > > This does not work: > > > > > > make distclean || :; ./configure --prefix=/tmp/ && make install > > > > > > > > > Errors out with: > > > > > > /usr/bin/install: cannot stat 'doc/README': No such file or directory > > > make: *** [Makefile:318: install-main] Error 1 > > > > I don't consider this to be a bug. You obviously can't install before > > building, so calling "make install" before "make" is simply not a good > > idea, it can't succeed for any package, not just quilt. > > This is not my experience. Most packages I install from source just > build when calling 'make install'.
This made me curious so I gave it a try. This indeed works for i2c-tools for example, but it doesn't work for the kernel: # make install INSTALL /boot *** Missing file: arch/x86/boot/bzImage *** You need to run "make" before "make install". make[1]: *** [arch/x86/Makefile:292: install] Error 1 make: *** [Makefile:234: __sub-make] Error 2 But at least there's an explicit error message with instructions. > > Furthermore, I would argue that "make && make install" in your first > > example is a bad idea. You typically need to be root to install a > > package, but you don't want to build anything as root, for obvious > > security reasons. > > As I always install into my $HOME, this does not affect me. OK, your request makes sense then. > > And this is the reason why we don't want to add > > dependencies to the Makefile to let "make install" generate the missing > > files, because that would most likely cause these files to be generated > > by the wrong user. > > I see. It's a valid point. > > > In other words, if it hurts, well, just don't do it. > > Or patch the Makefile - it's open source for a reason. ;-) If you have fix which works for your use case, I'll be happy to commit it. That being said... I don't really get why you don't just always use "make && make install", which is pretty much guaranteed to always work for all packages, and has the advantage of preventing a potential partial installation in case of a failure in the middle of the build. Thanks, -- Jean Delvare SUSE L3 Support _______________________________________________ Quilt-dev mailing list [email protected] https://lists.nongnu.org/mailman/listinfo/quilt-dev
