2016-07-15 125 views
7

mingw-w64をオフラインでインストールする方法はありますか?私は多くの正式な情報源を試してみて、それらのすべてが何らかのインターネットアクセスを必要としているようだ。私はx32とx64の両方のシステムで動作するものを探しています。 the official repositoryを見ようとしましたが、この作業に必要なファイルが不明です。MinGW-w64オフラインインストーラ

ありがとうございます!

+1

可能性のある重複した[オフラインMinGWのインストーラはありますか?](https://stackoverflow.com/questions/29028808/is-there-an-offline-mingw-installer) – Switch

答えて

9

以下は完全にテストされていませんが、オフラインインストーラーは不要です。バグレポートのためのいくつかのスクリーンショットに基づいて、オンラインインストーラは、次の質問をし...

Version .......... seems to be the GNU GCC version number 
Architecture ..... i686/x86_64 
Threads .......... posix/win32 
Exception ........ dwarf/sjlj/seh 
Build Revision ... 0/1/2/... 

Install folder ... e.g. c:\mingw 

Create desktop shortcuts? 

最初の5つのオプションは、単一のダウンロードパッケージを選択するために使用されています。私はあなたについて知りませんが、私はスレッドと例外のために何を選ぶべきか分かりません。純粋にダウンロード統計に基づいて、posixスレッドはwin32の2倍以上使用され、sehは32ビットのdwarfの64ビット版の方がはるかに普及しているようです。私はposixで32ビットを推測しており、デフォルトはdwarfです。

選択肢を識別するために、this folderのファイルrepository.txtを使用します。これは単なるパイプで区切られたテキストファイルです。5つの主要なオプションの5つのフィールドと、ダウンロードするパッケージのURLの1つです。

ちなみに、誰かがインストーラのソースコードを見つける場所を知っていれば、私は本当にコメントをいただきありがとうございます。バグ報告はありますが、インストーラのソースは見つかりませんでした。しかし、mingw-64バイナリパッケージのソースは簡単に見つけることができます。

バイナリパッケージ自体は、サブフォルダがthis folder (Win32)this folder (Win64)です。

インストーラが提供するショートカットは何ですか?これはMSYSやMSYS2ではなく、MinGW-w64です。したがって、ショートカットを提供するbashベースのシェルはありません。おそらくそれらは、パスを設定したWindowsコマンドプロンプトのショートカットです。そのショートカットの問題以外

は、あなたがすべてでは、適当なフォルダにパッケージを解凍MINGW32の\ビンまたはにMinGW64の\ binフォルダが何とかパス上にあることを確認している、とあなたが行われる必要があります。 32ビットのgcc-5.4.0パッケージの1つでこれをテストしました。g ++は問題なくhello-worldをコンパイルしました。

here (32 bit)以降のサブフォルダと他のToolchainsの同様のサブフォルダからなるサブフォルダには、64ビットおよびその他のビルド用の*フォルダを対象とする別のサードパーティビルドがあります。 ray_linnには、Ada(およびObjective C/C++?)のサポートを含むさまざまなビルドがあります。 rubenvbには古いGCCとClangのバージョンがあります。 dongsheng-dailyは日常的なビルドのように見えますが、実験的なGCC 7も含めています。

もしもMSYSが必要な場合は、私にコメントでお知らせください。私はしばらくの間(MinGW32と一緒に)オフラインでインストールしているので、インストールするパッケージのリストがあります。あなたはかなりの数のパッケージを必要とします。これはSourceForgeから取得するのに苦労しますが、一度入手すればほとんどがもう一度開かれます。主にMinGWを見つける場所とシェルのショートカットを作成するために、いくつかの小さな「postinstall」があります。作成するファイルがいくつかあります。 AutoItのスクリプトを使っているのですが、AutoItで私が知っていたものなので不適切なメソッドを使って混乱しますが、問題なく動作します。

MSYS2がありますが、一見したところ、別のオンラインでインストールされていると思われる問題で、パックマンパッケージマネージャを使用しています。おそらく非常に便利ですが、使用できない少数派ではありません。

+0

優れています。 repository.txtファイルを指摘してくれてありがとう。私は、必要なバージョンのURLをコピーし、それをブラウザに貼り付けて.7zファイルをダウンロードしました。それから、sneakerNet経由でオフラインPCに移動し、解凍しました。 gFortranが実行されます。 – riderBill

+0

私の(オンライン)ラップトップでmingw-w64-install.exeを実行しました。インストールからトップレベルディレクトリに.7zファイルにない4つのファイルuninstall.exe、uninstallがあります。ini、mingw-w64、およびmingw-w64.batがあります。 mingw-w64はショートカットです。 mingw-w64.batはbinディレクトリをPATHに追加し、cmdウィンドウを開きます。 もっと面白い* Windowsのアンインストールやプログラムの変更*は、新しくインストールされたMinGW-W64を示しています。インストーラがレジストリに何かを入れていない場合、WindowsはMinGW-W64について知らないだろうか?それはどういうことだと思いますか? – riderBill

+0

@riderBill - 申し訳ありませんが、あなたはアンインストーラのレジストリについて正しいと思いますが、このオフラインの「インストール」は使用していません。私の知る限り、公式のMinGW32とMSYSのインストーラは、アンインストーラを登録するために必要なことは何でもしましたが、これは唯一のレジストリの使用でした。自分自身で "インストール"していると、 "アンインストール"フォルダを削除する)自分自身も。現在、Windowsでは多くのATMをプログラムしていませんが、Linux内の仮想マシンで動作するようにwin7proライセンスを購入しましたので、オンラインにしてMSYS2を実行します(時々)。 – Steve314

