Unable to install TI Linux emulator on Linux Mint 16 KDE

1

I have Linux Mint 16 KDE, and I wanted to install the Texas Instruments Emulator from http://lpg.ticalc.org/prj_tilem/download.html.

I downloaded and extracted the source code, and installed all the necessary packages that were mentioned in the install doc.

In the terminal I typed "./configure", and then "make", after which I've got the following error message:

"/usr/bin/ld: ../emu/libtilemcore.a(graycolor.o): undefined reference to symbol 'pow@@GLIBC_2.2.5'
/lib/x86_64-linux-gnu/libm.so.6: error adding symbols: DSO missing from command line
collect2: error: ld returned 1 exit status
make[1]: *** [tilem2] Error 1
make[1]: Leaving directory `/home/clearsky/Desktop/Texas Instruments/tilem-2.0/gui'
make: *** [all] Error 2"

Here is the complete output from the teminal:

./configure
checking for gcc... gcc
checking whether the C compiler works... yes
checking for C compiler default output file name... a.out
checking for suffix of executables... 
checking whether we are cross compiling... no
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether gcc accepts -g... yes
checking for gcc option to accept ISO C89... none needed
checking how to run the C preprocessor... gcc -E
checking for ar... ar
checking for ranlib... ranlib
checking for a BSD-compatible install... /usr/bin/install -c
checking whether make sets $(MAKE)... yes
checking for update-desktop-database... :
checking for update-mime-database... update-mime-database
checking for pkg-config... /usr/bin/pkg-config
checking pkg-config is at least version 0.9.0... yes
checking for GTK... yes
checking for gtk_init... yes
checking for TICALCS... yes
checking for ticalcs_library_init... yes
checking for grep that handles long lines and -e... /bin/grep
checking for egrep... /bin/grep -E
checking for ANSI C header files... yes
checking for sys/types.h... yes
checking for sys/stat.h... yes
checking for stdlib.h... yes
checking for string.h... yes
checking for memory.h... yes
checking for strings.h... yes
checking for inttypes.h... yes
checking for stdint.h... yes
checking for unistd.h... yes
checking whether byte ordering is bigendian... no
checking for inline... inline
checking for C/C++ restrict keyword... __restrict
checking for uintptr_t... yes
configure: creating ./config.status
config.status: creating Makefile
config.status: creating emu/Makefile
config.status: creating db/Makefile
config.status: creating data/Makefile
config.status: creating gui/Makefile
config.status: creating gui/tilem2.rc
config.status: creating installer/win32/Makefile
config.status: creating installer/win32/installer.nsi
config.status: creating config.h
config.status: config.h is unchanged

make
cd emu && make
make[1]: Entering directory `/home/clearsky/Desktop/Texas Instruments/tilem-2.0/emu'
make[1]: Nothing to be done for `all'.
make[1]: Leaving directory `/home/clearsky/Desktop/Texas Instruments/tilem-2.0/emu'
cd db && make
make[1]: Entering directory `/home/clearsky/Desktop/Texas Instruments/tilem-2.0/db'
make[1]: Nothing to be done for `all'.
make[1]: Leaving directory `/home/clearsky/Desktop/Texas Instruments/tilem-2.0/db'
cd gui && make
make[1]: Entering directory `/home/clearsky/Desktop/Texas Instruments/tilem-2.0/gui'
gcc -g -O2 -W -Wall -Wwrite-strings    -o tilem2 tilem2.o address.o animatedgif.o animation.o breakpoints.o config.o charmap.o debugger.o disasmview.o emulator.o emucore.o emuwin.o event.o filedlg.o files.o fixedtreeview.o gifencod.o icons.o keybindings.o keypaddlg.o link.o macro.o memmodel.o memview.o memory.o pbar.o preferences.o sendfile.o screenshot.o skinops.o ti81prg.o menu.o rcvmenu.o tool.o  -L../db -ltilemdb -L../emu -ltilemcore -pthread -lgtk-x11-2.0 -lgdk-x11-2.0 -latk-1.0 -lgio-2.0 -lpangoft2-1.0 -lpangocairo-1.0 -lgdk_pixbuf-2.0 -lcairo -lpango-1.0 -lfreetype -lfontconfig -lgobject-2.0 -lgthread-2.0 -lglib-2.0   -lticalcs2 -lticables2 -ltifiles2 -lticonv -lglib-2.0   
/usr/bin/ld: ../emu/libtilemcore.a(graycolor.o): undefined reference to symbol 'pow@@GLIBC_2.2.5'
/lib/x86_64-linux-gnu/libm.so.6: error adding symbols: DSO missing from command line
collect2: error: ld returned 1 exit status
make[1]: *** [tilem2] Error 1
make[1]: Leaving directory `/home/clearsky/Desktop/Texas Instruments/tilem-2.0/gui'
make: *** [all] Error 2

Can anyone help me find a solution to this problem?

ClearSky

Posted 2014-01-16T00:00:43.907

Reputation: 39

1Your missing or have the wrong version of a library. Probably either libm or glibc. Remember you need the on that has -devel or -dev or something close to that in the name. – cybernard – 2014-01-16T01:03:01.340

Answers

1

If you just want to get this emulator working, instead of figuring out why you can't compile it, consider using Omnimaga PPA or glennric PPA or some other PPA that has tilem package. Make sure to pick the right version of Ubuntu on which your version of Mint is based on.

Mxx

Posted 2014-01-16T00:00:43.907

Reputation: 2 659

2

I went into the Makefile in the gui subdirectory and added -lm to the GTK_LIBS line and that seemed to fix the error.

TomG

Posted 2014-01-16T00:00:43.907

Reputation: 21

setenv GTK_LIBS "-lgtk-x11-2.0 -lgdk-x11-2.0 -lpangocairo-1.0 -latk-1.0 -lcairo -lgdk_pixbuf-2.0 -lgio-2.0 -lpangoft2-1.0 -lpango-1.0 -lgobject-2.0 -lfontconfig -lfreetype -lgthread-2.0 -pthread -lglib-2.0 -lm" in ~/.tcshrc (or the equivalent in bash) has the same effect and may even be helpful for other compilations. – barrycarter – 2016-11-11T21:25:45.563