|
From: | James Leek |
Subject: | Re: libtool check libraries always result in 'uninstalled' binary script |
Date: | Thu, 06 Nov 2008 10:32:46 -0800 |
User-agent: | Thunderbird 2.0.0.14 (X11/20080515) |
Ralf Wildenhues wrote:
I guess I don't quite get your point here. I have a program and its associated libraries that I do install call Coop. When I run installcheck I want the tests to link against the installed versions of Coop's libraries. Hence this weird rule:Hello James, * James Leek wrote on Thu, Nov 06, 2008 at 06:23:25PM CET:Hi, I'm having a bit of a problem. I would really like to build my tests as installed-type binaries when I run 'make installcheck' in order to make it easier to run a debugger on them. However, each tests requires its own dynamically loadable convenience library.First off, what you're trying to do fits much better with the 'check' target than with the 'installcheck' target: the former is meant to test things before you ever run 'make install', the latter is meant to test those things you have actually created with 'make install'; also, it is nice if 'make installcheck' does not change the object files in the build tree. So, to summarize, I'd rename your installcheck-local target to check-local.
installcheck-local : installcheck-not-check $(MAKE) $(AM_MAKEFLAGS) \ LIBCOOP_INCLDIRS=-I$(includedir) \ LIBCOOP_LIBDIRS=-L$(libdir) \ LIBCOOP_PYPATH=$(bindir) \ $(check_LTLIBRARIES) $(check_PROGRAMS) \ $(check_SCRIPTS) check-TESTSI'm forcing the tests to find the installed includes and libs by changing those LIBCOOP variables. In the build directory, those libraries are all in different directories, but during install they all end up in libdir. Admittedly, it seems like there should be some more obvious way to do this, but I haven't figured it out yet. Do you have a suggestion?
Hey, that worked great. Luckily I don't care about w32 systems. I wasn't aware of the -no-install flag, but my initial guess would've been that it would go on the libraries, not the binary. Apparently I would have been wrong.check_PROGRAMS = Master Slave check_LTLIBRARIES = libslave.la libslave_cxxstub.laFor your actual problem, namely avoiding the shell wrapper for uninstalled programs, try adding -no-install to Master_LDFLAGS and Slave_LDFLAGS. You still won't be able to debug easily on w32 systems, though.
You know, I have no idea. It was there when I inherited the code, and I just never touched it. I guess I'll take it out and see if anything bad happens.check_SCRIPTS = lt-MasterWhat is this line for?
Thanks, Jim
[Prev in Thread] | Current Thread | [Next in Thread] |