Go Back   EQEmulator Home > EQEmulator Forums > Archives > Archive::Support > Archive::Tutorials/Howto's > Tutorials--Outdated Use the Wiki > Tutorials::Discussion

Tutorials::Discussion Discuss Tutorials here. Do NOT POST tutorials here, they belong on the wiki.

 
 
Thread Tools Display Modes
Prev Previous Post   Next Post Next
  #1  
Old 08-22-2004, 06:44 AM
Cisyouc
Demi-God
 
Join Date: Jun 2004
Location: Heaven.
Posts: 1,260
Default Slightly Outdated :: HOWTO: Compile EQEMu on VC++6

In this guide I will show you how to compile EQEMu Source using Visual C++ 6 and the latest source rar/zip. I will not be covering how to operate wincvs as it is covered in other posts.

You will need:
  • Basic Knowledge of Windows
  • An Internet Connection
  • Microsoft Visual C++ 6
  • Patience
Downloading the Source and Components
You must download the following:
Now do the following:
  • Extract the SOURCE into: C:\EQEMu\Source\
  • Extract MySQL into : C:\EQEMu\MySQL\
  • Extract zLIB into : C:\EQEMu\zlib\
  • Extract MySQL Includes to : C:\EQEMu\MySQL\
  • (Optional) Extract Perl Into : C:\EQEMu\perl
------------------------------
Now, open up Microsoft Visual C++ 6, and make sure you are NOT using a '.NET' version by going to Help > About Visual C++...

If you see a screen that looks like:

You DO have Visual C++ 6 and you can move on. However, if you see:

You may NOT have Visual C++ 6. Indicators you do not have VC++6 are:
-Mentioning of the .NET Framework (Blue)
-.NET Logo (Green, see below)
-Year 2003, 2004 or 2005 Mentioned. (Red)

.NET Logo looks like this:

However, the Visual Studio logo (the one you want) looks like this:

------------------------------------------------------
Configuring the Project
Go to Start>Run and type in "C:\EQEMu\Source\EMuShareMem\EMuShareMem.dsw"


Immediatly, Visual Studio should open with the EMuShareMem.dll project.

Go to Tools > Options...
Click the Directories Tab, and under Include Files, add:

C:\EQEMu\MySQL\include

Now go to Build > Build EMuShareMem.dll

When it is sucessful, you will see this:

Next, go to File > Close Workspace, and then File > Open Workspace. Select 'World.dsw' inside of C:\EQEMu\Source\World\ and click Open.

Before building this time, go to Tools > Options...

Next, click the Directories Tab and add these directories in under "Include Files":

C:\EQEMu\mysql\include
C:\EQEMu\zlib
C:\EQEMu\zlib\include

Now under "Show Directories For:" Change the dropdown menu to "Library Files".

Now add to here,

C:\EQEMu\MySQL\lib\opt

Now click OK and go to Build > Build World.exe!

--------------------------------------------------------
Building Zone.exe (no Perl)
Go to Start > Run
Type in "C:\EQEMu\Source\zone\zone.dsw"
Click OK

Go to Tools > Options...

Verify that the following directories are listed under "Include Files" in the Directories Tab:

C:\EQEMu\mysql\include
C:\EQEMu\zlib
C:\EQEMu\zlib\include

If they are not, add them!

Now Click "Include Files" And Drop Down to "Library Files" and verify that the following is in there:

C:\EQEMu\MySQL\lib\opt

If it is not, add it!

Now, you may go to Build > Build Zone.exe
------------------------------------------------
Building Zone.exe WITH Perl

First, download and install ActivePerl (ActivePerl Downloads) to C:\EQEMu\perl

Now install IO::Scalar using a snip from Lurker_005's Guide to the Perl Quest System.
Quote:
Installing Perl

Download Perl 5.8, Then install using the default settings for everything. Now reboot so path changes take affect. Congratulations, Perl is installed.

Installing IO::Scalar
If you don't already have it, download nmake.exe (save with .exe extension). Copy it into your perl\bin directory. Then type the following in a DOS window:

Code:
perl -MCPAN -e shell
When asked if you want to configure it manually, say "no". Once everything is done there type in:

Code:
install IO::Scalar
Once complete it should say -- install OK.

Problems
If perl isn't installed properly the zone windows will disapear after starting up. If you followed all the above steps correctly, make sure you have a copy of "Perl58.dll" in your "C:\Perl\bin" directory. If there is a copy there, search your computer for all other copies of it and delete them. Also note it is Perl58, not 56.

To test if IO::Scalars is installed type the following in a DOS window:

Code:
perl -MIO::Scalar -e "print 'Installed'"
If you get an error it isn't working. Make sure you installed it correctly, if you didn't delete the following files in "C:\Perl\site\lib\IO" and then rerun "install IO::Scalar":
Scalar.pm
Scalar.pm.html
ScalarArray.pm


Last Edited by Monrezz on 16th February 2004.
Next,

Go to Start > Run
Type in "C:\EQEMu\Source\zone\zone.dsw"
Click OK

Now, click OKAY and go to Build > Configurations.

Click on Add... and make:

Configuration: Perl
Copy Settings From: Zone - Win32 Release
Platform: Win32

Click OK, and then Close.

Next, go to Build > Set Active Configuration

Select Zone - Win32 Perl

Click OK.

Go to Tools > Options...

Verify that the following directories are listed under "Include Files" in the Directories Tab:

C:\EQEMu\mysql\include
C:\EQEMu\zlib
C:\EQEMu\zlib\include

If they are not, add them!

Now Click "Include Files" And Drop Down to "Library Files" and verify that the following is in there:

C:\EQEMu\MySQL\lib\opt

If it is not, add it!

Now, go to Project > Settings...

Click the C/C++ Tab and Verify the Category is GENERAL.

Under Preprocessor Definitions, ADD (Do NOT replace), the following:

,EMBPERL,EMBPERL_PLUGIN

Now switch the Category to Preprocessor and add to the "Additional Include Directories",

c:\eqemu\perl\lib\core

Next, Click the Link tab and Change the Category to Input

Under "Additional Library Path", Add:

c:\eqemu\perl\lib\core

Now click okay, and go to Project > Add to Project > Files...

In "File Name" Type:
emb*.* and hit enter.

Select all files that still are showing and click OPEN.

Now go to Build > Build Zone.exe!


--------------------------------------------------------------
Tested under 2 Computers, Windows XP Home, Microsoft Visual C++ 6.0 (199 on both.

If you feel I missed something or was unclear about something post here, but, again, I won't be supporting this thread as I don't want to be flooded with newbie tells =D.
__________________
namespace retval { template <class T> class ReturnValueGen { private: T x; public: ReturnValueGen() { x = 0; }; T& Generator() { return x; }; }; } int main() { retval::ReturnValueGen<int> retvalue; return retvalue.Generator(); }
C++ is wonderful.
Reply With Quote
 


Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump

   

All times are GMT -4. The time now is 04:53 AM.


 

Everquest is a registered trademark of Daybreak Game Company LLC.
EQEmulator is not associated or affiliated in any way with Daybreak Game Company LLC.
Except where otherwise noted, this site is licensed under a Creative Commons License.
       
Powered by vBulletin®, Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Template by Bluepearl Design and vBulletin Templates - Ver3.3