[Disksim-users] Compile error

Sergey Gordok sergey.gordok at gmail.com
Tue Dec 6 09:11:48 EST 2011


Hi all,

I'm trying to compile the DiskSim 4.0 and have the following error:

"...memsmodel/mems_piecewise_seek.c:524: undefined reference to `sqrt'"

and so on... (see the log file)

It seems to be a problem with the mathlib link, however I've check in
the makefile, and there is all ok (i.g. gcc -lm ...).

I'm actually not very familar with C/C++ and linux systems, so I'm in trouble :)

Can anyone help me?

My system is:

ubuntu 11.10 x64
DiskSim 4.0. (with x64 patch)
gcc, g++ 4.6
flex, bison 2.5
IDE Anjuta


Thanks a lot!

Best
Sergey
-------------- next part --------------
timbuktu at ubuntu:~/disksim_orig/disksim-4.0$ make
make -C libddbg
make[1]: Entering directory `/home/timbuktu/disksim_orig/disksim-4.0/libddbg'
mkdir -p include/libddbg lib
cp -p libddbg.h include/libddbg
cp -p libddbg.a lib 
make[1]: Leaving directory `/home/timbuktu/disksim_orig/disksim-4.0/libddbg'
make -C libparam
make[1]: Entering directory `/home/timbuktu/disksim_orig/disksim-4.0/libparam'
mkdir -p lib include/libparam
cp -p libparam.a lib
cp -p bitvector.h libparam.h include/libparam
make[1]: Leaving directory `/home/timbuktu/disksim_orig/disksim-4.0/libparam'
make -C diskmodel
make[1]: Entering directory `/home/timbuktu/disksim_orig/disksim-4.0/diskmodel'
make -C tests
make[2]: Entering directory `/home/timbuktu/disksim_orig/disksim-4.0/diskmodel/tests'
make[2]: Nothing to be done for `all'.
make[2]: Leaving directory `/home/timbuktu/disksim_orig/disksim-4.0/diskmodel/tests'
make[1]: Leaving directory `/home/timbuktu/disksim_orig/disksim-4.0/diskmodel'
make -C memsmodel
make[1]: Entering directory `/home/timbuktu/disksim_orig/disksim-4.0/memsmodel'
gcc -Wall -Wno-unused -MD -o mems_seektest mems_seektest.o -lm -L.  -g -DASSERTS  -I../src// -I../ -I../src//src  -lmems_internals
./libmems_internals.a(mems_piecewise_seek.o): In function `find_seek_time_piecewise':
/home/timbuktu/disksim_orig/disksim-4.0/memsmodel/mems_piecewise_seek.c:523: undefined reference to `sqrt'
/home/timbuktu/disksim_orig/disksim-4.0/memsmodel/mems_piecewise_seek.c:565: undefined reference to `sqrt'
./libmems_internals.a(mems_hong_seek.o): In function `find_seek_time_hong_x':
/home/timbuktu/disksim_orig/disksim-4.0/memsmodel/mems_hong_seek.c:78: undefined reference to `sqrt'
/home/timbuktu/disksim_orig/disksim-4.0/memsmodel/mems_hong_seek.c:80: undefined reference to `acos'
/home/timbuktu/disksim_orig/disksim-4.0/memsmodel/mems_hong_seek.c:94: undefined reference to `sqrt'
/home/timbuktu/disksim_orig/disksim-4.0/memsmodel/mems_hong_seek.c:96: undefined reference to `acos'
./libmems_internals.a(mems_hong_seek.o): In function `find_seek_time_hong_y':
/home/timbuktu/disksim_orig/disksim-4.0/memsmodel/mems_hong_seek.c:174: undefined reference to `sqrt'
/home/timbuktu/disksim_orig/disksim-4.0/memsmodel/mems_hong_seek.c:182: undefined reference to `sqrt'
/home/timbuktu/disksim_orig/disksim-4.0/memsmodel/mems_hong_seek.c:182: undefined reference to `sqrt'
/home/timbuktu/disksim_orig/disksim-4.0/memsmodel/mems_hong_seek.c:179: undefined reference to `sqrt'
/home/timbuktu/disksim_orig/disksim-4.0/memsmodel/mems_hong_seek.c:176: undefined reference to `asin'
/home/timbuktu/disksim_orig/disksim-4.0/memsmodel/mems_hong_seek.c:194: undefined reference to `sqrt'
/home/timbuktu/disksim_orig/disksim-4.0/memsmodel/mems_hong_seek.c:202: undefined reference to `sqrt'
/home/timbuktu/disksim_orig/disksim-4.0/memsmodel/mems_hong_seek.c:202: undefined reference to `sqrt'
/home/timbuktu/disksim_orig/disksim-4.0/memsmodel/mems_hong_seek.c:199: undefined reference to `sqrt'
/home/timbuktu/disksim_orig/disksim-4.0/memsmodel/mems_hong_seek.c:196: undefined reference to `asin'
/home/timbuktu/disksim_orig/disksim-4.0/memsmodel/mems_hong_seek.c:214: undefined reference to `sqrt'
/home/timbuktu/disksim_orig/disksim-4.0/memsmodel/mems_hong_seek.c:222: undefined reference to `sqrt'
/home/timbuktu/disksim_orig/disksim-4.0/memsmodel/mems_hong_seek.c:222: undefined reference to `sqrt'
/home/timbuktu/disksim_orig/disksim-4.0/memsmodel/mems_hong_seek.c:219: undefined reference to `sqrt'
/home/timbuktu/disksim_orig/disksim-4.0/memsmodel/mems_hong_seek.c:216: undefined reference to `asin'
/home/timbuktu/disksim_orig/disksim-4.0/memsmodel/mems_hong_seek.c:265: undefined reference to `sqrt'
/home/timbuktu/disksim_orig/disksim-4.0/memsmodel/mems_hong_seek.c:273: undefined reference to `sqrt'
/home/timbuktu/disksim_orig/disksim-4.0/memsmodel/mems_hong_seek.c:273: undefined reference to `sqrt'
/home/timbuktu/disksim_orig/disksim-4.0/memsmodel/mems_hong_seek.c:270: undefined reference to `sqrt'
/home/timbuktu/disksim_orig/disksim-4.0/memsmodel/mems_hong_seek.c:267: undefined reference to `asin'
collect2: ld returned 1 exit status
make[1]: *** [mems_seektest] Error 1
make[1]: Leaving directory `/home/timbuktu/disksim_orig/disksim-4.0/memsmodel'
make: *** [all] Error 2

-------------- next part --------------
A non-text attachment was scrubbed...
Name: Makefile
Type: application/octet-stream
Size: 3749 bytes
Desc: not available
URL: <http://lists.andrew.cmu.edu/pipermail/disksim-users/attachments/20111206/5aed5202/attachment.obj>


More information about the Disksim-users mailing list