個人的にかなりの衝撃的な事項だったのでメモ。
最近ひょんなことから、バックエンドで遊んでて、Kaliで開発していたのだが、総合的な管理のしやすさからWindowsに切り替えた。そうなるとサーバーをどこに建てるかって悩むところだが、今はwsl2が快適という噂を聞いたので、その上でサーバーを走らせることにした。wslは標準仕様で、Ubuntuを入れた。
下地のマシンが強いので、サーバー開発は快適に進んだ。そんな中、どうしてもVisual C++で過去に作ったプログラムを走らせたくなってきた。
Linuxネイティブなら、Linux用にクロスコンパイルしなきゃならない。ただ今回はwsl2上での開発だ。wsl2の下にはWindowsが走ってる。だからそのまま動くかもしれないと思い、exeを実行してみた。すると、そのまま動いた。
Windows側のシステム環境変数を参照しているわけではないのか、dllの場所は、別に参照させる必要はあったが、/mnt/cがcドライブに相当するので、そこから潜っていって、exeファイルをコマンドラインで打ち込むと、そのまま走る。dllもLinux用に書き換えることもない。出力ファイルもWindowsと同じ。
wslでいろんなことができそう。
No comments:
Post a Comment