Giter Site home page Giter Site logo

Compiling Stratagus Code about stratagus HOT 11 CLOSED

wargus avatar wargus commented on May 24, 2024
Compiling Stratagus Code

from stratagus.

Comments (11)

timfel avatar timfel commented on May 24, 2024

(by pali)
Music is played by SDL. So it depends on your SDL compilation. For additional ogg music support you need compile Stratagus with vorbis library. For movies you need additional theroa library.

from stratagus.

timfel avatar timfel commented on May 24, 2024

(by dinky-dye-aussie)
I've downloaded all of those - sdl, vorbis and theroa, but when I compile the exe, the intro movies dont work, and I can't hear the music at any time during gameplay or when I'm in the main menu.

What I want to know now is how and where do you have all these library files installed on your PC and what are the project settings you have setup in VC++ so as to compile the program successfully so everything works?

Im also getting a heap of "_vsn_prinft" warnings when I compile the code as well.

from stratagus.

timfel avatar timfel commented on May 24, 2024

(by pali)
I do not have Windows and I did not write MSVC project file. Stratagus has some code in C++ and some in C. Microsoft has no C compiler (with C99 standards) so warnings (or errors) is typical...

MSVC project files come from cybermind and are not supported.

from stratagus.

timfel avatar timfel commented on May 24, 2024

(by joris-dauphin)
There are some missing preprocessor definitions in the project :
USE_BZ2LIB
USE_MIKMOD
USE_VORBIS
USE_THEORA
_CRT_SECURE_NO_DEPRECATE=1 // this one should "disable" the warning

from stratagus.

timfel avatar timfel commented on May 24, 2024

(by pali)
Joris could you fix this?

from stratagus.

timfel avatar timfel commented on May 24, 2024

(by joris-dauphin)
Yes, I will do this this week-end.

from stratagus.

timfel avatar timfel commented on May 24, 2024

(by dinky-dye-aussie)
I did what you suggested Joris, and added those variables to the preprocessor. The movies now work, but the palette is all wildfire - you can't make anything out in either intro movie its all rainbow coloured. everything else in-game works as normal though.

Also there was a variable in the code that was first declared as a class, then was used in a struct. so I changed the initial declaration to a struct as well and the warning about it went away. now the only warning a I am getting is about the "extern int strlen" being an insufficiant linkage to the dll file...dunno what that means....?

other than that its all good.

from stratagus.

timfel avatar timfel commented on May 24, 2024

(by dinky-dye-aussie)
to be more specific it says this:

c:\users\travis\wargus\stratagus-2.2.5.5\src\include\util.h(218) : warning C4273: 'strnlen' : inconsistent dll linkage
c:\program files (x86)\microsoft visual studio 8\vc\include\string.h(82) : see previous definition of 'strnlen'

referring to this code piece - "extern size_t strnlen(const char *str, size_t strsize);

and when I look at the previous definition in string.h, it looks like this:

_CRTIMP __checkReturn size_t __cdecl strnlen(__in_z const char * _Str, __in size_t _MaxCount);

can I fix it?

from stratagus.

timfel avatar timfel commented on May 24, 2024

(by pali)
strnlen is declarated as: size_t strnlen(const char *s, size_t maxlen); so no changes to this code
See: http://pubs.opengroup.org/onlinepubs/9699919799/functions/strnlen.html

You can (un)define HAVE_STRNLEN to use (or not to use) this function in stratagus source.

from stratagus.

timfel avatar timfel commented on May 24, 2024

(by pali)
Stratagus (in bzr trunk) now using CMake build system. CMake can generate Makefiles or vcproj files for MSVC. Please check if it works now.

from stratagus.

timfel avatar timfel commented on May 24, 2024

(by pali)
A lot of CMake and MSVC patches were commited. If problem still exists, reopen bug.

from stratagus.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.