[PATCH] kmstest: fix link error due to library ordering

Reinette Chatre reinette.chatre at intel.com
Wed Jan 27 10:28:05 PST 2016


Recent commit below introduced a new library to be linked (libutil.la):

commit 0caf58a6cb82327a3f6a53f05dea8e02f1412a05
Author: Stefan Agner <stefan at agner.ch>
Date:   Sat Dec 19 21:52:58 2015 -0800

    kmstest: Use util_open()

    Use the new util_open() helper instead of open-coding the method for
    finding a usable device. While at it, make the command-line interface
    more consistent with that of modetest by adding the -D and -M options.

    Signed-off-by: Stefan Agner <stefan at agner.ch>
    v2: correctly use util_open() - swap device, module
    Signed-off-by: Emil Velikov <emil.l.velikov at gmail.com>

The ordering of the libraries in kmstest_LDADD is causing the following
error on my build system:

ld: ../../tests/util/.libs/libutil.a(libutil_la-kms.o): undefined reference to symbol 'drmOpen'
../../.libs/libdrm.so: error adding symbols: DSO missing from command line
collect2: error: ld returned 1 exit status
Makefile:436: recipe for target 'kmstest' failed
make[3]: *** [kmstest] Error 1

The above error is resolved by switching the linking order.

Cc: Stefan Agner <stefan at agner.ch>
Cc: Kristian Høgsberg Kristensen <kristian.h.kristensen at intel.com>
Signed-off-by: Reinette Chatre <reinette.chatre at intel.com>
---
 tests/kmstest/Makefile.am | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/tests/kmstest/Makefile.am b/tests/kmstest/Makefile.am
index 100662e..9083620 100644
--- a/tests/kmstest/Makefile.am
+++ b/tests/kmstest/Makefile.am
@@ -18,8 +18,8 @@ kmstest_SOURCES = \
 
 kmstest_LDADD = \
 	$(top_builddir)/libdrm.la \
-	$(top_builddir)/libkms/libkms.la \
-	$(top_builddir)/tests/util/libutil.la
+	$(top_builddir)/tests/util/libutil.la \
+	$(top_builddir)/libkms/libkms.la
 
 run: kmstest
 	./kmstest
-- 
2.4.3



More information about the dri-devel mailing list