Cygwinでクロスコンパイル環境を構築したかったログ

##これは何？
[０から作るソフトウェア開発 - 環境準備その１Cygwinとコンパイラとアセンブラ](http://softwaretechnique.jp/OS_Development/ready_for_development1.html)

こちらのページを参考にCygwin環境にLinux向けのクロスコンパイル環境を構築しようとした所色々詰まって諦めるまでの記録を残します。
備忘録的に残していますが、解決方法をご存知の方是非ご教授をお願いします…是非に…。

##行ったこと
Cygwin上でLinuxをターゲットにしたCコンパイラ環境を構築するためには*linux-binutils*と*linux-gcc*という2つのパッケージを追加する必要があり、これを追加するために以下2つの方法を試しました。

###1.Cygwinのセットアップからインストールを試す
Cygwinのセットアップファイルを実行 [^1]

```
% ./setup-x86_64.exe -K http://cygwinports.org/ports.gpg 
```
インストールウィンドウが表示されるのでダウンロードサイトの選択まで進める
User URLに`ftp://ftp.cygwinports.org/pub/cygwinports`
を入力してAdd-次へを選択
![cygports.PNG](https://qiita-image-store.s3.amazonaws.com/0/108708/f8c437bf-7304-9782-2c2c-73aa06dafe54.png)

この後上手くいけば*linux-binutils*や*linux-gcc*等パッケージが表示されるはずだが…

このように表示されて失敗してしまう
![cygportsun.PNG](https://qiita-image-store.s3.amazonaws.com/0/108708/dd03d362-7eac-088d-fb11-6dc985af769d.png)


アドレスが変更されてる？と思い直接`ftp://ftp.cygwinports.org/pub/cygwinports`にブラウザでアクセスしてみると存在、<b>が</b>、Anonymousログインして中身を見ると何もなし
![pub-cygwinports.PNG](https://qiita-image-store.s3.amazonaws.com/0/108708/cd8fa210-c4bf-5b8e-5ccf-88967e4e5b9e.png)

ミラーアドレスも見つけられずここで断念、別の方法を試してみることに
***

###2.ソースから直接ビルドを試す
[cygwinportsの公式](https://sourceware.org/cygwinports/)を確認するとgithubがリンクされており、リポジトリを確認すると目的の[linux-binutil](https://github.com/cygwinports/linux-binutils)と[linux-gcc](https://github.com/cygwinports/linux-gcc)のcygport [^2] を発見出来たのでそちらをビルドしてみることに


+ リポジトリのクローン
先ず見つけたリポジトリをCygwinのローカルに持ってきました
`% git clone https://github.com/cygwinports/linux-binutils` 


+ cygportからのビルド
次にビルドですが、cygportのビルドは
 + fetch : ソースを取得
 + prop : 作業ディレクトリの構築
 + compile : パッケージのコンパイル
 という段階でビルドを行うようなので([いけむランド - cygport再入門](http://fd0.hatenablog.jp/entry/2014/01/26/002816) より)
そのように実行しますが…


```
cygport ./linux-binutils.cygport fetch

--2018-05-01 23:44:22--  http://ftp.jaist.ac.jp/pub/GNU/binutils/binutils-2.29.1.tar.bz2
ftp.jaist.ac.jp (ftp.jaist.ac.jp) をDNSに問いあわせています... 150.65.7.130
ftp.jaist.ac.jp (ftp.jaist.ac.jp)|150.65.7.130|:80 に接続しています... 接続しました。
HTTP による接続要求を送信しました、応答を待っています... 200 OK
長さ: 29123355 (28M) [application/x-bzip2]
`binutils-2.29.1.tar.bz2.tmp' に保存中

binutils-2.29.1.tar 100%[===================>]  27.77M   162KB/s 時間 14s

2018-05-01 23:44:35 (2.03 MB/s) - `binutils-2.29.1.tar.bz2.tmp' へ保存完了 [29123355/29123355]


~~~中略\~\~~

--2018-05-01 23:44:45--  https://src.fedoraproject.org/cgit/rpms/binutils.git/plain/binutils-2.29-skip-rp14918-test-for-arm.patch
src.fedoraproject.org (src.fedoraproject.org) をDNSに問いあわせています... 209.132.181.15, 209.132.181.16
src.fedoraproject.org (src.fedoraproject.org)|209.132.181.15|:443 に接続しています... 接続しました。
HTTP による接続要求を送信しました、応答を待っています... 404 Not found
2018-05-01 23:44:46 エラー 404: Not found。

*** ERROR: wget http://pkgs.fedoraproject.org/cgit/rpms/binutils.git/plain/binutils-2.29-skip-rp14918-test-for-arm.patch failed

```
諸々URI失効で取得出来ず…
一縷の望みをかけてprop,compileをかけるも当然の様に必要ファイルが足りずにエラー終了

***

##おわりに
以上2つを行っていったのですがどちらも問題が発生、自分の知識では対処できないと感じ、現状はVM上にLinuxを構築してそちらの環境を使っています。

悔しいのでもう少し知識を着けてから再挑戦したいですね…


##注釈
[^1]: -K はftpアクセス用の公開鍵を指定するオプション `*-K --pubkey : Path to extra public key file (gpg format)* `

[^2]: >cygportとはcygwinのパッケージを作成するツールレシピを示す記述形式 - [いけむランド - cygport再入門](http://fd0.hatenablog.jp/entry/2014/01/26/002816)より