MinGW ile derlerken, exe çalışmadan önce belirli dll dosyalarını MinGW bin dizininden kopyalamam gerekir ("-static" ve/veya "-static-libstdC++" kullanırken bile.) Bunu nasıl değiştiririm? ? Kullanmam gereken özel bir MinGW yapısı var mı? Sonuçta ben dizinde exe ama hiçbir şey ile programı çalıştırmak mümkün istiyorum (ve penceresiz ortam değişkenleri ayarlayın.) Bu Dosya en şunlardır:MinGW .exe koddan bağımsız olarak birkaç gcc dll gerektirir?
- libstdC++ - 6.dll
- libgcc_s_seh-1.dll burada libwinpthread-1.dll
Ve
- Up Açık Code :: Blocks
- seçin "File-> New-> Proje-> Konsolu"
- "Merhaba Dünya" projesi için proje ayarlarını doldurun
- Sağ ...-> Merhaba Dünya (Kök hedef Projesi-> Seçenekler kurmak tıklayın) -> Diğer Seçenekler
- zaten ayarlanmış "-fexceptions"
- CTRL F9 altında "-static" (veya "-static-libstdC++") girin: yürütme olmadan Projesi (İnşa)
- gidin, içinde Windows Gezgini ve yerleşik "Hello World.exe" dosyasını çalıştırın.
- "Hata: libstdC++ - 6.dll bilgisayarınızda eksik" diyen bir mesaj açıldığında "OK" ye tıklayın.
- "Hello World.exe" dizinine "libstdC++ - 6.dll" dosyasını/MinGW/bin/dizininden kopyalayın.
- "Hello World.exe" dosyasını çalıştırın
- "Error: libgcc_s_seh-1.dll bilgisayarınızda eksik."
- "libgcc_s_seh-1.dll" dosyasını "Hello World.exe" dizinine kopyalayın.
- "libwinpthread-1.dll" yi kopyalayıp tekrar sona erdirin.
- mesaj
Hello World!
Edit görüntüle: Benim komut satırı olan: Gerekli Yukarıda belirtilen tüm dll dosyaları ile
g++.exe -Wall -fexceptions -static -static-libgcc -static-libstdc++ -g -static-libgcc -static-libstdc++ -L. -c "C:\Users\______\Desktop\Hello World\main.cpp" -o obj\Debug\main.o
g++.exe -o "bin\Debug\Hello World.exe" obj\Debug\main.o
. Ve, güvende olmak için, kod şudur:
// main.cpp
#include <iostream>
using namespace std;
int main()
{
cout << "Hello world!" << endl;
return 0;
}
Bunu yapmak istediğiniz şey, her şeyi tek bir yeniden yüklenebilir yürütülebilir dosyada paketlemek gibi görünüyor. – Jiminion
Kod bloklarının dışında yapıyorum. Yapma komutunu görmelisin. – Jiminion