Just discovered that split (version 1.6) on Mac OS X Version 10.4.8 (PPC) does not handle files greater than 2Gb.

I’ve found two work arounds to this problem, the first is the one I typically do, but it requires darwin (Broken link http://darwinports.opendarwin.org/) ports to be installed, I happen to have this installed everywhere anyway.

Darwin Ports

Simply ‘port install coreutils’:

% port search coreutils
coreutils                      sysutils/coreutils 5.97         GNU File, Shell, and Text utilities
% sudo port install coreutils
--->  Fetching coreutils
--->  Attempting to fetch coreutils-5.97.tar.bz2 from ftp://ftp.gnu.org/gnu/coreutils
--->  Verifying checksum(s) for coreutils
--->  Extracting coreutils
--->  Configuring coreutils
--->  Building coreutils with target all
--->  Staging coreutils into destroot
--->  Installing coreutils 5.97_0
--->  Activating coreutils 5.97_0
--->  Cleaning coreutils

Thats it, the only caveat is the new GNU split is named gsplit. So remember to type that when you want to split files over 2Gb!

Compile from source

The second method was found here. I like to keep things in my own logbook so I’ve put a copy of the instructions below

  1. Download the latest NetBSD split source from here
  2. Add the following somewhere near the top: #include
  3. Compile with either
  • For your architecture cc -Os -o split split.c
  • Or a Universal binary: cc -Os -isysroot /Developer/SDKs/MacOSX10.4u.sdk -arch i386 -arch ppc -o split split.c
  1. Copy the binary in place:
$ sudo mv /usr/bin/split /usr/bin/split.apple
$ sudo cp split /usr/bin/split
$ sudo chmod ugo-w /usr/bin/split
$ sudo chmod ugo+rx /usr/bin/split
$ sudo chown root:wheel /usr/bin/split