Free Pascalが最近どうなってるのかなーと思って試してました。
Free Pascal - Advanced open source Pascal compiler for Pascal and Object Pascal - Home Page
先日作成したファイル分割のプログラムをFree Pascal Compiler(FPC)でコンパイルしようとしました。
FPCのバージョンは2.6.0です。
FPCにはDelphi互換モードがあり、これを使うとDelphiの文法に対応してくれます。
で、まあそのままではやっぱりダメだったので、以下の点を変更しました。
- namespaceに対応していないためユニット名をドット無しの名前に変更
- FindCmdLineSwitch関数の4引数のオーバーロードがないのでParamStrで代用
ソースコードはbitbucketのリポジトリにfpcブランチでコミットしています。
tokibito / filesplit / source / — Bitbucket
実行結果
手元のUbuntu12.04(64bit)のVM上でコンパイルできました。Windows用のFPCでもコンパイルできました。動作も問題なさそう。
$ make fpc fpc -Mdelphi filesplit.dpr Free Pascal Compiler version 2.6.0 [2011/12/23] for x86_64 Copyright (c) 1993-2011 by Florian Klaempfl and others Target OS: Linux for x86-64 Compiling filesplit.dpr Compiling ./Main.pas Compiling ./SplitFile.pas Linking filesplit /usr/bin/ld: warning: link.res contains output sections; did you forget -T? 274 lines compiled, 0.2 sec $ ls -l filesplit -rwxrwxr-x 1 tokibito tokibito 653112 Jan 7 21:08 filesplit $ ./filesplit -s 200000 filesplit Split size: 200000 Target file: filesplit Creating filesplit.000... Creating filesplit.001... Creating filesplit.002... Creating filesplit.003...