News:

Accounts with zero posts and zero activity during the last months will be deleted periodically to fight SPAM!

Main Menu

make install problem (Bug #6654)

Started by TheTuxKeeper, March 04, 2006, 03:55:44 PM

Previous topic - Next topic

TheTuxKeeper

Like I wrote here (I realized this is the right forum to post in :oops: ), I have problems creating RPMs. I've also created a bug report (#6654).

The directory variable, which is used to define the install destination of the plugins, is called libdir. And this is the problem, in linux libdir is /usr/lib.  During rpm build "make install" has to redefine the destination paths, because it puts the files into a temporary file tree with a prefix in front of the real path names. make install defines libdir=var/tmp/codeblocks-1.0-0.svn.2133-buildroot/usr/lib (had to cut leading "/" again  :? ), so it will be overwritten.
This error appears then:make[5]: Entering directory usr/src/redhat/BUILD/codeblocks/src/plugins/astyle
test -z var/tmp/codeblocks-1.0-0.svn.2112-buildroot/usr/lib || mkdir -p -- var/tmp/codeblocks-1.0-0.svn.2112-buildroot/usr/lib
bin/sh libtool --mode=install /usr/bin/install -c  'libastyle.la' 'var/tmp/codeblocks-1.0-0.svn.2112-buildroot/usr/lib/libastyle.la'
libtool: install: error: cannot install libastyle.la to a directory not ending in usr/share/codeblocks/plugins
make[5]: [install-libLTLIBRARIES] Error 1 (ignored)

I tried to fix this myself, but I don't know how to rename the variable. My thought was to rename the the variable which sets the install destination of the plugins, that there won't be a name conflict or a double used variable:
##from
libdir = $(pkgdatadir)/plugins
##to
pluginlibdir = $(pkgdatadir)/plugins

But it's all generated by autotools and I don't know where to search.
Nightly builds for openSUSE

mandrav

That's not a bug, Daniel.
Setting the libdir variable defines where the library is to be installed. In the above example it would install it in $(pkgdatadir)/plugins, i.e. /usr/share/codeblocks/plugins (assuming --prefix was set to /usr).

I build the amd64 DEB package without problems. And yes, it builds and installs it in a temp directory and it works OK.
Be patient!
This bug will be fixed soon...

TheTuxKeeper

Quote from: mandrav on March 04, 2006, 06:01:23 PM
That's not a bug, Daniel.
Setting the libdir variable defines where the library is to be installed. In the above example it would install it in $(pkgdatadir)/plugins, i.e. /usr/share/codeblocks/plugins (assuming --prefix was set to /usr).

I build the amd64 DEB package without problems. And yes, it builds and installs it in a temp directory and it works OK.
Ok, your post gives me the idea how to solve my build problems. The rpm macro makeinstall redefines each path variable, so I don't use it and only define the DESTDIR variable of make (make DESTDIR=/tmp install)  :D

I'll be quiet now and read a few autotools tutorials :mrgreen:

Thank you for your patience, Yannis  :D
Nightly builds for openSUSE