Codeblocks için SFML nasıl kurulur?

Yusufc44

Hectopat
Katılım
2 Ekim 2021
Mesajlar
157
Çözümler
2
Daha fazla  
Cinsiyet
Erkek
Arkadaşlar C++ ile 2D şeyler programlayabilmek için SFMLkurmak istiyorum, zaten kendi sitesinde nasıl kurulacağı yazıyor.
Okudum 2-3 kere anlattığı şeyleri yaptım ama tamamen başaramadım, burada bana yardımcı olabilecek var mı? Sıfırdan bir anlatabilir misiniz bana yapacağım şeyleri?
 
Tam olarak nerede takıldığını yazarsan belki yardım edebilirim.

Code: Blocks zaten var herhalde ama mingw var mı?

Bir sfml kodu yazıyorum ve çalıştırmayı deniyorum ilk önce IDE'nin alttaki komut satırında şöyle bir hata beliriyor.

1.png


Daha sonra CMD açılıyor ve sırasıyla.
Sfml-graphics-2.dll bulunamadığı için kod yürütmeye devam edilemiyor. Programı yeniden yüklemek bu sorunu çözebilir.
sfml-window-2.dll bulunamadığı için kod yürütme işlemine devam edilemiyor. Programı yeniden yüklemek bu sorunu çözebilir.
sfml-system-2.dll bulunamadığı için kod yürütmeye devam edilemiyor. Programı yeniden yüklemek bu sorunu çözebilir.
Bu hataları veriyor hataya örnek için bir ekran fotoğrafı.

2.png


Sfml klasörüm ve içindekiler.

3.png


4.png


Nasıl çözebilirim?

Sfml'nin kendi sitesindeki tutorialı tamamen uyguladım.
 
Ben de Windows'a geçip MinGW'yi Code::Blocks'u kurdum biraz static linkleme ile uğraştım ama yok ayarlayamadım kafayı yiyeceğim ama sende verdiği error mesajına bakılırsa dinamik linklemeye çalışıyorsun, SFML ile gelen klasörün "bin" kısmında .dll dosyaları var sana bulamadığını söylediği. Onları çalıştırmaya çalıştığın programla aynı klasöre kopyalamak ya da linker'a yol olarak göstermek belki işe yarar.
 
Ben de Windows'a geçip Mingw'yi code: Blocks'u kurdum biraz static linkleme ile uğraştım ama yok ayarlayamadım kafayı yiyeceğim ama sende verdiği error mesajına bakılırsa dinamik linklemeye çalışıyorsun, sfml ile gelen klasörün "bin" kısmında .dll dosyaları var sana bulamadığını söylediği. Onları çalıştırmaya çalıştığın programla aynı klasöre kopyalamak ya da Linker'a yol olarak göstermek belki işe yarar.

Dediklerinizi zaten yaptım aynı hatalar hala devam ediyor bende kafayı yiyeceğim 😂 çözüm bulamadık bir türlü.
 
Dediklerinizi zaten yaptım aynı hatalar hala devam ediyor bende kafayı yiyeceğim 😂 çözüm bulamadık bir türlü.
Ben bugünlük çıldırma dozumu aldım bakalım daha bilgili bir arkadaş görüp de yardım edecek mi. Bu arada Code::Blocks yerine VS ya da herhangi bir metin editörü (tercihen VSCode) + g++ da kullanabilirsin ki işini muhtemelen çok daha kolaylaştırır. VS'in kendi toolları var da eğer düz mingw (ya da aslında Windows'taysan WSL üzerinden GCC kullanmak da çok mantıklı bir seçenek) ile devam edersen de büyük bir proje falan olursa CMake gibi şeylere yönelebilirsin.
 
Ben bugünlük çıldırma dozumu aldım bakalım daha bilgili bir arkadaş görüp de yardım edecek mi? Bu arada code: Blocks yerine vs ya da herhangi bir metin editörü (tercihen VS Code) + g++ da kullanabilirsin ki işini muhtemelen çok daha kolaylaştırır. Vs'in kendi toolları var da eğer düz mingw (ya da aslında Windows'taysan WSL üzerinden gcc kullanmak da çok mantıklı bir seçenek) ile devam edersen de büyük bir proje falan olursa cmake gibi şeylere yönelebilirsin.

Cmake ile sfml projesi oluşturmayı başardım ekrana daire çizilmesini sağlayacak bazı kodları internetten buldum ve programa yapıştırdım Build ve run diyorum her şey sorunsuz hiçbir hata almıyorum ama ekranda program gözükmüyor konsolda çalışıyor gibi gözüküyor bunun sebebi ne olabilir?
 
Cmake ile sfml projesi oluşturmayı başardım ekrana daire çizilmesini sağlayacak bazı kodları internetten buldum ve programa yapıştırdım Build ve run diyorum her şey sorunsuz hiçbir hata almıyorum ama ekranda program gözükmüyor konsolda çalışıyor gibi gözüküyor bunun sebebi ne olabilir?
Oluşturulan Window object direkt destruct ediliyor olabilir kodu görmeden pek bir şey diyemem, bunun dışında dll dosyalarını ayrıca system32 klasörüne de kopyalayabilirsiniz.
 
Oluşturulan window object direkt destruct ediliyor olabilir kodu görmeden pek bir şey diyemem, bunun dışında DLL dosyalarını ayrıca System32 klasörüne de kopyalayabilirsiniz.

Kodlarda kesinlikle hiçbir sıkıntı yok DLL dosyalarındada dediklernizi yaptım yine de isterseniz kodları atabilirim.

C++:
#include <SFML/Graphics.hpp>

int main()
{
 sf::RenderWindow window(sf::VideoMode(200, 200), "SFML works!");
 sf::CircleShape shape(100.f);
 shape.setFillColor(sf::Color::Green);

 while (window.isOpen())
 {
 sf::Event event;
 while (window.pollEvent(event))
 {
 if (event.type == sf::Event::Closed)
 window.close();
 }

 window.clear();
 window.draw(shape);
 window.display();
 }

 return 0;
}

Direk Sfml'nin kendi orijinal sitesindeki tuturoialdan aldım bu kodları.

 
Cmake ile sfml projesi oluşturmayı başardım ekrana daire çizilmesini sağlayacak bazı kodları internetten buldum ve programa yapıştırdım Build ve run diyorum her şey sorunsuz hiçbir hata almıyorum ama ekranda program gözükmüyor konsolda çalışıyor gibi gözüküyor bunun sebebi ne olabilir?
Yani hiçbir fikrim yok.

Sıfırdan düzgün CMake projesi oluşturmak da kendince karışık bir şey aslında.
SFML CMake
Yukarıdaki bağlantıda verdiği hazır github template'ini kullanarak seninkiyle aynı kodla build ettim ve tabi her şey sfml'in kendi sitesinden olduğu için çalıştı doğal olarak. Sana içinde bütün SFML kütüphaneleri hazır bulunan bir CMake proje template'i veriyor içinde basit bir pencere açma şeyi olan bir main dışında tamamen boş geliyor, deneyebilirsin. Bende MinGW de var VS de, CMake bende ilk önce VS'i bulup onunla build etti ama VS spesifik bir şey değil, Windows spesifik bile değil.
 

Technopat Haberler

Geri
Yukarı