- Mesaj
- 1.025
- Çözümler
- 35
- Beğeni
- 1.077
- Puan
- 1.339
- Ticaret Puanı
- 0
Yeni bir sıfırdan altyapı derlemeye çalışırken bu sorunla karşılaştım. Gamelib'i build ederken böyle bir hata veriyor:
Google'da aratınca birisi "VS2015 ve üstü için snprintf define'ına ihtiyaç yok, VS'in kendi snprintf'i var" yazmış.(
Kod bloğunu
olarak değiştirdim ve gamelib build verdi. Ben koddan anlamıyorum. Bilgili birisi bu çözümü onaylayabilir mi? Bu yanlış bir yaklaşım mı?
Hata:
1>C:\Users\Administrator\Desktop\ClientSource\extern\include\boost\assert\source_location.hpp(97,9): error C2039: '_snprintf': is not a member of 'std'
1>C:\Users\Administrator\Desktop\ClientSource\extern\include\boost\move\detail\iterator_traits.hpp(63,1): message : see declaration of 'std'
1>C:\Users\Administrator\Desktop\ClientSource\extern\include\boost\assert\source_location.hpp(104,13): error C2039: '_snprintf': is not a member of 'std'
1>C:\Users\Administrator\Desktop\ClientSource\extern\include\boost\move\detail\iterator_traits.hpp(63,1): message : see declaration of 'std'
Google'da aratınca birisi "VS2015 ve üstü için snprintf define'ına ihtiyaç yok, VS'in kendi snprintf'i var" yazmış.(
Linkleri görebilmek için
giriş yap veya kayıt ol.
) Bu yüzden ClientSource\extern\include\boost\assert\source_location.hpp içindeki hata veren satırların kaynaklandığı;
Ara:
#if ( defined(_MSC_VER) && _MSC_VER < 1900 ) || ( defined(__MINGW32__) && !defined(__MINGW64_VERSION_MAJOR) )
# define BOOST_ASSERT_SNPRINTF(buffer, format, arg) std::sprintf(buffer, format, arg)
#else
# define BOOST_ASSERT_SNPRINTF(buffer, format, arg) std::snprintf(buffer, sizeof(buffer)/sizeof(buffer[0]), format, arg)
#endif
Kod bloğunu
Değiştir:
#if ( defined(_MSC_VER) && _MSC_VER < 1900 ) || ( defined(__MINGW32__) && !defined(__MINGW64_VERSION_MAJOR) )
# define BOOST_ASSERT_SNPRINTF(buffer, format, arg) sprintf(buffer, format, arg)
#else
# define BOOST_ASSERT_SNPRINTF(buffer, format, arg) snprintf(buffer, sizeof(buffer)/sizeof(buffer[0]), format, arg)
#endif
olarak değiştirdim ve gamelib build verdi. Ben koddan anlamıyorum. Bilgili birisi bu çözümü onaylayabilir mi? Bu yanlış bir yaklaşım mı?