OpenArena Message Boards

OpenArena Contributions => Development => Topic started by: Orbital-S2D on December 25, 2007, 08:23:08 PM



Title: Help with MSVCE Setup?
Post by: Orbital-S2D on December 25, 2007, 08:23:08 PM
ok so i downloaded MSVCE (thats it) Now i do this SVN thingy and Download the OA source. How do i setup MSVCE to compile the OA source? Im nub with all of it so baby steps. (hey least i got it downloaded) Im gonna do something with it :o I saw Code 3 Arena and i made a mod for q3 and it werked but i used notepad and just used the batches to compile QVMs :S Im ready to get deeper in it...


Title: Re: Help with MSVCE Setup?
Post by: Orbital-S2D on December 29, 2007, 09:40:23 AM
:)


Title: Re: Help with MSVCE Setup?
Post by: kit89 on December 29, 2007, 02:31:25 PM
I don't think any of the developers use Microsoft Visual Studio, for programming OA.

You'll probably find they use there proffered Text Editor & compile it using a bat or shell script.


Title: Re: Help with MSVCE Setup?
Post by: Orbital-S2D on December 29, 2007, 06:32:44 PM
Oh wow really? ok i can do that too then but tell me how does compiling an exe work with a batch? The same as the qvm's? If so ill still need a refresher on that :)


Title: Re: Help with MSVCE Setup?
Post by: dmn_clown on December 29, 2007, 07:48:37 PM
STFW (http://www.google.com/search?hl=en&q=visual+studio+setup&btnG=Search)


Title: Re: Help with MSVCE Setup?
Post by: w1zrd on December 29, 2007, 08:57:10 PM
STFW (http://www.google.com/search?hl=en&q=visual+studio+setup&btnG=Search)
I actually had to google what STFW means :)


Title: Re: Help with MSVCE Setup?
Post by: dmn_clown on December 30, 2007, 08:31:40 PM
8)


Title: Re: Help with MSVCE Setup?
Post by: Orbital-S2D on February 14, 2008, 08:22:20 PM
Ok after setting up MSVC to compile via STFW ioquake 3 with sdl openal and curl. i get the following errors and warnings.

First Warning
Code:
c:\documents and settings\matthew b. jones\desktop\ioquake3\code\client\cl_main.c(1098) : warning C4996: 'putenv': The POSIX name for this item is deprecated. Instead, use the ISO C++ conformant name: _putenv. See online help for details.
        c:\program files\microsoft visual studio 9.0\vc\include\stdlib.h(864) : see declaration of 'putenv'
can i change putenv to _putenv in cl_main.c?

Second Warning
Code:
MSVCRTD.lib(cinitexe.obj) : warning LNK4098: defaultlib 'msvcrt.lib' conflicts with use of other libs; use /NODEFAULTLIB:library
Hell if i know...

First Error
Code:
tr_image.obj : error LNK2001: unresolved external symbol _LoadPNG
...

Second Error
Code:
..\..\build\ioBwA\ioBwA.exe : fatal error LNK1120: 1 unresolved externals
My guess is that this is due to the first error.

These are in order as they occur in the output.

Other than that everything else compiles fine. I can compile cgame game and q3_ui with no warnings or errors.

Im very new to this... I just started compiling and editing last week... I think that i have learned alot in the past few DAYS. But i know i dont know everything so take your time when you reply... I might not understand. Replys like STFW arent helpful.


Title: Re: Help with MSVCE Setup?
Post by: dmn_clown on February 17, 2008, 12:19:47 PM
Replys like STFW arent helpful.

When the reply STFW is a link to a google search with multiple answers to your question on various web pages, they are.   

The fact of the matter is that very few problems that you are going to run across in setting up an IDE or even your compiler errors go unanswered somewhere on the web, all it takes is for the person asking the question to get off their lazy bum and look for those answers.

For example error LNK2001 (http://www.google.com/search?q=error+LNK2001) and the very first hit (http://msdn2.microsoft.com/en-us/library/f6xx1b1z(vs.71).aspx) on that search gives us this information:

Quote
Code references something (such as a function, variable, or label) that the linker can't find in the libraries and object files.

Possible causes

    * What the code asks for doesn't exist (the symbol is spelled incorrectly or uses the wrong case, for example).
    * The code asks for the wrong thing (you are using mixed versions of the libraries, some from one version of the product, others from another version).

This error message is followed by fatal error LNK1120

By now that little light should be going off in your head that you are missing libpng.

Quote
can i change putenv to _putenv in cl_main.c?

You can ignore that.

Quote
warning LNK4098: defaultlib 'msvcrt.lib' conflicts with use of other libs; use /NODEFAULTLIB:library

Again the very first hit (http://www.stanford.edu/~yljiang/pages/GPRS%20Linking%20Warning.htm) in a web search gives the answer:

Quote
LINK : warning LNK4098: defaultlib "LIBC" conflicts with use of other libs; use /NODEFAULTLIB:library

 

Modify the setting at /Project/Setting/Link/Input/

Ignore libraries:

libc.lib, libcmt.lib, msvcrt.lib, libcmtd.lib, msvcrtd.lib

That will be OK. Get more details in article in MSDN(below)

 

This setting is for the Debug Single-threaded, in the future, we may make a release edition. This setting may be modified at that time

Now obviously you need to modify this to fit your specific needs a task that I leave up to you, happy learning :)


Title: Re: Help with MSVCE Setup?
Post by: Orbital-S2D on February 17, 2008, 04:53:07 PM
Thankyou verymuch. I didnt realise that those errors were generalistic like that. I thought that may have been something q3 specific. So Now i know :)

Now just so you dont think im a "lazy bum" :> i have been doing research on the matter... It seems that when i downloaded the ioQuake3 source from the SVN i downloaded revision 1254.. the png headers and source were not included in the project files for VC... So that was a problem.

Now is it better to use the trunk or the 1.34 branch?


Title: Re: Help with MSVCE Setup?
Post by: dmn_clown on February 18, 2008, 12:53:03 AM
You're welcome :)

I'd use trunk.


Title: Re: Help with MSVCE Setup?
Post by: Orbital-S2D on February 18, 2008, 10:25:28 AM
excellent. LOL what if im using it and they update something else :P