Can't build ext2fs target ext2fsx source

Help
2007-08-18
2013-05-02
  • I'm running OSX 10.4.10, and trying to build with XCode 2.0 (from the 10.4 DVD), but there seem to be a bunch of odd differences between the kernel headers and what the ext2fs target in the build wants.

    For example, struct uio isn't defined, so ap->a_uio->uio_resid has to be rewritten as uio_resid(ap->a_uio) in ext2_attrlist.c, similarly, there's no definition of struct proc, and worse, there's no similar sort of accessor function for p_wchan and p_wmesg to replace the accesses to the proc structure in ext2_lockf.c. There are a few other problems, too, like there being no definition of console_user for the reference to it in ext2_attrlist.c.

    The e2fsprogs stuff seems to build OK, it's just the kernel interface I can't get to work properly.

    Do I need to get a newer XCode?

    Peter

     
    • Sounds like you are trying to build the 1.3 release on Tiger that won't work. You have to use the 1.4d source to build (and run) on Tiger.

       
    • I don't think that that's the problem. Here's the diff of what I checked out against what looks to me like the tag for the 1.4d4 source:

      $ cvs -d :pserver:anonymous@ext2fsx.cvs.sourceforge.net:/cvsroot/ext2fsx diff -r EXT2FSX_D_1_4_0_4 ext2fsx
      ? ext2fsx/.DS_Store
      ? ext2fsx/ext2fsX.xcode/prl.mode1
      ? ext2fsx/ext2fsX.xcode/prl.pbxuser
      cvs diff: Diffing ext2fsx
      cvs diff: Diffing ext2fsx/English.lproj
      cvs diff: Diffing ext2fsx/Resources
      cvs diff: Diffing ext2fsx/Resources/English.lproj
      cvs diff: Diffing ext2fsx/ext2fsX.xcode
      cvs diff: tag EXT2FSX_D_1_4_0_4 is not in file ext2fsx/ext2fsX.xcode/project.pbxproj
      cvs diff: Diffing ext2fsx/ext2fsX.xcodeproj
      cvs diff: Diffing ext2fsx/fs_bndl
      cvs diff: Diffing ext2fsx/fs_bndl/English.lproj
      cvs diff: Diffing ext2fsx/fs_bndl/French.lproj
      cvs diff: Diffing ext2fsx/fs_bndl/German.lproj
      cvs diff: Diffing ext2fsx/inst
      cvs diff: Diffing ext2fsx/pkginfo
      cvs diff: Diffing ext2fsx/src
      cvs diff: Diffing ext2fsx/src/depend
      cvs diff: Diffing ext2fsx/src/depend/disklib
      cvs diff: Diffing ext2fsx/src/depend/jaguar
      cvs diff: Diffing ext2fsx/src/depend/jaguar/kern
      cvs diff: Diffing ext2fsx/src/depend/jaguar/kern/Headers
      cvs diff: Diffing ext2fsx/src/depend/jaguar/kern/Headers/netinet
      cvs diff: Diffing ext2fsx/src/depend/jaguar/kern/Headers/netinet6
      cvs diff: Diffing ext2fsx/src/depend/jaguar/kern/Headers/netkey
      cvs diff: Diffing ext2fsx/src/depend/jaguar/kern/Headers/sys
      cvs diff: Diffing ext2fsx/src/depend/jaguar/kern/Headers/ufs
      cvs diff: Diffing ext2fsx/src/depend/jaguar/kern/Headers/ufs/ufs
      cvs diff: Diffing ext2fsx/src/depend/panther
      cvs diff: Diffing ext2fsx/src/depend/panther/kern
      cvs diff: Diffing ext2fsx/src/depend/panther/kern/Headers
      cvs diff: Diffing ext2fsx/src/depend/panther/kern/Headers/netinet
      cvs diff: Diffing ext2fsx/src/depend/panther/kern/Headers/netinet6
      cvs diff: Diffing ext2fsx/src/depend/panther/kern/Headers/netkey
      cvs diff: Diffing ext2fsx/src/depend/panther/kern/Headers/sys
      cvs diff: Diffing ext2fsx/src/depend/panther/kern/Headers/ufs
      cvs diff: Diffing ext2fsx/src/depend/panther/kern/Headers/ufs/ufs
      cvs diff: Diffing ext2fsx/src/e2fsprogs
      cvs diff: Diffing ext2fsx/src/e2fsprogs/config
      cvs diff: Diffing ext2fsx/src/e2fsprogs/contrib
      cvs diff: Diffing ext2fsx/src/e2fsprogs/debian
      cvs diff: Diffing ext2fsx/src/e2fsprogs/debian/attic
      cvs diff: Diffing ext2fsx/src/e2fsprogs/debian/attic/libs
      cvs diff: Diffing ext2fsx/src/e2fsprogs/debugfs
      cvs diff: Diffing ext2fsx/src/e2fsprogs/doc
      cvs diff: Diffing ext2fsx/src/e2fsprogs/e2fsck
      cvs diff: Diffing ext2fsx/src/e2fsprogs/ext2ed
      cvs diff: Diffing ext2fsx/src/e2fsprogs/ext2ed/doc
      cvs diff: Diffing ext2fsx/src/e2fsprogs/include
      cvs diff: Diffing ext2fsx/src/e2fsprogs/include/nonunix
      cvs diff: Diffing ext2fsx/src/e2fsprogs/include/nonunix/asm
      cvs diff: Diffing ext2fsx/src/e2fsprogs/include/nonunix/linux
      cvs diff: Diffing ext2fsx/src/e2fsprogs/include/nonunix/sys
      cvs diff: Diffing ext2fsx/src/e2fsprogs/install-utils
      cvs diff: Diffing ext2fsx/src/e2fsprogs/intl
      cvs diff: Diffing ext2fsx/src/e2fsprogs/lib
      cvs diff: Diffing ext2fsx/src/e2fsprogs/lib/blkid
      cvs diff: Diffing ext2fsx/src/e2fsprogs/lib/blkid/tests
      cvs diff: Diffing ext2fsx/src/e2fsprogs/lib/e2p
      cvs diff: Diffing ext2fsx/src/e2fsprogs/lib/e2p/dll
      cvs diff: Diffing ext2fsx/src/e2fsprogs/lib/et
      cvs diff: Diffing ext2fsx/src/e2fsprogs/lib/et/dll
      cvs diff: Diffing ext2fsx/src/e2fsprogs/lib/et/test_cases
      cvs diff: Diffing ext2fsx/src/e2fsprogs/lib/evms
      cvs diff: Diffing ext2fsx/src/e2fsprogs/lib/ext2fs
      cvs diff: Diffing ext2fsx/src/e2fsprogs/lib/ext2fs/dll
      cvs diff: Diffing ext2fsx/src/e2fsprogs/lib/ss
      cvs diff: Diffing ext2fsx/src/e2fsprogs/lib/ss/dll
      cvs diff: Diffing ext2fsx/src/e2fsprogs/lib/uuid
      cvs diff: Diffing ext2fsx/src/e2fsprogs/lib/uuid/dll
      cvs diff: Diffing ext2fsx/src/e2fsprogs/misc
      cvs diff: Diffing ext2fsx/src/e2fsprogs/po
      cvs diff: Diffing ext2fsx/src/e2fsprogs/resize
      cvs diff: Diffing ext2fsx/src/e2fsprogs/tests
      cvs diff: Diffing ext2fsx/src/e2fsprogs/tests/d_loaddump
      cvs diff: Diffing ext2fsx/src/e2fsprogs/tests/defaults
      cvs diff: Diffing ext2fsx/src/e2fsprogs/tests/e_brel_bma
      cvs diff: Diffing ext2fsx/src/e2fsprogs/tests/e_icount_normal
      cvs diff: Diffing ext2fsx/src/e2fsprogs/tests/e_icount_opt
      cvs diff: Diffing ext2fsx/src/e2fsprogs/tests/e_irel_ima
      cvs diff: Diffing ext2fsx/src/e2fsprogs/tests/f_16384_block
      cvs diff: Diffing ext2fsx/src/e2fsprogs/tests/f_8192_block
      cvs diff: Diffing ext2fsx/src/e2fsprogs/tests/f_bad_disconnected_inode
      cvs diff: Diffing ext2fsx/src/e2fsprogs/tests/f_bad_local_jnl
      cvs diff: Diffing ext2fsx/src/e2fsprogs/tests/f_badbblocks
      cvs diff: Diffing ext2fsx/src/e2fsprogs/tests/f_baddir
      cvs diff: Diffing ext2fsx/src/e2fsprogs/tests/f_baddotdir
      cvs diff: Diffing ext2fsx/src/e2fsprogs/tests/f_badinode
      cvs diff: Diffing ext2fsx/src/e2fsprogs/tests/f_badjourblks
      cvs diff: Diffing ext2fsx/src/e2fsprogs/tests/f_badorphan
      cvs diff: Diffing ext2fsx/src/e2fsprogs/tests/f_badprimary
      cvs diff: Diffing ext2fsx/src/e2fsprogs/tests/f_badroot
      cvs diff: Diffing ext2fsx/src/e2fsprogs/tests/f_badsymlinks
      cvs diff: Diffing ext2fsx/src/e2fsprogs/tests/f_badtable
      cvs diff: Diffing ext2fsx/src/e2fsprogs/tests/f_bbfile
      cvs diff: Diffing ext2fsx/src/e2fsprogs/tests/f_bbinode
      cvs diff: Diffing ext2fsx/src/e2fsprogs/tests/f_big_sparse
      cvs diff: Diffing ext2fsx/src/e2fsprogs/tests/f_bitmaps
      cvs diff: Diffing ext2fsx/src/e2fsprogs/tests/f_clear_xattr
      cvs diff: Diffing ext2fsx/src/e2fsprogs/tests/f_crashdisk
      cvs diff: Diffing ext2fsx/src/e2fsprogs/tests/f_dirlink
      cvs diff: Diffing ext2fsx/src/e2fsprogs/tests/f_dup
      cvs diff: Diffing ext2fsx/src/e2fsprogs/tests/f_dup2
      cvs diff: Diffing ext2fsx/src/e2fsprogs/tests/f_dup3
      cvs diff: Diffing ext2fsx/src/e2fsprogs/tests/f_dup_de
      cvs diff: Diffing ext2fsx/src/e2fsprogs/tests/f_dup_resize
      cvs diff: Diffing ext2fsx/src/e2fsprogs/tests/f_dupdot
      cvs diff: Diffing ext2fsx/src/e2fsprogs/tests/f_dupfsblks
      cvs diff: Diffing ext2fsx/src/e2fsprogs/tests/f_dupsuper
      cvs diff: Diffing ext2fsx/src/e2fsprogs/tests/f_end-bitmap
      cvs diff: Diffing ext2fsx/src/e2fsprogs/tests/f_expand
      cvs diff: Diffing ext2fsx/src/e2fsprogs/tests/f_ext_journal
      cvs diff: Diffing ext2fsx/src/e2fsprogs/tests/f_extra_journal
      cvs diff: Diffing ext2fsx/src/e2fsprogs/tests/f_filetype
      cvs diff: Diffing ext2fsx/src/e2fsprogs/tests/f_h_badnode
      cvs diff: Diffing ext2fsx/src/e2fsprogs/tests/f_h_badroot
      cvs diff: Diffing ext2fsx/src/e2fsprogs/tests/f_h_normal
      cvs diff: Diffing ext2fsx/src/e2fsprogs/tests/f_h_reindex
      cvs diff: Diffing ext2fsx/src/e2fsprogs/tests/f_holedir
      cvs diff: Diffing ext2fsx/src/e2fsprogs/tests/f_hurd
      cvs diff: Diffing ext2fsx/src/e2fsprogs/tests/f_illbbitmap
      cvs diff: Diffing ext2fsx/src/e2fsprogs/tests/f_illibitmap
      cvs diff: Diffing ext2fsx/src/e2fsprogs/tests/f_illitable
      cvs diff: Diffing ext2fsx/src/e2fsprogs/tests/f_imagic
      cvs diff: Diffing ext2fsx/src/e2fsprogs/tests/f_imagic_fs
      cvs diff: Diffing ext2fsx/src/e2fsprogs/tests/f_journal
      cvs diff: Diffing ext2fsx/src/e2fsprogs/tests/f_lotsbad
      cvs diff: Diffing ext2fsx/src/e2fsprogs/tests/f_lpf
      cvs diff: Diffing ext2fsx/src/e2fsprogs/tests/f_lpf2
      cvs diff: Diffing ext2fsx/src/e2fsprogs/tests/f_lpffile
      cvs diff: Diffing ext2fsx/src/e2fsprogs/tests/f_messy_inode
      cvs diff: Diffing ext2fsx/src/e2fsprogs/tests/f_miss_blk_bmap
      cvs diff: Diffing ext2fsx/src/e2fsprogs/tests/f_miss_journal
      cvs diff: Diffing ext2fsx/src/e2fsprogs/tests/f_misstable
      cvs diff: Diffing ext2fsx/src/e2fsprogs/tests/f_mke2fs2b
      cvs diff: Diffing ext2fsx/src/e2fsprogs/tests/f_noroot
      cvs diff: Diffing ext2fsx/src/e2fsprogs/tests/f_okgroup
      cvs diff: Diffing ext2fsx/src/e2fsprogs/tests/f_orphan
      cvs diff: Diffing ext2fsx/src/e2fsprogs/tests/f_overfsblks
      cvs diff: Diffing ext2fsx/src/e2fsprogs/tests/f_preen
      cvs diff: Diffing ext2fsx/src/e2fsprogs/tests/f_recnect_bad
      cvs diff: Diffing ext2fsx/src/e2fsprogs/tests/f_reconnect
      cvs diff: Diffing ext2fsx/src/e2fsprogs/tests/f_resize_inode
      cvs diff: Diffing ext2fsx/src/e2fsprogs/tests/f_salvage_dir
      cvs diff: Diffing ext2fsx/src/e2fsprogs/tests/f_selinux
      cvs diff: Diffing ext2fsx/src/e2fsprogs/tests/f_special_ea
      cvs diff: Diffing ext2fsx/src/e2fsprogs/tests/f_summary_counts
      cvs diff: Diffing ext2fsx/src/e2fsprogs/tests/f_swapfs
      cvs diff: Diffing ext2fsx/src/e2fsprogs/tests/f_valid_ea_in_inode
      cvs diff: Diffing ext2fsx/src/e2fsprogs/tests/f_zero_group
      cvs diff: Diffing ext2fsx/src/e2fsprogs/tests/f_zero_super
      cvs diff: Diffing ext2fsx/src/e2fsprogs/tests/m_dasd_bs
      cvs diff: Diffing ext2fsx/src/e2fsprogs/tests/m_large_file
      cvs diff: Diffing ext2fsx/src/e2fsprogs/tests/m_meta_bg
      cvs diff: Diffing ext2fsx/src/e2fsprogs/tests/m_no_opt
      cvs diff: Diffing ext2fsx/src/e2fsprogs/tests/m_raid_opt
      cvs diff: Diffing ext2fsx/src/e2fsprogs/tests/m_std
      cvs diff: Diffing ext2fsx/src/e2fsprogs/tests/progs
      cvs diff: Diffing ext2fsx/src/e2fsprogs/tests/progs/test_data
      cvs diff: Diffing ext2fsx/src/e2fsprogs/tests/r_move_itable
      cvs diff: Diffing ext2fsx/src/e2fsprogs/tests/r_resize_inode
      cvs diff: Diffing ext2fsx/src/e2fsprogs/util
      cvs diff: Diffing ext2fsx/src/e2undel
      cvs diff: Diffing ext2fsx/src/extfsmgr
      cvs diff: Diffing ext2fsx/src/extfsmgr/coremgr
      cvs diff: Diffing ext2fsx/src/extfsmgr/coremgr/Resources
      cvs diff: Diffing ext2fsx/src/extfsmgr/coremgr/Resources/de.lproj
      cvs diff: Diffing ext2fsx/src/extfsmgr/coremgr/Resources/en.lproj
      cvs diff: Diffing ext2fsx/src/extfsmgr/coremgr/Resources/fr.lproj
      cvs diff: Diffing ext2fsx/src/extfsmgr/efsprobe
      cvs diff: Diffing ext2fsx/src/extfsmgr/efssmartd
      cvs diff: Diffing ext2fsx/src/extfsmgr/efssmartd/Resources
      cvs diff: Diffing ext2fsx/src/extfsmgr/efssmartd/Resources/SMARTAlert.nib
      cvs diff: Diffing ext2fsx/src/extfsmgr/prefpane
      cvs diff: Diffing ext2fsx/src/extfsmgr/prefpane/Resources
      cvs diff: Diffing ext2fsx/src/extfsmgr/prefpane/Resources/English.lproj
      cvs diff: Diffing ext2fsx/src/extfsmgr/prefpane/Resources/ExtFSManager.nib
      cvs diff: Diffing ext2fsx/src/extfsmgr/prefpane/Resources/de.lproj
      cvs diff: Diffing ext2fsx/src/extfsmgr/prefpane/Resources/fr.lproj
      cvs diff: Diffing ext2fsx/src/gnu
      cvs diff: Diffing ext2fsx/src/gnu/ext2fs
      cvs diff: Diffing ext2fsx/src/gnu/ext2fs/linux
      cvs diff: Diffing ext2fsx/src/gnu/ext2fs/linux/fs
      cvs diff: Diffing ext2fsx/src/gnu/ext2fs/linux/fs/ext3
      cvs diff: Diffing ext2fsx/src/gnu/ext2fs/linux/include
      cvs diff: Diffing ext2fsx/src/gnu/ext2fs/linux/include/linux
      cvs diff: Diffing ext2fsx/src/gnu/ext2fs/linux/lib
      cvs diff: Diffing ext2fsx/src/kern
      cvs diff: Diffing ext2fsx/src/mount_ext2fs
      cvs diff: Diffing ext2fsx/src/newfs_ext2
      cvs diff: Diffing ext2fsx/src/util
      cvs diff: Diffing ext2fsx/src/xnu
      cvs diff: Diffing ext2fsx/src/xnu/bsd
      cvs diff: Diffing ext2fsx/src/xnu/bsd/miscfs
      cvs diff: Diffing ext2fsx/src/xnu/bsd/miscfs/fifofs
      cvs diff: Diffing ext2fsx/src/xnu/bsd/miscfs/specfs
      cvs diff: Diffing ext2fsx/test
      $