automake
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: make distcheck fails when modules not installed


From: NightStrike
Subject: Re: make distcheck fails when modules not installed
Date: Sat, 6 Apr 2013 15:32:08 -1000

On Sun, Mar 10, 2013 at 10:27 AM, Nate Bargmann <address@hidden> wrote:
> 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.  ;-)

Looks like the link path isn't set right for the test programs



reply via email to

[Prev in Thread] Current Thread [Next in Thread]