web-dev-qa-db-ja.com

GitHubからダウンロードしたWindowsプログラム(Cで書かれたもの)をインストールするにはどうすればいいですか?

GitHubから死んだシンプルなWindowsプログラムをダウンロードしました( これ(関連性があれば) )。 Zipファイルとしてダウンロードしましたが、インストール方法がわかりません。 Cで書かれていると思います。コンパイラが必要ですか? (Visual Studio?)欠けている簡単なものはありますか?

43

Githubは主にプログラマーによってプロジェクトで共同作業するために使用されます。 [Download Zip]オプションを選択すると、ソースコードのコピーがコンピュータにダウンロードされます。これ通常1 コンパイルされた使用可能な実行可能ファイル/バイナリ(すなわち、exeファイル)のコピーを含みません。

リリース は、エンドユーザーにソフトウェアを出荷するためのGithubの機能です(通常は興味がありません)。実際のコーディング)リリースには、リリースノートとソフトウェアまたはソースコードをダウンロードするためのリンクが付いています。 これはあなたがバイナリをチェックするべき最初の場所です

あなたの場合、 リリースページ にダウンロードとセットアップファイルがあります。

ただし、多くのプロジェクトにはリリースがありません(特にWindows用ではありません)。その場合は、次のいずれかを実行できます。

  1. インターネット上の他の場所でバイナリを検索します。通常、検索エンジンは DuckDuckGo (または Google 、必要に応じて)になりますあなたが簡単に欲しいものを見つけます。 <application name> for Windowsまたは<application name> exeを検索してみてください。

  2. 自分でコンパイルしてください。そうするためには、少なくともプログラミング言語に関する基本的な知識が必要です。ここでもまた、検索エンジンは非常に役に立ちます。 compile <application name> on WindowsまたはMinGW compile <application name>を検索してみてください。

    ここでは、Widnows用のユーティリティのコンパイルの基本について説明します。

    • MinGWをダウンロードしてください。私は個人的には この パッケージを支持しています。なぜならそれは(いくつかのアプリケーションが使用する)ブーストとクールなシェルが付属しているからです。 gitも付属しています。これは、Githubや他のGitバージョン管理リポジトリでホストされているファイルを、ソースを個別にダウンロードする必要なしにコンパイルしたい場合に非常に便利です。

    • cmdまたはpowershellで次のコマンドを実行します。

      • cd c:\sources\hello:ディレクトリをソースファイルが置かれている場所に変更します。
      • g++ helloworld.cpp -o helloworld.exe:ここでhelloworld.cppはメインソースファイルの名前、helloworld.exeはコンパイルされた実行可能ファイルの名前です。
      • 複数のファイルをコンパイルする必要がある場合は、-oスイッチの前にそれらをリストしてください。g++ helloworld.cpp foo.cpp -o helloworld.exe
      • これらはC++のための命令です。 Cでプログラムされたアプリケーションを扱っている場合は、ファイル拡張子は.cではなく.cppになるので、g++ではなくgccコマンドを使用してください。残りは多かれ少なかれ同一です
      • 適切に動作する実行可能ファイルをコンパイルするために、もっと多くのコマンドライン引数を指定する必要があるかもしれないことに注意してください。通常、プロジェクトページはこれらの詳細を持ちます。
      • あなたも 恐らく 間違いなくメイクファイルを調べたいです。 この スタックオーバーフローの投稿は、一般的にはメイクファイルに関するもので、 これ はこう言います。 MinGWでの使い方プロジェクトにメイクファイルが付属している場合は、ソースを手動でコンパイルする前に試してください。
      • これでhelloworld.exeを実行できるはずです。
    • 注:ほとんどのプロジェクトにはREADMEファイルが付属しています。名前が意味することをしてください、これらのファイルはソフトウェアのコンパイルと実行に関する重要な情報を含んでいます、そしてそれを読むことによってあなたは不必要な面倒の多くを避けることができます。

1注意:ダウンロードしたファイルの中にbinというフォルダがあり、そこに使用可能な実行ファイルやバイナリがあるはずです。

GNU/Linuxコマンドが必要な場合は、 Cygwin および GOW も参照してください。 Windowsのラインユーティリティ。私はここでいくつかの有用な実行可能ファイルの最新版をダウンロード可能にします。

さらに読む:
http://www.mingw.org/wiki/MinGW_for_First_Time_Users_HOWTO
https://gcc.gnu.org/onlinedocs/index.html#dir
https://stackoverflow.com/questions/22873884/how-do-i-run-configure-with-mingw

28
rahuldottech

あなたは見て回って リリースページ でインストーラを見つけます。ソースをコンパイルすることはできますが、それがあなたが望むものではないと思います。

85
Journeyman Geek

.cファイルと.hファイルはCのソースコードです。

Visual Studio、tccなどのCコンパイラをインストールし、プロジェクトをロードしてからコンパイルして実行する必要があります。

