[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
make distcheck fails when modules not installed
From: |
Nate Bargmann |
Subject: |
make distcheck fails when modules not installed |
Date: |
Sun, 10 Mar 2013 15:27:54 -0500 |
User-agent: |
Mutt/1.5.21 (2010-09-15) |
This is a long-standing bug in our project and I've yet to figure out
how to address it.
The project is primarily a library that once installed has a "front end"
installed in libdir and N "back ends" (linked by libtool with the
'-module' option and using libltdl for dlopen) installed in pkglibdir.
Once the package is installed running 'make check' allows the test
programs to pass. However, running 'make distcheck' results in a
failure.
For example:
make[1]: Entering directory `/home/nate/git/hlbld/hamlib-3.0~git/_build'
make check-am
make[2]: Entering directory `/home/nate/git/hlbld/hamlib-3.0~git/_build'
make c++/testcpp
make[3]: Entering directory `/home/nate/git/hlbld/hamlib-3.0~git/_build'
CXX c++/testcpp.o
CXXLD c++/testcpp
make[3]: Leaving directory `/home/nate/git/hlbld/hamlib-3.0~git/_build'
make check-TESTS
make[3]: Entering directory `/home/nate/git/hlbld/hamlib-3.0~git/_build'
rig:rig_init called
rig: loading backend dummy
rig: lt_dlopen("hamlib-dummy") failed (file not found), trying static
symbols...
rig: dlsym(initrigs3_dummy) failed
(/home/nate/git/hlbld/hamlib-3.0~git/_build/c++/.libs/lt-testcpp: undefined
symbol: initrigs3_dummy)
rig: lt_dlopen("hamlib-dummy") failed ((null))
terminate called after throwing an instance of 'RigException'
/bin/bash: line 5: 17432 Aborted ${dir}$tst
FAIL: c++/testcpp
=======================================================
1 of 1 test failed
Please report to address@hidden
=======================================================
make[3]: *** [check-TESTS] Error 1
make[3]: Leaving directory `/home/nate/git/hlbld/hamlib-3.0~git/_build'
make[2]: *** [check-am] Error 2
make[2]: Leaving directory `/home/nate/git/hlbld/hamlib-3.0~git/_build'
make[1]: *** [check] Error 2
make[1]: Leaving directory `/home/nate/git/hlbld/hamlib-3.0~git/_build'
make: *** [distcheck] Error 1
If I am guessing correctly, the system linker cannot find the back end
module in question (in this case 'dummy' which requires no amateur radio
hardware). How/where do I specify the directory 'make distcheck' uses?
Here is the Makefile.am fragment for this portion of the library:
lib_LTLIBRARIES += c++/libhamlib++.la
c___libhamlib___la_SOURCES = c++/rigclass.cc c++/rotclass.cc
c___libhamlib___la_LDFLAGS = -no-undefined -version-info
@ABI_VERSION@:@ABI_REVISION@:@ABI_AGE@
c___libhamlib___la_LIBADD = $(top_builddir)/src/libhamlib.la
check_PROGRAMS += c++/testcpp
TESTS += c++/testcpp
c___testcpp_SOURCES = c++/testcpp.cc
c___testcpp_LDADD = c++/libhamlib++.la
c___testcpp_LDFLAGS = @BACKENDLNK@
c___testcpp_DEPENDENCIES = c++/libhamlib++.la @BACKENDEPS@
In this case testcpp is not able to load the backend.
My Google fu left me with no answers so far. ;-)
- Nate
--
"The optimist proclaims that we live in the best of all
possible worlds. The pessimist fears this is true."
Ham radio, Linux, bikes, and more: http://www.n0nb.us
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- make distcheck fails when modules not installed,
Nate Bargmann <=