Zobrazit předchozí téma :: Zobrazit následující téma |
Autor |
Zpráva |
Svestka
Založen: 08. 07. 2010 Příspěvky: 32
|
Zaslal: 9. červenec 2010, 13:23:18 Předmět: Visual studio 2008: SDL a C++ bez MSVCR90.dll |
|
|
Zdravím, vyskytl se mi problém, který by měl být zřejmý již z předmětu threadu.
Ve svém projektu využívám SDL včetně OpenGl a chci aby nebylo zapotřebí instalovat dustribuovaný balíček od microsoftu obsahující CLR. Pokud v projektu nastavím runtime library na multi-threaded (což má zapříčinit statické slinkování knihovny do výsledného exe souboru) tak se vyskytnou chyby linkeru ale pokud bych nechal volbu na multi-threaded DLL tak program nebude spustitelný na PC bez onoho balíčku. (Pokud někoho napadá nakopírovat msvcr90.dll přímo k exe souboru tak toto není možné jelikož samotná knihovna má v tomto směru ochranu a musí být vložena pouze z onoho balíčku)
Ještě polopatické vysvětlení toho čeho chci dosáhnout aby nedošlo ke špatnému pochopení. Chci zkompilovat zdroják C++ s využitím knihoven SDL včetně nadstaveb SDL_image a SDL_ttf. Zkompilovaný kód musí být přenositelný na jiné počítače bez nutnosti cokoli doinstalovávat jinými slovy program musí jít spustit pouze s přibalenými knihovnami SDL a OpenGl.
Googlil jsem a bohužel se mi nepodařilo vyřešit můj problém a toto neřeší můj problém: odkaz zde na forum.
Dalším souvisejícím problémem je to, že pokud nechám nastavení runtime library na multi-threaded debug DLL pro debug tak se vyskytne problém při spouštění programu kde se vypíše chyba o chybějícím MSVCR90.dll, proto musím prozatím kompilovat pouze release verzi a ještě s volbou multi-threaded DLL a ani v tomto případě si nevím rady.
Chyby v kódu jsou v tomto ohledu vyloučené jelikož jsem zoušel vytvořit nový projekt s co nejprimitivnější kostrou za použití SDL a problém přetrvával.
Budu vděčný za jakékoliv možnosti řešení. |
|
Návrat nahoru |
|
|
]semo[
Založen: 29. 07. 2007 Příspěvky: 1526 Bydliště: Telč
|
Zaslal: 9. červenec 2010, 13:44:34 Předmět: |
|
|
Zdar,
musel bys mít to SDLko zkompilovaný taky pro Multi-Threaded. Nedělal sem s tim, tak nevím, jestli se takový dá sehnat, nebo jestli k tomu jsou zdrojáky. Pokud jo, zkompiluj si SDL s příšlušnou volbou. Osobně taky používám Multi-threaded a cizím knihovnám se snažím vyhnout. Pokud chci nějakou použít a nepodaří se takto zkompilovat, vykašlu se na ní :-). Až se ti to povede, tak doporučuju nainstalovat Process Explorer a kouknut se, který knihovny to opravdu používá. Ale to možná znáš.
Ještě doplním: knihovny OpenGL se s aplikací nedistribuují (leda bys chtěl třeba nějakou SW implementaci), na PC jsou nainstalovaný s driverem grafický karty. _________________ Kdo jede na tygru, nesmí sesednout.
---
http://www.inventurakrajiny.cz/sipka/
Aquadelic GT, Mafia II, simulátory |
|
Návrat nahoru |
|
|
]semo[
Založen: 29. 07. 2007 Příspěvky: 1526 Bydliště: Telč
|
|
Návrat nahoru |
|
|
nou
Založen: 28. 07. 2007 Příspěvky: 1047
|
Zaslal: 9. červenec 2010, 14:07:33 Předmět: |
|
|
SDL je opensource takze skompilovat si to rucne nebude podla mna problem. _________________ Najjednoduchšie chyby sa najtažšie hľadajú. |
|
Návrat nahoru |
|
|
Svestka
Založen: 08. 07. 2010 Příspěvky: 32
|
Zaslal: 9. červenec 2010, 18:39:05 Předmět: |
|
|
Děkuji za reakce, zkusím se s tím o víkendu poprat, doufám, že nebudou problémy.
]semo[ napsal: |
Pokud chci nějakou použít a nepodaří se takto zkompilovat, vykašlu se na ní |
Osobně se taky snažím minimalizovat použité knihovny ale jelikož chci tvořit multiplatformně tak moc ani jinou šanci nemám, jelikož psát si vlastní multiplatformní knihovnu je v dnešní době zvlášť pro amatéra hloupost. Ke všemu SDL mi vyhovuje i při práci například s obrázky (SDL_image) kde mi taky přijde zbytečné něco bastlit pro každý formát obrázku.
]semo[ napsal: |
Ještě doplním: knihovny OpenGL se s aplikací nedistribuují |
Ano to máš samozřejmě pravdu, asi jsem to napsal trochu nejasně, uváděl jsem to pro celistvost ale k samotné distribuci knihoven to nepatřilo (moje chyba). |
|
Návrat nahoru |
|
|
Svestka
Založen: 08. 07. 2010 Příspěvky: 32
|
Zaslal: 9. červenec 2010, 21:16:18 Předmět: |
|
|
Tak jelikož vybyl čas, tak jsem se na to vrhl ještě dnes a i když jsem musel doinstalovat SDK k directX tak potom se mi SDL podařilo zkompilovat a už jede vše tak jak jsem původně chtěl.
Děkuji za navedení myšlenky na zkompilování SDL v příslušném režimu. |
|
Návrat nahoru |
|
|
|