MinGW(gcc)でDarknetをコンパイルする方法
Pure C言語でyoloを動かしてみたいと思い、ちょっと苦戦しましたができたので、メモとして残します。
まぁ、Windows&C言語でDarknet-yoloをやりたいって人がどれだけいるか分かりませんが・・・
MinGW編
MinGWとは、ザックリ言えば「Windows版gcc」のこと。
「WindowsでもLinuxと同じようにC言語やC++をコンパイルできるもの」って思ってください。
MinGWのインストール手順
近いうちMinGWのインストール手順は書いてみます。
とりあえずMinGW自体のインストール手順はいっぱいありますが、その中で(個人的に)一番分かりやすかった以下のURLを参照してください。
MinGWでpthreadを使えるようにする
上記のURLに従ってMinGWをインストールしたことを前提に記します。
- [Windowsキー]を押して、スタートメニュを開き「mingw」と入力して、
- 以下の手順を実行
1. 以下のタブを順番にクリック
「All Package」 → 「MinGW」 → 「MinGW Libraries」 → 「MinGW Standard Libraries」
2. 「MinGW Standard Libraries」にある、以下2つのチェックボックスを選択して、
「Mark for Installation」を実行
- チェックを入れたら「Installation」→「Apply Changes」を順番でクリックし、出てきたダイアログの「Apply」を実行
- 念のため適当なCプログラムを作成し、
#include <pthread.h>
を記述してコンパイルが正常にできるか確認
test.c
#include <pthread.h>
int main(void) {
return 0;
}
PS > gcc test.c
PS > # エラーが出なければOK
MinGW編 終わり
Darknet編
Darknetのダウンロード
gitコマンドを使えるようにしておいてください。
- pjreddie/darknet より、以下のコマンドでソースコードをダウンロード
PS > git clone https://github.com/pjreddie/darknet.git
WindowsまたはLinux向けのDarknetもあるっぽいですが、今回はノンタッチ。
https://github.com/AlexeyAB/darknet
MinGWでDarknetコンパイル
- ダウンロードした
darknet -> examples -> go.c
に、#include <winsock2.h>
を追加
-
darknet -> Makefile
を以下のように編集。
No. | やること | 図 |
---|---|---|
1. |
LDFLAGS に -lws2_32 を追加 |
|
2. |
mkdir のオプション-p を削除obj 、backup 、results の3か所 |
- 最後に
darknet
フォルダ下でmingw32-make.exe
コマンド(Linuxではmake
)を実行。
PS > cd darknet
PS darknet> mingw32-make.exe
色々Warningが出るけど、大丈夫っぽい。
Darknet編 終わり
Author And Source
この問題について(MinGW(gcc)でDarknetをコンパイルする方法), 我々は、より多くの情報をここで見つけました https://qiita.com/karakuri-t910/items/ae0206e1e61e2dce4551著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .