Saya telah mengunduh program Windows sederhana yang mati dari GitHub ( ini jika relevan). Saya mengunduhnya sebagai file ZIP, tetapi saya tidak tahu cara menginstalnya. Itu ditulis dalam C, saya pikir. Apakah saya memerlukan kompiler? (Visual Studio?) Apakah ada sesuatu yang sederhana yang saya lewatkan?
44
Jawaban:
Github terutama digunakan oleh programmer untuk berkolaborasi dalam proyek. Opsi 'Unduh ZIP' mengunduh salinan kode sumber ke komputer Anda. Ini biasanya 1 tidak mengandung salinan file executable / binari yang dapat dikompilasi (yaitu; file exe)
Rilis , adalah fitur Github untuk pengiriman perangkat lunak kepada pengguna akhir (yang biasanya tidak tertarik pada pengkodean yang sebenarnya). Rilis disertai dengan catatan rilis dan tautan untuk mengunduh perangkat lunak atau kode sumber. Ini adalah tempat pertama Anda harus memeriksa binari .
Dalam kasus Anda, halaman rilis menawarkan unduhan dan pengaturan file.
Namun, banyak proyek tidak akan memiliki rilis apa pun (terutama untuk Windows), dalam hal ini Anda dapat melakukan salah satu dari yang berikut:
Cari binari di tempat lain di internet. Biasanya mesin pencari seperti DuckDuckGo (atau Google , jika Anda mau) akan menemukan apa yang Anda inginkan dengan mudah. Coba cari
<application name> for Windows
atau<application name> exe
.Kompilasi sendiri. Anda harus memiliki setidaknya beberapa pengetahuan dasar tentang bahasa pemrograman untuk dapat melakukannya. Di sini sekali lagi, mesin pencari dapat sangat membantu. Coba cari
compile <application name> on Windows
atauMinGW compile <application name>
.Di sini saya akan menjalankan dasar-dasar mengkompilasi utilitas untuk Janda:
Unduh MinGW . Saya pribadi menyukai paket ini karena dilengkapi dengan boost (yang menggunakan beberapa aplikasi) dan shell keren. Ini juga disertai dengan
git
, yang bisa sangat berguna jika Anda ingin mengkompilasi file yang dihosting di Github atau repositori kontrol versi Git lainnya tanpa harus mengunduh sumbernya secara terpisah.Jalankan perintah berikut di
cmd
ataupowershell
:cd c:\sources\hello
: Ubah direktori ke mana pun file sumbernya berada.g++ helloworld.cpp -o helloworld.exe
: di sinihelloworld.cpp
adalah nama file sumber utama, danhelloworld.exe
adalah nama dari executable yang dikompilasi.-o
beralih:g++ helloworld.cpp foo.cpp -o helloworld.exe
.c
bukan.cpp
, dan Anda harus menggunakangcc
perintah sebagai gantig++
. Sisanya kurang lebih identikmungkiningin melihat makefiles. Ini posting Stack Overflow adalah tentang makefiles pada umumnya, dan yang satu ini memberitahu kita bagaimana menggunakannya dengan MinGW. Jika sebuah proyek dilengkapi dengan makefile, coba sebelum kompilasi sumber secara manual.helloworld.exe
.1 Catatan: Terkadang mungkin ada folder yang dipanggil di
bin
antara file yang diunduh, yang harus berisi file executable / binari yang dapat digunakanJuga lihat Cygwin dan GOW jika Anda ingin utilitas baris perintah GNU / Linux pada Windows. Saya membuat beberapa versi terbaru dari beberapa executable yang berguna tersedia untuk diunduh di sini .
Bacaan lebih lanjut:
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
sumber
Anda melihat-lihat dan menemukan penginstalnya di halaman rilis . Tentu Anda dapat mengkompilasi sumbernya, tetapi saya tidak berpikir itu yang Anda inginkan.
sumber
File .c dan .h adalah kode sumber C.
Anda perlu menginstal kompiler C seperti Visual Studio, tcc atau yang serupa, memuat proyek dan kemudian kompilasi untuk menjalankannya.
Gagal itu, proyek memiliki halaman rilis (di sini ) yang akan memberi Anda akses ke versi pra-disusun untuk menghemat waktu dan usaha Anda.
sumber
Jawaban ini akan menjawab pertanyaan umum tentang membangun aplikasi Windows hanya sumber (dalam C). Jika Anda beruntung seperti OP, Anda mungkin dapat menemukan binari yang telah dikompilasi.
Hal pertama yang harus diperhatikan di sini adalah tidak ada satu cara untuk membangun aplikasi dari sumber. Ada kira-kira variasi sebanyak ada proyek yang berbeda. Yang mengatakan, berikut adalah beberapa langkah umum:
Jika Anda beruntung, proyek akan memberikan instruksi pembuatan, biasanya di dalam
README
file. Kadang-kadang, mungkin juga adaINSTALL
file, atau dokumentasi lain yang tersedia. Jika tersedia, ikuti instruksi. Itu taruhan terbaik Anda.Seperti yang dikatakan orang lain, sayangnya, sangat sulit untuk merekonstruksi langkah-langkah pembangunan yang diperlukan tanpa instruksi. Namun, setidaknya kita dapat melakukan upaya upaya terbaik di sini, yang akan bekerja untuk sebagian besar proyek sederhana.
Karena tidak memiliki instruksi, porta panggilan berikutnya adalah untuk memeriksa alat bangun mana yang diperlukan.
Jika Anda menemukan file dengan ekstensi
.sln
atau.vcxproj
, ini mungkin proyek MSBuild / Visual Studio. Unduh salinan Visual Studio Community atau Express (untuk C ++), buka file proyek di sana, dan klik tombol putar di bilah alat (atau gunakan menu bangun).Jika Anda menemukan
Makefile
, ini mungkin akan membutuhkanmake
. Tetapi di sinilah segalanya menjadi lebih sulit, karena ada begitu banyak sistem independen dan tidak kompatibel yang digunakanmake
.Karena ditargetkan ke Windows, mungkin akan menggunakan MinGW . Unduh salinannya, luncurkan MSYS dari menu mulai Anda, navigasikan (
cd
) ke direktori yang berisi proyek Anda, dan jalankanmake
.Pada kesempatan yang jarang terjadi, ini adalah Cygwin (sayangnya, tidak ada cara mudah untuk mengatakannya, tetapi jika MinGW membuat kesalahan dengan kesalahan yang berhubungan dengan "posix", ini adalah taruhan yang layak), Anda harus menginstal Cygwin sebagai gantinya. Sayangnya, ini tidak membangun binari Windows asli - Anda harus meluncurkan program melalui Cygwin setiap waktu.
"Alat bangun" bisa berupa skrip khusus dengan nama
build.bat
atau serupa. Dalam hal ini, Anda harus membukanya dan melihat apa yang ada di dalamnya, atau mencoba menjalankannya dan melihat apa kesalahannya. Jika Anda membukanya dan melihat menyebutkanGCC
, kembali ke 2.2.1. MinGW tetapi jalankan skrip khusus alih-alihmake
.Mungkin saja tidak ada alat bangun sama sekali. Jika semua yang Anda temui adalah satu
.c
atau.cpp
file, maka itu mungkin cukup sederhana sehingga Anda dapat melakukan kompilasi langsung. Ini, sekali lagi, hampir selalu MinGW , jadi unduh itu, luncurkan shell MSYS, navigasikan ke direktori, dan aktifkan salah satugcc
ataug++
seperlunya - mis.gcc -o program.exe program.c
Mungkin tidak ada yang berhasil. Jika Anda mendapat pesan kesalahan pada langkah apa pun, pesan itu mungkin berisi petunjuk tentang apa yang hilang. Satu kemungkinan adalah bahwa Anda kurang memiliki kerangka kerja atau pustaka yang diperlukan - jika Anda merasa sanggup melakukannya, Anda dapat mencoba mengunduh dan menambahkannya ke lingkungan build Anda, tetapi ini biasanya bukan proses yang sepele dan memiliki banyak variasi sehingga tidak ada cara untuk membahasnya dalam sebuah jawaban.
Glosarium
Bangun alat
Sebuah alat membangun memungkinkan Anda untuk membangun sebuah proyek dengan sangat sedikit perintah. Untuk sebagian besar proyek dengan lebih dari satu file sumber, alat build akan dilibatkan di suatu tempat. Ada beberapa alat pembuatan, tetapi yang paling umum adalah:
membuat , digunakan di mana-mana di Linux dan semakin umum di Windows. Proyek yang menggunakan
make
biasanya dapat diidentifikasi dengan adanya aMakefile
.MSBuild khusus untuk Windows dan biasanya terlihat bersamaan dengan Visual Studio. Ini biasanya akan disertai dengan file
*.sln
atau*.vcxproj
.Rantai alat
Sebuah toolchain adalah compiler dan mendukung alat. Sama seperti alat build, ada beberapa, dan mereka biasanya digunakan dengan salah satu alat build.
MSVC adalah rantai alat Microsoft. Ini adalah toolchain paling umum untuk pengembangan asli Windows. Ini biasanya digunakan dengan sistem MSBuild, dan build biasanya dibuat melalui Visual Studio. Namun, proyek MSVC modern juga dapat digunakan
Makefile
.GCC ( MinGW ) adalah port dari GCC untuk Windows. Biasa digunakan bersama
make
. Jika proyek ditargetkan ke Windows secara asli dan memilikiMakefile
, itu mungkin untuk MinGW-GCC.GCC ( Cygwin ) menciptakan lingkungan yang kompatibel dengan POSIX. Ini memungkinkan Anda untuk langsung mengkompilasi sebagian besar program yang ditulis untuk Linux atau Unix dan membuatnya bekerja langsung di bawah Windows. Baru-baru ini di Windows 10, Bash di Ubuntu pada Windows adalah alternatif. GCC biasanya digunakan bersamaan dengan
make
.Kerangka kerja dan perpustakaan
Perpustakaan adalah seperangkat kode yang dapat digunakan kembali yang ditulis oleh orang lain, yang bergantung pada banyak program untuk menghindari penciptaan kembali roda. Anda harus memiliki dependensi ini untuk membangun proyek. Jika Anda beruntung, mereka akan disertakan dengan unduhan awal Anda, tetapi ini tidak selalu terjadi.
Kerangka kerja secara efektif adalah kumpulan perpustakaan. Banyak proyek menggunakan satu kerangka kerja, yang juga akan Anda butuhkan. Ini sering datang dengan sistem build mereka sendiri juga, tetapi mendaftar mereka semua tidak mungkin.
Bagian tersulit adalah berurusan dengan kerangka kerja tambahan dan dependensi perpustakaan. Jika, katakanlah, proyek menggunakan Qt - maka Anda akan membutuhkan seluruh kekacauan untuk membangunnya dengan benar. Ini adalah pekerjaan besar, dan kecuali Anda memiliki pengalaman sebelumnya, mungkin lebih baik meminta bantuan langsung orang lain di sini.
sumber
MINGW_PREFIX = $(shell which gcc | awk -F/bin/ '{ printf $$1 }')
:)