4

インターネットに接続しているマシンでMSYS2のpacmanを使用している場合は、mingw-w64をオフラインでインストールしてから、pacmanでダウンロードしたファイルをオフラインマシンに転送できます。

あなたの質問には、pacmanの素晴らしい点は、すべての依存関係の正しいバージョンを取得することです。あなたのインターネットに面したマシンで

http://www.msys2.org/

  • 実行MSYS2から

    1. 使用MSYS2インストーラ、およびお使いのMSYS2端子でpacman -Syu
    2. とパッケージデータベースを更新し、格納するためのフォルダを作成しますあなたが望むパッケージ(すなわち、mingw-w64)

      mkdir ~/offline_packages 
      cd ~/offline_packages 
      pacman -Syw base base-devel mingw-w64-x86_64-toolchain --cachedir . 
      
    3. データベースにすべてをバンドルするパックマンのrepo-addスクリプト:

      repo-add ./offline.db.tar.gz ./* 
      
    4. はあなたの外付けフラッシュドライブにMSYS2のインストーラと~/offline_packagesをコピーします。オフラインマシンで

    1. MSYS2をインストールします。
    2. コピー(例えばC:/msys64/home/user/offline_packages)MSYS2がアクセスできるパスにあなたのフラッシュドライブからoffline_packagesフォルダ
    3. 編集C:/msys64/etc/pacman.conf

      1. コメントアウト[mingw32], [mingw64], [msys]リポジトリを。
      2. 新しいリポジトリを追加します。この例では、上記の任意のパスを使用します。 offline_packagesフォルダをコピーした場所を指すように変更します。

        MSYS2端子で
        [offline] 
        SigLevel = Optional 
        Server = file:///home/user/offline_packages 
        
    4. 、新しいリポジトリとパックマンのデータベースを同期

      pacman -Syu 
      
    5. mingwの-W64のインストールなど

      完了
      pacman -S --needed base base-devel mingw-w64-x86_64-toolchain 
      

    参考文献:の https://wiki.archlinux.org/index.php/Pacman/Tips_and_tricks#Installation_and_recovery

  • +0

    私が自分の答えを書いたときの私の問題は、私の唯一のインターネットに面したマシンがLinuxを走らせたことでした。私は* nix宇宙で起きた(私が思う)パッケージマネージャーが、この奇妙なコーナーケースであっても、それを使うのがより難しいかもしれないという状況を持つのは奇妙に思えます。 ATM私はWin7のインターネットに面した仮想マシンをいくつか持っていますが、これらのヒントは間違いなく私にとって役に立ちます。 – Steve314

    関連する問題