2004年03月14日

Linux から Windows への perl スクリプトの移植

Linux で動作するように書かれた Perl のスクリプトの中には OSの機能の違いから Windows 上では動作しないものも多い。
ActivePerl の開発元の ActiveState 社のサイトには "Implementation Quirks" という記事があり、実装されていない関数として、以下のようなものが挙げられている。これらの関数を使っているものはそのままでは動かないだろう。

プロセス関係
alarm(), getpgrp(), getppid(), getpriority(), setpgrp(), setpriority()

ユーザやグループに関するもの
endgrent(), endpwent(), getgrent(), getgrgid(), getgrnam(), getpwent(), getpwnam(), getpwuid(), setgrent(), setpwent()

System V IPC 関係
msgctl(), msgget(), msgrcv(), msgsnd(), semctl(), semget(), semop(), shmctl(), shmget(), shmread(), shmwrite()

ファイルやディレクトリに関するもの
link(), symlink(), chroot()

入出力に関するもの
syscall()

ネットワーク関係
getnetbyname(), getnetbyaddr(), getnetent(), getprotoent(), getservent(), sethostent(), setnetent(), setprotoent(), setservent(), endhostent(), endnetent(), endprotoent(), endservent(), socketpair()


Microsoft TechNet にも「Linux から Windows 2000 へのスクリプトの移植性」という記事があり、参考になる。 Posted by augustus at 2004年03月14日 11:00 | TrackBack
Comments
Post a comment









Remember personal info?