noisiv 1
noisiv
Manwe Work 1
Manwe Work
Agora Metin2 1
Agora Metin2
Bvural41 1
Bvural41
onur akbaş 1
onur akbaş
IronTalonX 1
IronTalonX
D 1
delimuratt
berzahx 1
berzahx
PrimeAC 1
PrimeAC
DEVLOPER 1
DEVLOPER
ShadowFon 1
ShadowFon
mavzermete 1
mavzermete
Hikaye Ekle

GCC8 Yapalım

  • Konuyu başlatan Konuyu başlatan Aominechi
  • Başlangıç tarihi Başlangıç tarihi
  • Cevaplar Cevaplar 74
  • Görüntüleme Görüntüleme 8K
Durum
Üzgünüz bu konu cevaplar için kapatılmıştır...

HERAKLES Otomatik Avlı kalıcı sunucu. 19 Haziran'da açılıyor. Atius & Wizard güvencesiyle hemen kayıt ol, ön kayıt ödülleri aktif. HEMEN TIKLA!

Paylaşımınız için teşekkürler, sırf müzikleri dinlemek için videoyu kapatamadım. :D Gelmişken meraklıları için bir kaç bilgi vermek istiyorum bu konuda, belki bir katkımız dokunur.

GCC ve Clang, FreeBSD içerisinde kullanılan en meşhur iki derleyicidir, farkları birden çok fakat basite indirgemek gerekirse; GCC daha geleneksel, Clang daha detaylıdır ve LLVM kütüphanesini kullanır. Ymir Metin2 dosyalarını derlemek için FreeBSD içerisinde GCC tercih etmiş zamanında, ben buna sadık kalarak GCC'den devam ettim ama pek tabii Clang'da kullanabilirsiniz. (Yalnız daha detaylıdır, daha çok warning alırsınız.)

Ymir'den konu açılmışken değinmeden geçmeye gönlüm el vermedi, 2013 yılında 5-6 yıl öncesinden kalma GCC ve BSD sürümleriyle derlemeye devam ettikleri gibi warningleri çözmek için de uğraşmamışlar, coding stillerinin kötülüğünden bahsetmiyorum bile.

