2010年
2月
1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28

setup diary

2007|12|
2008|01|02|03|04|05|06|07|08|09|10|11|12|
2009|01|02|03|04|05|06|07|08|09|10|11|12|
2010|01|02|03|04|05|06|07|08|09|10|11|12|
2011|01|02|03|04|05|06|07|08|09|10|11|12|
2012|01|02|03|04|05|06|07|08|10|11|12|
2013|01|02|03|04|05|06|07|08|09|10|11|12|
2014|01|02|03|04|06|08|11|
2015|01|02|03|04|05|06|07|08|10|11|12|
2016|01|02|03|04|05|06|07|08|09|10|11|12|
2017|01|02|03|04|05|06|07|08|09|10|11|12|
2018|01|02|03|04|05|06|07|08|09|10|11|12|
2019|01|02|03|04|05|06|07|08|09|10|11|12|
2020|01|02|03|04|05|06|07|08|09|10|11|12|
2021|01|02|03|04|05|06|07|08|09|10|11|12|
2022|01|02|03|04|05|06|07|08|09|10|11|12|
2023|01|02|03|04|05|06|07|08|09|10|11|

2010-02-28 wineのシリアルポート

_ 最近のwineは未対応なのか

windowsからシリアルポート(RS232C)を使って装置をコントロールするプログラムがあったのだが、古いwindowsはサポートが切れてきたし、networkにつなぐのは不安なので、wineを使ってlinux上で動かしていた。数年前にセットアップしたものだったので、debian etchぐらいで動いていたのだと思う。そろそろOSを新しくしようと思ってLennyにしてみたが、肝心のプログラムが動かなくなってしまった。色々と調べていたら、比較的新しいwineではシリアルポートが動かなかったとかいう報告があった。プログラムが動いていた古いwineを
wine --version
で確認するとwine-0.9.25だった。一方、lennyのものは1.0.1のようだ。原因はよく分からないし、シリアルポートを使っている人は少なくなってしまったのか、インターネット上でもあまり情報が見つからなかったので、古いwineをコンパイルしてインストールすることにした。とりあえず、以前と同じversionのソースを取ってきて展開してREADMEを読むと、
./tools/wineinstall
とすると、簡単にインストールしてくれるようだ。何度もパッケージが無いと警告されて、その度に必要なパッケージをインストールたが、結局build-essential,flex,bison,libx11-dev,libxext-devを入れたら、無事インストールできた。さて、問題のプログラムはというと、無事に起動した。つまり、新しいwineだとシリアルポートをきちんと扱えていないということなのだろう。どのversionからダメになったのだろうか。その後、他の人が使い易いように設定をしたりしていたが、なぜかnetworkが認識できていないことに気がついた。まあ、どうせ四月になったら別のPCに入れ替えるつもりだったし、まあいいか。