flock() je funkcija koja se koristi kod pristupa nekom fajlu, a postoji mogucnost da u isto vreme neki drugi proces pristupi istom fajlu.
Ukoliko bi dva procesa naprimer istovremeno pokusala da pisu u isti fajl, doslo bi do zbrke i fajl i podaci u njemu bili bi osteceni. Da bi se ovo izbeglo koristi se flock() (ime je nastalo od file lock - zakljucavanje fajla) i sustina je da proces koji pristupa fajlu prvo ga "zakljuca", pa kad neki drugi proces pokusa da otvori ovako zakljucani fajl nece uspeti, nego mora da ceka dok prvi proces zavrsi i otkljuca fajl. Na taj nacin se obezbedjuje da u jednom trenutku samo jedan proces moze da pise u odredjeni fajl.
Sto se konkretno tvog problema tice Perl-ov flock() koristi unix sistemske pozive flock, lockf, fcntl, i ukoliko one ne postoje na sistemu, dobije se fatal error. S obzirom da ovo postoji samo na naprednijim operativnim sistemima, flock() jednostavno ne radi na windows platformama.
Mozes da izbacis delove koji koriste flock (apsolutno ti ne preporucujem, jer sigurno postoji dobar razlog zasto je tu uopste stavljen flock) ili da izmenis program tako da simuliras flock, a kako to da uradis pogledaj temu pre ove:
http://www.elitesecurity.org/tema/39859
Never trust an operating system you don't have sources for.