それに失敗すると、プロジェクトにはリリースページ( (ここ )があり、コンパイル済みのバージョンにアクセスして時間と労力を節約できます。

65
Fazer87

この答えは、ソースのみのWindowsアプリケーションを作成するという一般的な質問(C言語)に対処することです。あなたがOPのように運が良ければ、プリコンパイルされたバイナリを見つけることができるかもしれません。

ここで最初に気をつけるべきことは、ソースからアプリを構築する唯一の方法がないということです。さまざまなプロジェクトとほぼ同じ数のバリエーションがあります。そうは言っても、ここにいくつかの一般的なステップがあります:

  1. 運がよければ、プロジェクトは通常READMEファイル内にビルド手順を提供します。時折、INSTALLファイル、または他の利用可能なドキュメントがあるかもしれません。利用可能な場合は、指示に従ってください。彼らはあなたの最善の策です。

    他の人が言っているように、残念ながら、指示なしに必要なビルドステップを再構築することは非常に困難です。しかし、ここでは少なくともベストエフォート型の試みを行うことができます。これは、ほとんどの単純なプロジェクトに有効です。

  2. 指示がないにもかかわらず、次の呼び出しはどのビルドツールが必要かを確認することです。

    1. .slnまたは.vcxproj拡張子を持つファイルを見つけた場合、これはおそらくMSBuild/Visual Studioプロジェクトです。 Visual Studio Community またはExpress(C++用)のコピーをダウンロードし、そこにあるプロジェクトファイルを開いて、ツールバーの再生ボタンをクリックします(またはビルドメニュー).

    2. Makefileが見つかった場合は、おそらくmakeが必要になります。しかしmakeを使う独立系で互換性のないシステムが非常にたくさんあるので、ここでは状況がさらに困難になります。

      1. Windowsをターゲットにしているので、おそらく MinGW を使用することになります。そのコピーをダウンロードして、スタートメニューからMSYSを起動し、プロジェクトを含むディレクトリに移動(cd)して、makeを実行します。

      2. まれにCygwinが使用されることはめったにありません(残念ながら簡単にはわかりませんが、MinGWが "posix"関連のエラーでエラーを生成する場合、これは適切な方法です)、インストールする必要があります 代わりにCygwin 。残念ながら、これはネイティブのWindowsバイナリを構築するものではありません - 毎回Cygwinからプログラムを起動する必要があります。

    3. "ビルドツール"はbuild.batのような名前のカスタムスクリプトであるかもしれません。この場合は、それを開いて内部の内容を確認するか、または実行してエラーの内容を確認する必要があります。それを開いてGCCの言及を見た場合は、2.2.1に戻ってください。 MinGWステップ。ただしmakeの代わりにカスタムスクリプトを実行します。

  3. ビルドツールがまったくない可能性があります。あなたが遭遇するのが単一の.cまたは.cppファイルだけであるならば、それはあなたがストレートなコンパイルをすることができるのにおそらく十分に簡単です。これらもまた、ほとんどの場合 MinGW なので、ダウンロードしてMSYSシェルを起動し、ディレクトリに移動して、必要に応じてgccまたはg++を呼び出します - - 例gcc -o program.exe program.c

  4. これらのどれも機能しない可能性があります。いずれかのステップでエラーメッセージが表示された場合は、足りないものに関する手がかりが含まれている可能性があります。 1つの可能性としては、必要なフレームワークやライブラリが欠けていたことです。それに気付いた場合は、それらをダウンロードしてビルド環境に追加してみてください。答えでそれらをカバーする方法。


用語集

構築ツール

ビルドツール を使用すると、非常に少ないコマンドでプロジェクトをビルドできます。複数のソースファイルを持つほとんどのプロジェクトでは、ビルドツールがどこかに含まれます。ビルドツールはいくつかありますが、最も一般的なものは次のとおりです。

  • make 。Linuxの至る所で使用され、Windowsではますます一般的になっています。 makeを使用しているプロジェクトは通常、Makefileの存在によって識別できます。

  • MSBuild はWindows固有のもので、通常はVisual Studioと組み合わせて使用​​されます。これらは通常*.slnまたは*.vcxprojファイルを伴います。

ツールチェーン

A ツールチェーン は、コンパイラとそれをサポートするツールです。ビルドツールと同じように、いくつかありますが、通常はいずれかのビルドツールで使用されます。

  • MSVC は、Microsoftのツールチェーンです。これは、Windowsネイティブ開発用の最も一般的なツールチェーンです。これは通常MSBuildシステムで使用され、ビルドは通常Visual Studioを通じて作成されます。しかし、最近のMSVCプロジェクトでもMakefileを使うことができます

  • GCCMinGW )はWindows用のGCCの移植版です。通常makeと共に使用されます。プロジェクトがWindowsをネイティブにターゲットとしていてMakefileを持っている場合は、おそらくMinGW-GCC用です。

  • GCCCygwin )はPOSIX互換の環境を作ります。これにより、LinuxまたはUnix用に書かれたほとんどのプログラムを直接コンパイルし、それをWindowsの下で直接動作させることができます。 最近のWindows 10では、 Windows上のUbuntuでのBash が代替手段です。 GCCは通常makeと共に使用されます。

フレームワークとライブラリ

ライブラリ は、他の人が書いた再利用可能なコードのセットです。プロジェクトをビルドするには、これらの依存関係を利用可能にする必要があります。運がよければ、それらはあなたの最初のダウンロードに含まれるでしょう、しかしこれはいつもそうではありません。

フレームワーク は事実上ライブラリの集まりです。多くのプロジェクトは1つのフレームワークを使用しますが、それも必要になります。これらはしばしばそれら自身のビルドシステムにも付属していますが、それら全てをリストアップすることは不可能でしょう。

最も難しいのは、余分なフレームワークとライブラリの依存関係を扱うことです。たとえば、プロジェクトで Qt が使用されている場合、正しく構築するにはその全体の混乱が必要になります。これは大変な仕事であり、あなたが以前の経験を持っていない限り、ここで直接助けを求めるように他の人に依頼するほうがおそらく良いでしょう。

17
Bob