Şuan GCC'nin yayında olan en güncel versiyonu 12.2 fakat çoğu insan hala 4.9 gibi hatta 7 gibi 8 gibi yıllar öncesinde kalan versiyonlarda devam ediyorlar, arkadaşlar yeni sürümlerin (Bknz; C++23) size sağladığı güvenli bir sürü liman var, auto gibi, nullptr gibi, pass by value gibi, bu nimetlerle yapıyı modernleştirmek varken hala 2008'de gibi hareket etmek mantıklı değil. (Ymir'in hala güncellemediğine bahse girerim, orası ayrı. :D)

Sürüm yükselttiğinizde başlıca uğraşacağınız şey warningler çünkü yeni compiler sürümleri bu mayın tarlası kodları düzenlemeniz için sizi sürekli uyaracak, bu yeni bir sistem eklediğiniz zaman da çok işinize yarayacak tabii bunu da hesaba katın. Projelerinizde -w kullanmamanızı tavsiye ederim, sorunsuz kod = iyi performans, unutmamak gerek, vakit ayırıp warningler ile ilgilenin derim.

Son olarak GCC sürümünüzü her yükselttiğinizde onlarca düzeltme yapmanız gerekecek (warningler için) size kendi altyapımda düzelttiğim sayıları vereyim bilgi olarak, GCC sürümünüzü 7'ye yükselttiğiniz vakit aşağı yukarı 119 adet warning düzeltmeniz gerekecek, ben buradan direkt GCC sürümünü 10'a yükseltmişim orada da 59 adet düzeltme gerekmiş, GCC sürümünü 11.2'ye yükseltince 242 adet düzeltme yapmam gerekmiş ki baya vaktimi almıştı, son olarak 12.2 sürümünde ise 20 adet düzeltme gerekmiş, bunlar sadece warning çözümleri için, hata almamak için konudaki kod düzenlemelerini ve Mali'nin SRC upgrade konusundaki kod düzenlemelerini yapmanız gerekiyor. Warning konusunda da gözünüz korkmasın, ufak bir google aramasıyla hangi warningi nasıl düzelteceğinizi kolayca anlarsınız.


Durum böyle, eğer sürümünü 12.2'ye yükseltip çözemediği sıkıntılar yaşayan arkadaşlar olursa soru-cevap bölümünden konu açıp etiket atabilirsiniz, gördüğüm zaman yardımcı olurum, saygılar.
yapiyosun bu sporu kankam bu yanıtın üzerine tüm warning fixlerini paylasırım ben :D
 








FreeBSD 11.3 GCC8

bölümdeki en yararlı konu olmuş bu arada tebrikler hocam paylaşım için teşekkürler
 
main. cpp de bir hata alıyorum yardımcı olurmusunuz


gmake[1]: Entering directory '/Game_SRC/metin2source/game/src'
compile main.cpp
main.cpp:85:10: fatal error: gtest/gtest.h: No such file or directory
#in#includetest/gtest.h>
^~~~~~~~~~~~~~~
compilation terminated.
gmake[1]: *** [Makefile:132: OBJDIR/main.o] Error 1
gmake[1]: Leaving directory '/Game_SRC/metin2source/game/src'
gmake: *** [Makefile:74: all] Error 2
root@localhost:/Game_SRC/metin2source #




 
Paylaşımınız için teşekkürler, sırf müzikleri dinlemek için videoyu kapatamadım. :D Gelmişken meraklıları için bir kaç bilgi vermek istiyorum bu konuda, belki bir katkımız dokunur.

GCC ve Clang, FreeBSD içerisinde kullanılan en meşhur iki derleyicidir, farkları birden çok fakat basite indirgemek gerekirse; GCC daha geleneksel, Clang daha detaylıdır ve LLVM kütüphanesini kullanır. Ymir Metin2 dosyalarını derlemek için FreeBSD içerisinde GCC tercih etmiş zamanında, ben buna sadık kalarak GCC'den devam ettim ama pek tabii Clang'da kullanabilirsiniz. (Yalnız daha detaylıdır, daha çok warning alırsınız.)

Ymir'den konu açılmışken değinmeden geçmeye gönlüm el vermedi, 2013 yılında 5-6 yıl öncesinden kalma GCC ve BSD sürümleriyle derlemeye devam ettikleri gibi warningleri çözmek için de uğraşmamışlar, coding stillerinin kötülüğünden bahsetmiyorum bile.

Şuan GCC'nin yayında olan en güncel versiyonu 12.2 fakat çoğu insan hala 4.9 gibi hatta 7 gibi 8 gibi yıllar öncesinde kalan versiyonlarda devam ediyorlar, arkadaşlar yeni sürümlerin (Bknz; C++23) size sağladığı güvenli bir sürü liman var, auto gibi, nullptr gibi, pass by value gibi, bu nimetlerle yapıyı modernleştirmek varken hala 2008'de gibi hareket etmek mantıklı değil. (Ymir'in hala güncellemediğine bahse girerim, orası ayrı. :D)

Sürüm yükselttiğinizde başlıca uğraşacağınız şey warningler çünkü yeni compiler sürümleri bu mayın tarlası kodları düzenlemeniz için sizi sürekli uyaracak, bu yeni bir sistem eklediğiniz zaman da çok işinize yarayacak tabii bunu da hesaba katın. Projelerinizde -w kullanmamanızı tavsiye ederim, sorunsuz kod = iyi performans, unutmamak gerek, vakit ayırıp warningler ile ilgilenin derim.

Son olarak GCC sürümünüzü her yükselttiğinizde onlarca düzeltme yapmanız gerekecek (warningler için) size kendi altyapımda düzelttiğim sayıları vereyim bilgi olarak, GCC sürümünüzü 7'ye yükselttiğiniz vakit aşağı yukarı 119 adet warning düzeltmeniz gerekecek, ben buradan direkt GCC sürümünü 10'a yükseltmişim orada da 59 adet düzeltme gerekmiş, GCC sürümünü 11.2'ye yükseltince 242 adet düzeltme yapmam gerekmiş ki baya vaktimi almıştı, son olarak 12.2 sürümünde ise 20 adet düzeltme gerekmiş, bunlar sadece warning çözümleri için, hata almamak için konudaki kod düzenlemelerini ve Mali'nin SRC upgrade konusundaki kod düzenlemelerini yapmanız gerekiyor. Warning konusunda da gözünüz korkmasın, ufak bir google aramasıyla hangi warningi nasıl düzelteceğinizi kolayca anlarsınız.


Durum böyle, eğer sürümünü 12.2'ye yükseltip çözemediği sıkıntılar yaşayan arkadaşlar olursa soru-cevap bölümünden konu açıp etiket atabilirsiniz, gördüğüm zaman yardımcı olurum, saygılar.
Warning çözümü mantığı hakkında ucundan bilgi varmı acaba yardımcı olur musunuz ?
 
main. cpp de bir hata alıyorum yardımcı olurmusunuz


gmake[1]: Entering directory '/Game_SRC/metin2source/game/src'
compile main.cpp
main.cpp:85:10: fatal error: gtest/gtest.h: No such file or directory

#in#includetest/gtest.h>
^~~~~~~~~~~~~~~
compilation terminated.
gmake[1]: *** [Makefile:132: OBJDIR/main.o] Error 1
gmake[1]: Leaving directory '/Game_SRC/metin2source/game/src'
gmake: *** [Makefile:74: all] Error 2
root@localhost:/Game_SRC/metin2source #




gtest i bulamamiş büyük bi ihtimalle dosyalarını sildin fakat makefilede devre dışı aşağıdaki konudan gtesti kaldır kullanılmayan bi yapı zaten.

 
Durum
Üzgünüz bu konu cevaplar için kapatılmıştır...

Şu an konuyu görüntüleyenler (Toplam : 0, Üye: 0, Misafir: 0)

Geri
Üst