windows - उनल - गेम्स खेलना है



विंडोज पर एक एसडीएल गेम कैसे स्थिर रूप से संकलित करें (4)

इसका कारण यह है कि एसडीएल लिब्स एलजीपीएल-लाइसेंस के तहत है।

यदि आप स्थैतिक लिंक को लिब्स से जोड़ना चाहते हैं (आप ऐसा कर सकते हैं कि यदि आप उन्हें पुनः कंपाइल कर सकते हैं। इसके लिए मेकफाइल में कुछ हैकिंग की आवश्यकता है) आपको अपने गेम को कुछ संगत ओपन सोर्स लाइसेंस के तहत भी रखना होगा।

SDL-libs साझा लाइब्रेरी के रूप में आते हैं क्योंकि उनका उपयोग करने वाले अधिकांश प्रोग्राम बंद स्रोत हैं। द्विआधारी वितरण एक ऐसे रूप में आता है जिसे अधिकांश लोगों को चाहिए

https://ffff65535.com

मैं खिड़कियों के लिए अपने गेम के एक स्थिर रूप से जुड़े "एकल द्विआधारी" संस्करण का उत्पादन करने की कोशिश कर रहा हूं मैं एसडीएल, sdl_image और sdl_mixer से लिंक करना चाहता हूं जो कुछ समर्थन पुस्तकालयों में बदले में खींचता है। दुर्भाग्य से मुझे साइगविन / मिंगव / जीसीसी का उपयोग करके संकलित करने और लिंक करने के लिए सभी को प्राप्त करने का कोई तरीका नहीं मिला है। जहां तक ​​मैं बता सकता हूं कि सभी मौजूदा सार्वजनिक संस्करण केवल साझा पुस्तकालय / डीएलएस हैं

कृपया ध्यान दें कि मैं यहाँ लाइसेंसिंग के बारे में बात नहीं कर रहा हूं। स्रोत खुला होगा, इसलिए एसडीएल की जीपीएल / एलजीपीएलईज प्रासंगिक नहीं है।


इस एसडीएल मेलिंग सूची के माध्यम से ऐसा लगता है कि एसडीएल विकास उपकरण एसडीएल-कॉन्फ़िग स्क्रिप्ट के साथ जहाज करता है जिसे आप का उपयोग करने के लिए लिंकर झंडे को निर्धारित करने के लिए --static-libs ध्वज के साथ उपयोग कर सकते हैं।


मेरे सिस्टम (उबंटू) पर मुझे निम्न झंडे का उपयोग करना होगा:

-Wl,Bstatic -lSDL_image `sdl-config --libs` -lpng12 -lz -ltiff -ljpeg -lasound -laudio -lesd -Wl,-Bdynamic `directfb-config --libs` -lpulse-simple -lcaca -laa -ldl

यह एसडीएल, एसडीएल _ छवि, और उनकी कई निर्भरता स्थिर रूप से जोड़ता है आप कभी भी स्थिर नहीं चाहते libdl, जिससे एक पूरी तरह से स्थिर बाइनरी बनाकर एसडीएल _ छवि का इस्तेमाल किया जा सकता है। पल्स, सीका, एए, और डायरेक्टफब संभवतः स्थिर बना सकते हैं। मुझे अभी तक उनकी पहचान करने के लिए अभी तक पर्याप्त नहीं है


पर्यावरण: विंडोज 7 एक्स 64 और उपकरण के साथ वीएमवेयर वर्चुअल मशीन हम देव सी + 7.4.2.569 बिल्ड, शिकायतकर्ता जी + + (टीडीएम -1) 4.6.1

एक बार, SDL2-2.0.3 एपीआई को विन्यास के रूप में स्थापित किया गया है देव सी ++ बहुत स्पष्ट नहीं है कि मैंने क्या किया है क्योंकि परंपरा को कमांड लाइन की आवश्यकता है

पहली समस्या यह है कि विंडोज 7 ने पद्धति को बदल दिया है और वे अपनी गेंद पर जाते हैं। इन्वेंटरी। रेफरी। https://.com/users/464581/cheers-and-hth-alf

पहली बाधा के बाद, SDL_platform.h यह बुरा है, यह एक और है, मुझे याद नहीं है कि मैं कहां डाउनलोड कर रहा हूं, लेकिन अगला इंगित संस्करण में काम नहीं करता है।

हमें निष्पादन योग्य की निर्देशिका में एसडीएल 2 एच एलएस डाल देना चाहिए।

D:\prg_desa\zsdl2>g++ bar.cpp main.cpp -o pepe1 -ID:\SDL2-2.0.3\i686-w64-mingw32\include\SDL2 -LD:\SDL2-2.0.3\i686-w64-mingw32\lib -lmingw32 -lSDL2main -lSDL2 -mwindow

मैंने अंत में संकलित किया है और एसडीएल 2 परीक्षण काम करता है।





sdl-mixer