Checking if your kit is complete... Looks good Writing Makefile for Linux::CDROM cp lib/Linux/CDROM.pm blib/lib/Linux/CDROM.pm AutoSplitting blib/lib/Linux/CDROM.pm (blib/lib/auto/Linux/CDROM) cp lib/Linux/CDROM/Cookbook.pm blib/lib/Linux/CDROM/Cookbook.pm /home/cpanrun/ia64-lp64/build/5.8.2/bin/perl /home/cpanrun/ia64-lp64/build/5.8.2/lib/5.8.2/ExtUtils/xsubpp -typemap /home/cpanrun/ia64-lp64/build/5.8.2/lib/5.8.2/ExtUtils/typemap -typemap typemap CDROM.xs > CDROM.xsc && mv CDROM.xsc CDROM.c cc -c -I. -D_POSIX_C_SOURCE=199506L -D_REENTRANT -Ae -D_HPUX_SOURCE -Wl,+vnocompatwarnings +DD64 -DNO_HASH_SEED -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -fast +DSitanium2 +Ofltacc=strict -DVERSION=\"0.02\" -DXS_VERSION=\"0.02\" +Z "-I/home/cpanrun/ia64-lp64/build/5.8.2/lib/5.8.2/IA64.ARCHREV_0-thread-multi-LP64/CORE" CDROM.c Error 112: "CDROM.xs", line 12 # Include file not found. #include ^^^^^^^^^^^^^^^ Error 628: "CDROM.xs", line 41 # "cdrom_addr CDROM_ADDR::addr" ["CDROM.xs", line 41] cannot be defined to have an incomplete type. union cdrom_addr addr; ^^^^ Error 239: "CDROM.xs", line 41 # A struct/union shall not contain a member with incomplete type. union cdrom_addr addr; ^^^^ Error 537: "CDROM.xs", line 41 # Cannot create a 'cdrom_addr' object; union cdrom_addr has only been seen as an incomplete declaration. union cdrom_addr addr; ^^^^ Error 172: "CDROM.xs", line 51 # Undeclared variable 'CD_SECS'. return (((m * CD_SECS) + s) * CD_FRAMES + f) - CD_MSF_OFFSET; ^^^^^^^ Error 172: "CDROM.xs", line 54 # Undeclared variable 'CD_FRAMES'. *f = lba % CD_FRAMES; ^^^^^^^^^ Error 172: "CDROM.xs", line 55 # Undeclared variable 'CD_FRAMES'. lba /= CD_FRAMES; ^^^^^^^^^ Error 172: "CDROM.xs", line 57 # Undeclared variable 'CD_SECS'. *s = lba % CD_SECS; ^^^^^^^ Error 172: "CDROM.xs", line 58 # Undeclared variable 'CD_SECS'. *m = lba / CD_SECS; ^^^^^^^ Error 172: "CDROM.xs", line 69 # Undeclared variable 'CDROM_LBA'. if (self->type == CDROM_LBA) ^^^^^^^^^ Error 548: "CDROM.xs", line 71 # The expression on the left side of the '.' (dot member access operator) must be a completed struct object type; the type of the left side is 'tentative union cdrom_addr' and 'union cdrom_addr' has not been defined yet. self->addr.lba = msf_to_lba(self->addr.msf.minute, self->addr.ms ^^^^^^^^^^ Error 172: "CDROM.xs", line 72 # Undeclared variable 'CDROM_LBA'. self->type = CDROM_LBA; ^^^^^^^^^ Error 699: "CDROM.xs", line 72 # Error limit reached; halting compilation. self->type = CDROM_LBA; ^^^^^^^^^ make: *** [CDROM.o] Error 2