私は、VisualC++で動作することを目的としたかなり無愛想な古いC++ベースのモジュールであるWin32::Setupsupを、StrawberryPerlとそれが使用するMinGWGCCに移植しようとしています。1つを除いて、ほとんど機能しています。
モジュールのC++部分には、で初期化コードを実行し、でクリーンアップコードDllMain
を実行する関数があります。モジュールをVisualC++でコンパイルすると、正常に機能します。しかし、StrawberryPerlが使用するMinGWGCCでコンパイルすると、呼び出されることはありません。DLL_PROCESS_ATTACH
DLL_PROCESS_DETACH
DllMain
DllMain
問題は、でコンパイルしたときにDLLのエントリポイントとして正しく識別されないことだけだと思いますgcc
。しかし、私はそれを修正する方法がわかりません。
進行中の作業は、Win32::SetupsupのGitHubリポジトリにあります。Dist :: Zillaを使用してリリースを管理していますが、実際dzil
にテストする必要はありません。リポジトリ、、、perl Makefile.PL
およびを複製するだけdmake test
です。