To:[EMAIL PROTECTED] Hi all, I am trying to compile this database programme - mumps10freebsd32x86.tgz , ("MUMPS" can be download from www.mumps.org) which currently works only on i386 FreeBSD 3.2, to an Alpha machine running on FreeBSD 4.0 CURRENT-20000101. The Alpha consists of Digital Alphaserver 200 4/166. Making all in compile cc -I../include -Wall -g -O0 -fvolatile -DPARANOID -DTESTING -c dollar.c cc -I../include -Wall -g -O0 -fvolatile -DPARANOID -DTESTING -c eval.c cc -I../include -Wall -g -O0 -fvolatile -DPARANOID -DTESTING -c localvar.c cc -I../include -Wall -g -O0 -fvolatile -DPARANOID -DTESTING -c parse.c cc -I../include -Wall -g -O0 -fvolatile -DPARANOID -DTESTING -c routine.c Making all in database cc -I../include -Wall -g -O0 -fvolatile -DPARANOID -DTESTING -c db_buffer.c cc -I../include -Wall -g -O0 -fvolatile -DPARANOID -DTESTING -c db_daemon.c cc -I../include -Wall -g -O0 -fvolatile -DPARANOID -DTESTING -c db_get.c cc -I../include -Wall -g -O0 -fvolatile -DPARANOID -DTESTING -c db_ic.c db_ic.c: In function `ic_map': db_ic.c:557: warning: cast from pointer to integer of different size db_ic.c:557: warning: cast from pointer to integer of different size cc -I../include -Wall -g -O0 -fvolatile -DPARANOID -DTESTING -c db_kill.c cc -I../include -Wall -g -O0 -fvolatile -DPARANOID -DTESTING -c db_locate.c cc -I../include -Wall -g -O0 -fvolatile -DPARANOID -DTESTING -c db_main.c cc -I../include -Wall -g -O0 -fvolatile -DPARANOID -DTESTING -c db_set.c cc -I../include -Wall -g -O0 -fvolatile -DPARANOID -DTESTING -c db_uci.c cc -I../include -Wall -g -O0 -fvolatile -DPARANOID -DTESTING -c db_util.c db_util.c: In function `Copy_data': db_util.c:391: warning: cast from pointer to integer of different size db_util.c:392: warning: cast from pointer to integer of different size db_util.c: In function `Allign_record': db_util.c:447: warning: cast from pointer to integer of different size db_util.c:448: warning: cast from pointer to integer of different size cc -I../include -Wall -g -O0 -fvolatile -DPARANOID -DTESTING -c db_view.c Making all in init cc -I../include -Wall -g -O0 -fvolatile -DPARANOID -DTESTING -c init_create.c cc -I../include -Wall -g -O0 -fvolatile -DPARANOID -DTESTING -c init_run.c cc -I../include -Wall -g -O0 -fvolatile -DPARANOID -DTESTING -c init_start.c init_start.c: In function `INIT_Start': init_start.c:194: warning: cast from pointer to integer of different size init_start.c:194: warning: cast to pointer from integer of different size Making all in runtime cc -I../include -Wall -g -O0 -fvolatile -DPARANOID -DTESTING -c runtime_attn.c runtime_attn.c: In function `DoInfo': runtime_attn.c:89: warning: int format, different type arg (arg 3) cc -I../include -Wall -g -O0 -fvolatile -DPARANOID -DTESTING -c runtime_buildmvar.c cc -I../include -Wall -g -O0 -fvolatile -DPARANOID -DTESTING -c runtime_debug.c cc -I../include -Wall -g -O0 -fvolatile -DPARANOID -DTESTING -c runtime_func.c cc -I../include -Wall -g -O0 -fvolatile -DPARANOID -DTESTING -c runtime_pattern.c cc -I../include -Wall -g -O0 -fvolatile -DPARANOID -DTESTING -c runtime_run.c /tmp/ccaN3150.s: Assembler messages: /tmp/ccaN3150.s:27822: Error: unknown opcode `fnstenv' /tmp/ccaN3150.s:27857: Error: unknown opcode `fldenv' *** Error code 1 Stop in /usr/home/maxy/mumps/runtime. *** Error code 1 Stop in /usr/home/maxy/mumps. a snip from the "warning" files db_ic.c SemOp(SEM_GLOBAL, -curr_lock); // free lock c++; // point at next off = 0; // now start at 0 if (flag == -3) // daemon? line 557: { systab->vol[volnum - 1]->upto = ((u_int) e - (u_int) c) << 3; } db_util.c if (isdata) // if data { if (c->len == NODE_UNDEFINED) // junk record? { continue; // ignore it } } else // if a pointer line 391: { if ((int) c & 3) // if not alligned line 392: { c = (cstring *) &c->buf[2 - ((int) c & 3)]; // allign } if ((*(int *) c) == PTR_UNDEFINED) // see if that's junk { continue; // ignore it } } db_util.c //----------------------------------------------------------------------------- // Function: Allign_record // Descript: Ensure that record is on a four byte boundary // Input(s): none // Return: none // Note: Must only be called for pointer/directory blocks // void Allign_record() // allign record (int) line 447: { if ((int) record & 3) // if not alligned line 448: { record = (cstring *) &record->buf[2 - ((int) record & 3)]; // allign } return; // exit } init_start.c bzero(systab, share_size); // zot the lot systab->jobtab (jobtab *)&systab->last_blk_used[jobs + 1]; // setup jobtab pointer systab->maxjob = jobs; // save max jobs systab->start_user = (int) getpid(); // remember who started this systab->lockstart (void *)((void *)systab->jobtab + (sizeof(jobtab)*jobs)); //locktab systab->locksize = locksize; // the size systab->lockhead = NULL; // no locks currently systab->lockfree = (locktab *) systab->lockstart; // free space systab->lockfree->fwd_link = NULL; // only one systab->lockfree->size = locksize; // the whole space systab->lockfree->job = -1; // means free systab->vol[0] (vol_def *) ((void *)systab + sjlt_size);// jump to start of // volume set memory systab->vol[0]->vollab (label_block *) ((void *)systab->vol[0] + sizeof(vol_def)); // and point to label blk systab->vol[0]->map (void*)((void *)systab->vol[0]->vollab + sizeof(label_block)); // and point to map systab->vol[0]->first_free systab->vol[0]->map; // init first free systab->vol[0]->gbd_head (gbd *) ((void *)systab->vol[0]->vollab + hbuf[2]); // gbds systab->vol[0]->num_gbd = n_gbd; // number of gbds systab->vol[0]->global_buf (void *) &systab->vol[0]->gbd_head[n_gbd]; //glob buffs line 194: systab->vol[0]->zero_block (void *)((int)systab->vol[0]->global_buf+(gmb*MBYTE)); // pointer to zero blk systab->vol[0]->rbd_head (void *) ((void*)systab->vol[0]->zero_block + hbuf[3]); //rbds systab->vol[0]->rbd_end ((void *)systab + share_size); // end of share systab->vol[0]->shm_id = shar_mem_id; // set up share id systab->sem_id = sem_id; // set up semaphore id systab->vol[0]->map_dirty_flag = 0; // clear dirty map flag runtime_attn.c // DoInfo() - look after a control T // void DoInfo() { int i; // a handy int int j; // and another char ct[400]; // some space for control t char *p; // a handy pointer mvar *var; // and another bcopy("\033\067\033[99;1H",ct,9); // start off i = 9; // next char line 89: i += sprintf(&ct[i],"%d", partab.jobtab - systab->jobtab + 1); i += sprintf(&ct[i]," (%d) ", partab.jobtab->pid); p = (char *) &partab.jobtab->dostk[partab.jobtab->cur_do].rounam; // point at routine name for (j = 0; (j < 8) && (p[j]); ct[i++] = p[j++]); // copy it i += sprintf(&ct[i]," Cmds: %d ", partab.jobtab->commands); i += sprintf(&ct[i],"Grefs: %d ", partab.jobtab->grefs); var = &partab.jobtab->last_ref; // point at $R if (var->name.var_cu[0] != '\0') // something there? i += UTIL_String_Mvar(var, &ct[i], 32767); // decode it if (i > 89) i = 89; // fit on terminal bcopy("\033\133\113\033\070\0", &ct[i], 6); // and the trailing bit fprintf(stderr, "%s", ct); // output it return; // all done } Thanks for your help. Max To Unsubscribe: send mail to [EMAIL PROTECTED] with "unsubscribe freebsd-current" in the body of the message