Re: [Bacula-users] after building bat, location of binary varies
> On Wed, 18 Nov 2009 20:12:43 -0500, Dan Langille said: > > Martin Simmons wrote: > >> On Tue, 17 Nov 2009 22:45:51 -0500, Dan Langille said: > >> Martin Simmons wrote: > On Mon, 16 Nov 2009 22:32:56 -0500, Dan Langille said: > Martin Simmons wrote: > >> On Sun, 15 Nov 2009 23:45:43 -0500, Dan Langille said: > >> Folks, > >> > >> I am finding that the location of the executable binary varies from > >> one > >> system to another. I am trying to find out why. The answer will help > >> to improve the build and install process. > >> > >> Sometimes the binary is at: > >> > >>src/qt-console/bat > >> > >> If not there, it is at: > >> > >>src/qt-console/.libs/bat > >> > >> Within a given system, the location is always consistent. It is one > >> of > >> the above. Why the location varies, I do not know. > The .libs directory is the default location when building with libtool > (for > Bacula shared libraries). > This is interesting. Please, can you elaborate? > >>> The libtool utility is a wrapper around compiling/linking/install to deal > >>> with > >>> portability for shared library naming. > >>> > >>> In the build tree, it puts all shared libraries and executables into > >>> subdirectories which are called .libs by default. It also creates a shell > >>> script for each executable, which sets LD_LIBRARY_PATH appropriately to > >>> make > >>> it work in the build tree. > >>> > >>> Note that this is only in the build tree. During "make install", it > >>> installs > >>> the real libraries and binaries. > >>> > >>> My guess is that that some are not being linked with shared libraries for > >>> some > >>> reason, so Bacula is not using libtool and the real executable is built in > >>> src/qt-console/bat. > >>> > >>> It isn't clear to me why the location of the binaries matters, unless the > >>> Makefile is broken. > >> It matters because building the FreeBSD port/packages needs to know > >> where the binary is. Without knowing, you can't install it or build it > >> into a package. > > > > OK, but I don't understand why. > > > > Normally, a port's Makefile (or bsd.port.mk) installs the software by > > running > > make install with the software's Makefile. The installed location should > > never have a .libs directory (it should only exist in the build tree). If > > the > > installed location has a .libs directory, then the software's Makefile is > > broken. > > Yes, that is the normal situation. However, for sysutils/bacula-bat, > the bat file is installed by the port's Makefile. I do not know why. > That's how it's done. Perhaps the port's Makefile can be changed to use Bacula's make install like bacula-bat.spec does for the rpms? That must be better than adding more hacks... __Martin -- Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day trial. Simplify your report design, integration and deployment - and focus on what you do best, core application coding. Discover what's new with Crystal Reports now. http://p.sf.net/sfu/bobj-july ___ Bacula-users mailing list Bacula-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/bacula-users
Re: [Bacula-users] after building bat, location of binary varies
Martin Simmons wrote: >> On Tue, 17 Nov 2009 22:45:51 -0500, Dan Langille said: >> Martin Simmons wrote: On Mon, 16 Nov 2009 22:32:56 -0500, Dan Langille said: Martin Simmons wrote: >> On Sun, 15 Nov 2009 23:45:43 -0500, Dan Langille said: >> Folks, >> >> I am finding that the location of the executable binary varies from one >> system to another. I am trying to find out why. The answer will help >> to improve the build and install process. >> >> Sometimes the binary is at: >> >>src/qt-console/bat >> >> If not there, it is at: >> >>src/qt-console/.libs/bat >> >> Within a given system, the location is always consistent. It is one of >> the above. Why the location varies, I do not know. > The .libs directory is the default location when building with libtool > (for > Bacula shared libraries). This is interesting. Please, can you elaborate? >>> The libtool utility is a wrapper around compiling/linking/install to deal >>> with >>> portability for shared library naming. >>> >>> In the build tree, it puts all shared libraries and executables into >>> subdirectories which are called .libs by default. It also creates a shell >>> script for each executable, which sets LD_LIBRARY_PATH appropriately to make >>> it work in the build tree. >>> >>> Note that this is only in the build tree. During "make install", it >>> installs >>> the real libraries and binaries. >>> >>> My guess is that that some are not being linked with shared libraries for >>> some >>> reason, so Bacula is not using libtool and the real executable is built in >>> src/qt-console/bat. >>> >>> It isn't clear to me why the location of the binaries matters, unless the >>> Makefile is broken. >> It matters because building the FreeBSD port/packages needs to know >> where the binary is. Without knowing, you can't install it or build it >> into a package. > > OK, but I don't understand why. > > Normally, a port's Makefile (or bsd.port.mk) installs the software by running > make install with the software's Makefile. The installed location should > never have a .libs directory (it should only exist in the build tree). If the > installed location has a .libs directory, then the software's Makefile is > broken. Yes, that is the normal situation. However, for sysutils/bacula-bat, the bat file is installed by the port's Makefile. I do not know why. That's how it's done. -- Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day trial. Simplify your report design, integration and deployment - and focus on what you do best, core application coding. Discover what's new with Crystal Reports now. http://p.sf.net/sfu/bobj-july ___ Bacula-users mailing list Bacula-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/bacula-users
Re: [Bacula-users] after building bat, location of binary varies
> On Tue, 17 Nov 2009 22:45:51 -0500, Dan Langille said: > > Martin Simmons wrote: > >> On Mon, 16 Nov 2009 22:32:56 -0500, Dan Langille said: > >> Martin Simmons wrote: > On Sun, 15 Nov 2009 23:45:43 -0500, Dan Langille said: > Folks, > > I am finding that the location of the executable binary varies from one > system to another. I am trying to find out why. The answer will help > to improve the build and install process. > > Sometimes the binary is at: > > src/qt-console/bat > > If not there, it is at: > > src/qt-console/.libs/bat > > Within a given system, the location is always consistent. It is one of > the above. Why the location varies, I do not know. > >>> The .libs directory is the default location when building with libtool > >>> (for > >>> Bacula shared libraries). > >> This is interesting. Please, can you elaborate? > > > > The libtool utility is a wrapper around compiling/linking/install to deal > > with > > portability for shared library naming. > > > > In the build tree, it puts all shared libraries and executables into > > subdirectories which are called .libs by default. It also creates a shell > > script for each executable, which sets LD_LIBRARY_PATH appropriately to make > > it work in the build tree. > > > > Note that this is only in the build tree. During "make install", it > > installs > > the real libraries and binaries. > > > > My guess is that that some are not being linked with shared libraries for > > some > > reason, so Bacula is not using libtool and the real executable is built in > > src/qt-console/bat. > > > > It isn't clear to me why the location of the binaries matters, unless the > > Makefile is broken. > > It matters because building the FreeBSD port/packages needs to know > where the binary is. Without knowing, you can't install it or build it > into a package. OK, but I don't understand why. Normally, a port's Makefile (or bsd.port.mk) installs the software by running make install with the software's Makefile. The installed location should never have a .libs directory (it should only exist in the build tree). If the installed location has a .libs directory, then the software's Makefile is broken. It then builds the package from the installed files, so again there should be no .libs directory. __Martin -- Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day trial. Simplify your report design, integration and deployment - and focus on what you do best, core application coding. Discover what's new with Crystal Reports now. http://p.sf.net/sfu/bobj-july ___ Bacula-users mailing list Bacula-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/bacula-users
Re: [Bacula-users] after building bat, location of binary varies
Martin Simmons wrote: >> On Mon, 16 Nov 2009 22:32:56 -0500, Dan Langille said: >> Martin Simmons wrote: On Sun, 15 Nov 2009 23:45:43 -0500, Dan Langille said: Folks, I am finding that the location of the executable binary varies from one system to another. I am trying to find out why. The answer will help to improve the build and install process. Sometimes the binary is at: src/qt-console/bat If not there, it is at: src/qt-console/.libs/bat Within a given system, the location is always consistent. It is one of the above. Why the location varies, I do not know. >>> The .libs directory is the default location when building with libtool (for >>> Bacula shared libraries). >> This is interesting. Please, can you elaborate? > > The libtool utility is a wrapper around compiling/linking/install to deal with > portability for shared library naming. > > In the build tree, it puts all shared libraries and executables into > subdirectories which are called .libs by default. It also creates a shell > script for each executable, which sets LD_LIBRARY_PATH appropriately to make > it work in the build tree. > > Note that this is only in the build tree. During "make install", it installs > the real libraries and binaries. > > My guess is that that some are not being linked with shared libraries for some > reason, so Bacula is not using libtool and the real executable is built in > src/qt-console/bat. > > It isn't clear to me why the location of the binaries matters, unless the > Makefile is broken. It matters because building the FreeBSD port/packages needs to know where the binary is. Without knowing, you can't install it or build it into a package. -- Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day trial. Simplify your report design, integration and deployment - and focus on what you do best, core application coding. Discover what's new with Crystal Reports now. http://p.sf.net/sfu/bobj-july ___ Bacula-users mailing list Bacula-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/bacula-users
Re: [Bacula-users] after building bat, location of binary varies
> On Mon, 16 Nov 2009 22:32:56 -0500, Dan Langille said: > > Martin Simmons wrote: > >> On Sun, 15 Nov 2009 23:45:43 -0500, Dan Langille said: > >> Folks, > >> > >> I am finding that the location of the executable binary varies from one > >> system to another. I am trying to find out why. The answer will help > >> to improve the build and install process. > >> > >> Sometimes the binary is at: > >> > >>src/qt-console/bat > >> > >> If not there, it is at: > >> > >>src/qt-console/.libs/bat > >> > >> Within a given system, the location is always consistent. It is one of > >> the above. Why the location varies, I do not know. > > > > The .libs directory is the default location when building with libtool (for > > Bacula shared libraries). > > This is interesting. Please, can you elaborate? The libtool utility is a wrapper around compiling/linking/install to deal with portability for shared library naming. In the build tree, it puts all shared libraries and executables into subdirectories which are called .libs by default. It also creates a shell script for each executable, which sets LD_LIBRARY_PATH appropriately to make it work in the build tree. Note that this is only in the build tree. During "make install", it installs the real libraries and binaries. My guess is that that some are not being linked with shared libraries for some reason, so Bacula is not using libtool and the real executable is built in src/qt-console/bat. It isn't clear to me why the location of the binaries matters, unless the Makefile is broken. __Martin -- Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day trial. Simplify your report design, integration and deployment - and focus on what you do best, core application coding. Discover what's new with Crystal Reports now. http://p.sf.net/sfu/bobj-july ___ Bacula-users mailing list Bacula-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/bacula-users
Re: [Bacula-users] after building bat, location of binary varies
Martin Simmons wrote: >> On Sun, 15 Nov 2009 23:45:43 -0500, Dan Langille said: >> Folks, >> >> I am finding that the location of the executable binary varies from one >> system to another. I am trying to find out why. The answer will help >> to improve the build and install process. >> >> Sometimes the binary is at: >> >>src/qt-console/bat >> >> If not there, it is at: >> >>src/qt-console/.libs/bat >> >> Within a given system, the location is always consistent. It is one of >> the above. Why the location varies, I do not know. > > The .libs directory is the default location when building with libtool (for > Bacula shared libraries). This is interesting. Please, can you elaborate? -- Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day trial. Simplify your report design, integration and deployment - and focus on what you do best, core application coding. Discover what's new with Crystal Reports now. http://p.sf.net/sfu/bobj-july ___ Bacula-users mailing list Bacula-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/bacula-users
Re: [Bacula-users] after building bat, location of binary varies
> On Sun, 15 Nov 2009 23:45:43 -0500, Dan Langille said: > > Folks, > > I am finding that the location of the executable binary varies from one > system to another. I am trying to find out why. The answer will help > to improve the build and install process. > > Sometimes the binary is at: > >src/qt-console/bat > > If not there, it is at: > >src/qt-console/.libs/bat > > Within a given system, the location is always consistent. It is one of > the above. Why the location varies, I do not know. The .libs directory is the default location when building with libtool (for Bacula shared libraries). __Martin -- Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day trial. Simplify your report design, integration and deployment - and focus on what you do best, core application coding. Discover what's new with Crystal Reports now. http://p.sf.net/sfu/bobj-july ___ Bacula-users mailing list Bacula-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/bacula-users