2018年5月11日金曜日

WSL(Windows Subsystem for Linux)を入れてみたが・・・

これまで、cygwinやmingwで行ってきたプロジェクトがあります。
これが、WSL上でビルドできるようになれば便利なのではないかとインストールしてみましたが、、、

arm-linux-gnueabihf-gcc: No such file or directory

と怒られました。ちょっと調べて分かったことは、Windowsのcmd.exeとは異なり、".exe"まで付けないと実行ファイルを実行できないのが原因らしい。

この時点で、もうヤル気が萎えました。

が、なんとか気を取り直して、".exe"が無い本当のARMクロスコンパイラ(x86/x64 Linux用)をhttps://www.linaro.org/downloads/から取ってきて試してみました。すると今度は、

In file included from audio.c:3:0:
xxxxx.h:25:40: fatal error: ..¥TimeDef.h: No such file or directory
となりました。
元々Windows上で開発していたものなので、パス名区切りに¥(円マーク)を多用しておりますが、unix/Linuxの区切りである/(スラッシュ)に変えないといけないですね。Windows用にビルドされたARM-GCCやcygwin環境では、¥と/のどちらでもうまく処理してくれていたんだなと、いまさら実感しました。
このコードはこれからもgccとVisual Studioの両方でビルドできなければならないのですが、幸いVisual Studioの方はパス名区切りとしてスラッシュ/もうまく扱ってくれるようなので、全部のコードを/に統一しても良さそうです。

が、そこまでしてWSLに移行しなければならないものなのか・・・。冷静に考えてみると、これまでどおりcygwin/mingw環境でもよいのではないかと思いました。
という訳で、WSL熱はいったん終了です。

0 件のコメント:

コメントを投稿