Opened 7 years ago

Closed 7 years ago

#2720 closed defect (fixed)

Test failure in Ubuntu 11.10

Reported by: stephen Owned by:
Priority: medium Milestone: Sprint-20130305
Component: Unclassified Version:
Keywords: Cc:
CVSS Scoring: Parent Tickets:
Sensitive: no Defect Severity: N/A
Sub-Project: DNS Feature Depending on Ticket:
Estimated Difficulty: 2 Add Hours to Ticket: 0
Total Hours: 0 Internal?: no

Description

Building the latest version of master (aff7100abe378e77ed36e6239a82ca483bcd2288) gave the following failure during tests:

make[7]: Entering directory `/home/stephen/bind10/src/lib/python/isc/acl/tests'
for pytest in acl_test.py dns_test.py ; do \
	echo Running test: $pytest ; \
	PYTHONPATH=/home/stephen/bind10/src/lib/python/isc/log_messages:/home/stephen/bind10/src/lib/python:/home/stephen/bind10/src/lib/python:/home/stephen/bind10/src/lib/dns/python/.libs:/home/stephen/bind10/src/lib/dns/python/.libs:/home/stephen/bind10/src/lib/isc/python/acl/.libs \
	 \
	/usr/bin/python3.2 /home/stephen/bind10/src/lib/python/isc/acl/tests/$pytest || exit ; \
	done
Running test: acl_test.py
Traceback (most recent call last):
  File "/home/stephen/bind10/src/lib/python/isc/acl/tests/acl_test.py", line 17, in <module>
    from isc.acl.acl import *
  File "/home/stephen/bind10/src/lib/python/isc/acl/__init__.py", line 11, in <module>
    import isc.acl.acl
  File "/home/stephen/bind10/src/lib/python/isc/acl/acl.py", line 29, in <module>
    from acl import *
ImportError: /home/stephen/bind10/src/lib/python/isc/acl/.libs/acl.so: undefined symbol: _ZNK3isc9Exception4whatEv
make[7]: *** [check-local] Error 1

This is with gcc version 4.6.1 (Ubuntu/Linaro 4.6.1-9ubuntu3).

I'm not clear why the problem has arisen now. As to the cause, this may be a manifestation of the "libtool" problem, discussed on the mailing list in 2011.

The following change to src/lib/python/isc/acl/Makefile.am appears to fix the problem:

diff --git a/src/lib/python/isc/acl/Makefile.am b/src/lib/python/isc/acl/Makefile.am
index 634fadd..4236967 100644
--- a/src/lib/python/isc/acl/Makefile.am
+++ b/src/lib/python/isc/acl/Makefile.am
@@ -28,10 +28,12 @@ _dns_la_CXXFLAGS = $(AM_CXXFLAGS) $(PYTHON_CXXFLAGS)
 # suffix for dynamic objects.  -module is necessary to work this around.
 acl_la_LDFLAGS += -module -avoid-version
 acl_la_LIBADD = $(top_builddir)/src/lib/acl/libb10-acl.la
+acl_la_LIBADD += $(top_builddir)/src/lib/exceptions/libb10-exceptions.la
 acl_la_LIBADD += $(PYTHON_LIB)
 
 _dns_la_LDFLAGS += -module -avoid-version
 _dns_la_LIBADD = $(top_builddir)/src/lib/acl/libb10-dnsacl.la
+_dns_la_LIBADD += $(top_builddir)/src/lib/cc/libb10-cc.la
 _dns_la_LIBADD += $(PYTHON_LIB)
 
 EXTRA_DIST = acl.py _dns.py

Subtickets

Change History (2)

comment:1 Changed 7 years ago by jelte

  • Milestone changed from New Tasks to Sprint-20130305

comment:2 Changed 7 years ago by jelte

  • Resolution set to fixed
  • Status changed from new to closed

since there already was a proposed patch, I just checked and applied it; it causes no problems AFAICT and we use a similar approach in other places.

Note: See TracTickets for help on using tickets.