70778


cygwinでminisatを使ってみたいです。  
[http://web.cecs.pdx.edu/~hook/logicw11/Assignments/MinisatOnWindows.html](http://web.cecs.pdx.edu/%7Ehook/logicw11/Assignments/MinisatOnWindows.html)
のページを見て  
<http://minisat.se/MiniSat.html> からMiniSat_v1.14_cygwinをダウンロードしました。  
/bin/minisat.exeにリネームしminisat.exeをダブルクリックしてみましたが

アプリケーションエラー アプリケーションを正しく起動できませんでした。（0xc000007b)。  
[OK]をクリックしてアプリケーションを閉じてください。

というエラーダイアログが出てしまいます。  
どうすればminisatを使えるようになるでしょうか？  
OSはwindows10 pro 64bitです。  
cygwinはsetup version 2.905(64bit)というのでインストールしました。


CC BY-SA 4.0
2020-09-28T06:11:05.210
70775
2020-09-28T07:54:00.787
18637
question
cygwin
cygwinでminisatが使いたい


当該 `MiniSat_v1.14_cygwin` ファイルなのですが

[code]

    $ file MiniSat_v1.14_cygwin
    MiniSat_v1.14_cygwin: PE32 executable (console) Intel 80386, for MS Windows
    
[/code]

となっており PE32 つまり cygwin 32bit 版でビルドされています。よって cygwin 64bit 版ではこれを動かすことはできません。
cygwin 64bit 版の EXE は PE32+ でなければならないのです。

[code]

    $ file /bin/gcc.exe
    /bin/gcc.exe: PE32+ executable (console) x86-64 (stripped to external PDB), for MS Windows
    
[/code]

んで <http://www.cygwin.com> トップページによると cygwin 32bit
版はアドレス空間が狭すぎて大規模プログラムが実行できないからこれが絶対に必要な場合以外は使わないでねとあります。何が何でも MiniSat
を動かしたい、他の cygwin プログラムは動かなくてよい、という状況であるなら cygwin 32bit 版をインストールしてみてください。

あるいは minisat の google groups で cygwin 64bit 版をビルドしてとお願いするか、自分でビルドするか、でしょう。


CC BY-SA 4.0
2020-09-28T07:54:00.787
70778
2020-09-28T07:54:00.787
8589
70775
answer