Fórum Ubuntu CZ/SK
Ubuntu pro osobní počítače => Software => Příkazový řádek a programování pro GNU/Linux => Téma založeno: katusa 25 Ledna 2015, 21:05:52
-
Pri kompilaci scid vs pc na ubuntu 14.04 mi padá tato hláška:
/usr/bin/ld: /usr/lib/libtcl8.6.a(tclLoadDl.o): undefined reference to symbol 'dlclose@@GLIBC_2.2.5'
//lib/x86_64-linux-gnu/libdl.so.2: error adding symbols: DSO missing from command line
collect2: error: ld returned 1 exit status
make: *** [tkscid] Error 1
poradíte někdo co s tím?
-
Odpověď přichází pozdě, ale přece přichází ;)
Zkusil jsem Scid vs PC zkompilovat a žádné větší problémy jsem neměl (mám Xubuntu 14.04.2 64bit).
Nicméně podle chyby co vám ld vypsalo jsem vygooglil tohle:
http://stackoverflow.com/questions/19901934/strange-linking-error-dso-missing-from-command-line (http://stackoverflow.com/questions/19901934/strange-linking-error-dso-missing-from-command-line)
Jedná se o to, že linker vyžaduje určité pořadí linkovaných knihoven: nejdřív ty, které symboly vyžadují, a až pak ty které ty symboly poskytují.
Takže přidejte na konec proměnné TCL_LIBRARY -ldl:
TCL_LIBRARY = -L/usr/lib -ltcl$(TCL_VERSION) -ldl
Nevím jistě, jestli to pomůže, ale za pokus to stojí.
EDIT: přehlédl jsem, že linkujete statickou knihovnu, i tak to přidejte na konec.