[Disksim-users] "No rule to make target `memsmodel_mems_param.h'" when compiling DiskSim 4.0

Esteban Molina-Estolano eestolan at soe.ucsc.edu
Sun Nov 30 16:28:16 EST 2008


I've figured it out now: I had make set to use -j4 by default, and  
using multiple jobs when compiling DiskSim causes all sorts of havoc.

(I still can't compile, but for other reasons; if I don't figure it  
out I'll post with a new subject line.)

     ~ Esteban

On Nov 27, 2008, at 12:31 AM, Esteban Molina-Estolano wrote:

> I'm attempting to compile DiskSim 4.0 with DIXTrac, and I'm getting  
> an error about a missing rule:
>
> make[2]: *** No rule to make target `memsmodel_mems_param.h', needed  
> by `modules.h'.  Stop.
>
> What can I do to get this working?
>
> Here's my configuration, briefly:
>
> CPU: 4 x 2.6 GHz dual-core AMD Opteron
> OS: Centos 5
> make: GNU Make 3.81
> gcc: gcc (GCC) 4.1.2 20070626 (Red Hat 4.1.2-14)
>
> The complete make output follows.
>
> Thank you!
>
>    ~ Esteban
>
> make -C libddbg
> make[1]: Entering directory `/cse/grads/eestolan/disksim/disksim-4.0- 
> with-dixtrac/libddbg'
> cc -g -I../libparam   -c -o ddbg_assert.o ddbg_assert.c
> cc -g -I../libparam   -c -o ddbg_trace.o ddbg_trace.c
> ar cru libddbg.a ddbg_assert.o ddbg_trace.o
> mkdir -p include/libddbg lib
> cp -p libddbg.h include/libddbg
> cp -p libddbg.a lib
> make[1]: Leaving directory `/cse/grads/eestolan/disksim/disksim-4.0- 
> with-dixtrac/libddbg'
> make -C libparam
> make[1]: Entering directory `/cse/grads/eestolan/disksim/disksim-4.0- 
> with-dixtrac/libparam'
> cc -g -I../libddbg/include -Wall   -c -o util.o util.c
> bison -plibparam --defines libparam.y
> bison -plibparam --defines libparam.y
> cc -g -I../libddbg/include -Wall   -c -o libparam.tab.o libparam.tab.c
> flex -Plibparam libparam.lex
> cc -g -I../libddbg/include -Wall   -c -o lex.libparam.o lex.libparam.c
> libparam.tab.c: In function ‘libparamparse’:
> libparam.tab.c:1352: warning: implicit declaration of function  
> ‘libparamlex’
> lex.libparam.c: In function ‘libparamlex’:
> lex.libparam.c:753: warning: label ‘find_rule’ defined but not used
> libparam.lex: At top level:
> lex.libparam.c:1348: warning: ‘yyunput’ defined but not used
> ar cru libparam.a util.o libparam.tab.o lex.libparam.o
> mkdir -p lib include/libparam
> cp -p libparam.a lib
> cp -p bitvector.h libparam.h include/libparam
> make[1]: Leaving directory `/cse/grads/eestolan/disksim/disksim-4.0- 
> with-dixtrac/libparam'
> make -C diskmodel
> make[1]: Entering directory `/cse/grads/eestolan/disksim/disksim-4.0- 
> with-dixtrac/diskmodel'
> make -C modules
> gcc  -g -I. -I../libparam/include -I../libddbg/include -D_DM_SOURCE - 
> Wall -Wshadow -Wno-unused -MD     -c -o mech_g1_seektime.o  
> mech_g1_seektime.c
> gcc  -g -I. -I../libparam/include -I../libddbg/include -D_DM_SOURCE - 
> Wall -Wshadow -Wno-unused -MD     -c -o mech_g1.o mech_g1.c
> gcc  -g -I. -I../libparam/include -I../libddbg/include -D_DM_SOURCE - 
> Wall -Wshadow -Wno-unused -MD     -c -o layout_g1.o layout_g1.c
> make[2]: Entering directory `/cse/grads/eestolan/disksim/disksim-4.0- 
> with-dixtrac/diskmodel/modules'
> ../../libparam/mod.pl dm disk.modspec
> indent dm_disk_param.c 2>/dev/null >/dev/null || true
> ../../libparam/mod.pl dm mech_g1.modspec
> indent dm_mech_g1_param.c 2>/dev/null >/dev/null || true
> layout_g1.c: In function ‘g1_st_pbn’:
> layout_g1.c:184: warning: cast from pointer to integer of different  
> size
> layout_g1.c: In function ‘g1_ptol_nosparing’:
> layout_g1.c:492: warning: cast from pointer to integer of different  
> size
> ../../libparam/mod.pl dm layout_g1.modspec
> layout_g1.c: In function ‘g1_ptol_sectpertrackspare’:
> layout_g1.c:531: warning: cast from pointer to integer of different  
> size
> layout_g1.c: In function ‘g1_ptol_sectperrangespare’:
> layout_g1.c:702: warning: cast from pointer to integer of different  
> size
> layout_g1.c: In function ‘g1_ptol_sectperzonespare’:
> layout_g1.c:779: warning: cast from pointer to integer of different  
> size
> gcc  -g -I. -I../libparam/include -I../libddbg/include -D_DM_SOURCE - 
> Wall -Wshadow -Wno-unused -MD     -c -o sqrt.o sqrt.c
> layout_g1.c: In function ‘g1_ptol_trackspare’:
> layout_g1.c:851: warning: cast from pointer to integer of different  
> size
> indent dm_layout_g1_param.c 2>/dev/null >/dev/null || true
> ../../libparam/mod.pl dm layout_g1_zone.modspec
> indent dm_layout_g1_zone_param.c 2>/dev/null >/dev/null || true
> gcc  -g -I. -I../libparam/include -I../libddbg/include -D_DM_SOURCE - 
> Wall -Wshadow -Wno-unused -MD     -c -o marshal.o marshal.c
> ../../libparam/mod.pl dm layout_g2.modspec
> ../../libparam/mod.pl dm layout_g2_zone.modspec
> indent dm_layout_g2_param.c 2>/dev/null >/dev/null || true
> indent dm_layout_g2_zone_param.c 2>/dev/null >/dev/null || true
> gcc  -g -I. -I../libparam/include -I../libddbg/include -D_DM_SOURCE - 
> Wall -Wshadow -Wno-unused -MD     -c -o layout_g2.o layout_g2.c
> ../../libparam/mod.pl dm layout_g4.modspec
> gcc  -g -I. -I../libparam/include -I../libddbg/include -D_DM_SOURCE - 
> Wall -Wshadow -Wno-unused -MD     -c -o layout_g4.o layout_g4.c
> indent dm_layout_g4_param.c 2>/dev/null >/dev/null || true
> make -C modules
> cc -g -D_DM_SOURCE -I../../libddbg/include -I../../libparam/ 
> include   -c -o dm_disk_param.o dm_disk_param.c
> make[2]: Entering directory `/cse/grads/eestolan/disksim/disksim-4.0- 
> with-dixtrac/diskmodel/modules'
> cc -g -D_DM_SOURCE -I../../libddbg/include -I../../libparam/ 
> include   -c -o dm_disk_param.o dm_disk_param.c
> layout_g2.c: In function ‘st_pbn’:
> layout_g2.c:251: warning: cast from pointer to integer of different  
> size
> layout_g2.c: At top level:
> layout_g2.c:480: warning: initialization from incompatible pointer  
> type
> gcc  -g -I. -I../libparam/include -I../libddbg/include -D_DM_SOURCE - 
> Wall -Wshadow -Wno-unused -MD     -c -o convert.o convert.c
> cc -g -D_DM_SOURCE -I../../libddbg/include -I../../libparam/ 
> include   -c -o dm_mech_g1_param.o dm_mech_g1_param.c
> gcc  -g -I. -I../libparam/include -I../libddbg/include -D_DM_SOURCE - 
> Wall -Wshadow -Wno-unused -MD     -c -o layout_g2_load.o  
> layout_g2_load.c
> cc -g -D_DM_SOURCE -I../../libddbg/include -I../../libparam/ 
> include   -c -o dm_mech_g1_param.o dm_mech_g1_param.c
> gcc  -g -I. -I../libparam/include -I../libddbg/include -D_DM_SOURCE - 
> Wall -Wshadow -Wno-unused -MD     -c -o layout_g4_load.o  
> layout_g4_load.c
> cc -g -D_DM_SOURCE -I../../libddbg/include -I../../libparam/ 
> include   -c -o dm_layout_g1_param.o dm_layout_g1_param.c
> cc -g -D_DM_SOURCE -I../../libddbg/include -I../../libparam/ 
> include   -c -o dm_layout_g1_zone_param.o dm_layout_g1_zone_param.c
> cc -g -D_DM_SOURCE -I../../libddbg/include -I../../libparam/ 
> include   -c -o dm_layout_g1_param.o dm_layout_g1_param.c
> cc -g -D_DM_SOURCE -I../../libddbg/include -I../../libparam/ 
> include   -c -o dm_layout_g1_zone_param.o dm_layout_g1_zone_param.c
> cc -g -D_DM_SOURCE -I../../libddbg/include -I../../libparam/ 
> include   -c -o dm_layout_g2_param.o dm_layout_g2_param.c
> cc -g -D_DM_SOURCE -I../../libddbg/include -I../../libparam/ 
> include   -c -o dm_layout_g2_zone_param.o dm_layout_g2_zone_param.c
> cc -g -D_DM_SOURCE -I../../libddbg/include -I../../libparam/ 
> include   -c -o dm_layout_g4_param.o dm_layout_g4_param.c
> ../../libparam/make_modules_h.pl dm *.modspec > modules.h
> cc -g -D_DM_SOURCE -I../../libddbg/include -I../../libparam/ 
> include   -c -o dm_layout_g2_param.o dm_layout_g2_param.c
> cc -g -D_DM_SOURCE -I../../libddbg/include -I../../libparam/ 
> include   -c -o dm_layout_g2_zone_param.o dm_layout_g2_zone_param.c
> cc -g -D_DM_SOURCE -I../../libddbg/include -I../../libparam/ 
> include   -c -o dm_layout_g4_param.o dm_layout_g4_param.c
> make[2]: Leaving directory `/cse/grads/eestolan/disksim/disksim-4.0- 
> with-dixtrac/diskmodel/modules'
> mkdir -p include/diskmodel/modules
> cp -p dm.h dm_types.h dm_config.h marshal.h include/diskmodel
> ../../libparam/make_modules_h.pl dm *.modspec > modules.h
> cp -p modules/*.h include/diskmodel/modules
> make[2]: Leaving directory `/cse/grads/eestolan/disksim/disksim-4.0- 
> with-dixtrac/diskmodel/modules'
> mkdir -p include/diskmodel/modules
> cp -p dm.h dm_types.h dm_config.h marshal.h include/diskmodel
> cp -p modules/*.h include/diskmodel/modules
> gcc  -g -I. -I../libparam/include -I../libddbg/include -D_DM_SOURCE - 
> Wall -Wshadow -Wno-unused -MD     -c -o mech_g1_load.o mech_g1_load.c
> gcc  -g -I. -I../libparam/include -I../libddbg/include -D_DM_SOURCE - 
> Wall -Wshadow -Wno-unused -MD     -c -o layout_g1_load.o  
> layout_g1_load.c
> gcc  -g -I. -I../libparam/include -I../libddbg/include -D_DM_SOURCE - 
> Wall -Wshadow -Wno-unused -MD     -c -o dm_load.o dm_load.c
> mech_g1_load.c: In function ‘dm_mech_g1_seek_init’:
> mech_g1_load.c:323: warning: format ‘%lld’ expects type ‘long long  
> int’, but argument 3 has type ‘dm_time_t’
> mech_g1_load.c:323: warning: format ‘%lld’ expects type ‘long long  
> int’, but argument 4 has type ‘dm_time_t’
> mech_g1_load.c:323: warning: format ‘%lld’ expects type ‘long long  
> int’, but argument 5 has type ‘dm_time_t’
> make -C modules
> make[2]: Entering directory `/cse/grads/eestolan/disksim/disksim-4.0- 
> with-dixtrac/diskmodel/modules'
> make[2]: Nothing to be done for `all'.
> make[2]: Leaving directory `/cse/grads/eestolan/disksim/disksim-4.0- 
> with-dixtrac/diskmodel/modules'
> Linking libdiskmodel.a modules/*.o mech_g1_load.o layout_g1_load.o  
> dm_load.o convert.o layout_g2_load.o layout_g4_load.o
> ar cru libdiskmodel.a mech_g1_seektime.o mech_g1.o layout_g1.o  
> sqrt.o marshal.o layout_g2.o layout_g4.o  modules/*.o mech_g1_load.o  
> layout_g1_load.o dm_load.o convert.o layout_g2_load.o layout_g4_load.o
> mkdir -p lib
> cp -p libdiskmodel.a lib
> make -C tests
> make[2]: Entering directory `/cse/grads/eestolan/disksim/disksim-4.0- 
> with-dixtrac/diskmodel/tests'
> cc -g -I../../diskmodel/include -I../../libparam/include -I../../ 
> libddbg/include   -c -o driver.o driver.c
> cc -g -I../../diskmodel/include -I../../libparam/include -I../../ 
> libddbg/include -o layout_simple layout_simple.c driver.o -L../../ 
> diskmodel/lib -ldiskmodel -L../../libparam/lib -lparam -L../../ 
> libddbg/lib -lddbg
> cc -g -I../../diskmodel/include -I../../libparam/include -I../../ 
> libddbg/include -o layout_simple_0t layout_simple_0t.c driver.o - 
> L../../diskmodel/lib -ldiskmodel -L../../libparam/lib -lparam - 
> L../../libddbg/lib -lddbg
> cc -g -I../../diskmodel/include -I../../libparam/include -I../../ 
> libddbg/include -o layout_track layout_track.c driver.o -L../../ 
> diskmodel/lib -ldiskmodel -L../../libparam/lib -lparam -L../../ 
> libddbg/lib -lddbg
> cc -g -I../../diskmodel/include -I../../libparam/include -I../../ 
> libddbg/include -o layout_raw layout_raw.c driver.o -L../../ 
> diskmodel/lib -ldiskmodel -L../../libparam/lib -lparam -L../../ 
> libddbg/lib -lddbg
> cc -g -I../../diskmodel/include -I../../libparam/include -I../../ 
> libddbg/include -o layout_bogon layout_bogon.c driver.o -L../../ 
> diskmodel/lib -ldiskmodel -L../../libparam/lib -lparam -L../../ 
> libddbg/lib -lddbg
> cc -g -I../../diskmodel/include -I../../libparam/include -I../../ 
> libddbg/include -o layout_skew layout_skew.c driver.o -L../../ 
> diskmodel/lib -ldiskmodel -L../../libparam/lib -lparam -L../../ 
> libddbg/lib -lddbg
> cc -g -I../../diskmodel/include -I../../libparam/include -I../../ 
> libddbg/include -o mech_seek mech_seek.c driver.o -L../../diskmodel/ 
> lib -ldiskmodel -L../../libparam/lib -lparam -L../../libddbg/lib - 
> lddbg
> rm driver.o
> make[2]: Leaving directory `/cse/grads/eestolan/disksim/disksim-4.0- 
> with-dixtrac/diskmodel/tests'
> make[1]: Leaving directory `/cse/grads/eestolan/disksim/disksim-4.0- 
> with-dixtrac/diskmodel'
> make -C memsmodel
> make[1]: Entering directory `/cse/grads/eestolan/disksim/disksim-4.0- 
> with-dixtrac/memsmodel'
> make -C modules
> gcc -Wall -Wno-unused -MD -c -g -DASSERTS  -I../src// -I../ -I../ 
> src//src mems_seektest.c -o mems_seektest.o
> make[2]: Entering directory `/cse/grads/eestolan/disksim/disksim-4.0- 
> with-dixtrac/memsmodel/modules'
> ../../libparam/mod.pl memsmodel mems.modspec
> make[2]: *** No rule to make target `memsmodel_mems_param.h', needed  
> by `modules.h'.  Stop.
> make[2]: *** Waiting for unfinished jobs....
> gcc -Wall -Wno-unused -MD -c -g -DASSERTS  -I../src// -I../ -I../ 
> src//src mems_internals.c -o mems_internals.o
> gcc -Wall -Wno-unused -MD -c -g -DASSERTS  -I../src// -I../ -I../ 
> src//src mems_piecewise_seek.c -o mems_piecewise_seek.o
> indent memsmodel_mems_param.c || true
> make[2]: Leaving directory `/cse/grads/eestolan/disksim/disksim-4.0- 
> with-dixtrac/memsmodel/modules'
> make[1]: *** [modules/*.o] Error 2
> make[1]: *** Waiting for unfinished jobs....
> make[1]: Leaving directory `/cse/grads/eestolan/disksim/disksim-4.0- 
> with-dixtrac/memsmodel'
> make: *** [all] Error 2
>
> _______________________________________________
> Disksim-users mailing list
> Disksim-users at ece.cmu.edu
> https://sos.ece.cmu.edu/mailman/listinfo/disksim-users




More information about the Disksim-users mailing list