Alright. So I've fiddled with EQEmu a little while, previously running Win32 versions without a hitch (well, ok, small hitches here and there, but never in the compiling stage) so I decided I would have a go at a new install (as in everything installed, Win64 versions of everything), but this time going with VS2010 Prof and the guide in this thread (which honestly, Akkadius has made this so simple, I think, that the guide itself isn't needed, it all compiles just fine -- for the most part?).
However, I'm having an issue with World.exe
Here is the compile log for World.exe (and of course its dependency):
Code:
1>------ Build started: Project: EMuShareMem, Configuration: Release x64 x64 ------
1>Build started 9/15/2012 3:48:06 PM.
1>InitializeBuildStatus:
1> Creating "x64\Release x64\EMuShareMem.unsuccessfulbuild" because "AlwaysCreate" was specified.
1>ClCompile:
1> DLLMain.cpp
1> Doors.cpp
1> Items.cpp
1> Loot.cpp
1> MMF.cpp
1> NPCFactionLists.cpp
1>MMF.cpp(325): warning C4532: 'return' : jump out of __finally block has undefined behavior during termination handling
1> NPCTypes.cpp
1> Opcodes.cpp
1> SkillCaps.cpp
1> Spells.cpp
1> debug.cpp
1> Mutex.cpp
1> SharedLibrary.cpp
1> timer.cpp
1>Link:
1> Creating library .\../Build/EMuShareMem/EMuShareMem.lib and object .\../Build/EMuShareMem/EMuShareMem.exp
1> EMuShareMem.vcxproj -> C:\EQEmuSVNFiles\EQEmu\trunk\EQEmuServer\x64\Release x64\EMuShareMem.dll
1>FinalizeBuildStatus:
1> Deleting file "x64\Release x64\EMuShareMem.unsuccessfulbuild".
1> Touching "x64\Release x64\EMuShareMem.lastbuildstate".
1>
1>Build succeeded.
1>
1>Time Elapsed 00:00:05.17
2>------ Build started: Project: World, Configuration: ReleaseBots x64 x64 ------
2>Build started 9/15/2012 3:48:11 PM.
2>InitializeBuildStatus:
2> Creating "x64\ReleaseBots x64\World.unsuccessfulbuild" because "AlwaysCreate" was specified.
2>ClCompile:
2> Adventure.cpp
2> AdventureManager.cpp
2> client.cpp
2> cliententry.cpp
2> clientlist.cpp
2> console.cpp
2> EQLConfig.cpp
2> EQW.cpp
2> EQWHTTPHandler.cpp
2> EQWParser.cpp
2> HTTPRequest.cpp
2> LauncherLink.cpp
2> LauncherList.cpp
2> lfplist.cpp
2> LoginServer.cpp
2> LoginServerList.cpp
2> net.cpp
2> perl_EQLConfig.cpp
2> perl_EQW.cpp
2> perl_HTTPRequest.cpp
2> queryserv.cpp
2> wguild_mgr.cpp
2> world_logsys.cpp
2> WorldConfig.cpp
2> worlddb.cpp
2> zonelist.cpp
2> zoneserver.cpp
2> ucs.cpp
2> Anniversary.cpp
2> Client62.cpp
2> Underfoot.cpp
2> HoT.cpp
2> VoA.cpp
2> Patches.cpp
2> SoD.cpp
2> SoF.cpp
2> Titanium.cpp
2> Base64.cpp
2> BasePacket.cpp
2> classes.cpp
2> Condition.cpp
2> CRC16.cpp
2> crc32.cpp
2> database.cpp
2> dbasync.cpp
2> dbcore.cpp
2> DBMemLeak.cpp
2> debug.cpp
2> emu_opcodes.cpp
2> EMuShareMem.cpp
2> EmuTCPConnection.cpp
2> EmuTCPServer.cpp
2> EQDB.cpp
2> EQDBRes.cpp
2> EQEmuConfig.cpp
2> EQEMuError.cpp
2> EQPacket.cpp
2> EQStream.cpp
2> EQStreamFactory.cpp
2> EQStreamIdent.cpp
2> EQStreamProxy.cpp
2> eqtime.cpp
2> extprofile.cpp
2> File.cpp
2> guild_base.cpp
2> guilds.cpp
2> HttpdCookies.cpp
2> HttpdForm.cpp
2> HttpdSocket.cpp
2> HTTPSocket.cpp
2> Item.cpp
2>c:\eqemusvnfiles\eqemu\trunk\eqemuserver\common\socketlib\httpsocket.cpp(115): warning C4715: 'HTTPSocket::ProcessReceivedData' : not all control paths return a value
2> logsys.cpp
2> logsys_eqemu.cpp
2> md5.cpp
2> MemFile.cpp
2> Mime.cpp
2> misc.cpp
2> MiscFunctions.cpp
2> moremath.cpp
2> Mutex.cpp
2> opcodemgr.cpp
2> packet_dump.cpp
2> packet_dump_file.cpp
2> packet_functions.cpp
2> Parse.cpp
2> perl_EQDB.cpp
2> perl_EQDBRes.cpp
2> races.cpp
2> rulesys.cpp
2> serverinfo.cpp
2> shareddb.cpp
2> SharedLibrary.cpp
2> socket_include.cpp
2> StructStrategy.cpp
2> TCPConnection.cpp
2> TCPServer.cpp
2> timeoutmgr.cpp
2> timer.cpp
2> tinystr.cpp
2> tinyxml.cpp
2> tinyxmlerror.cpp
2> tinyxmlparser.cpp
2> Utility.cpp
2> XMLParser.cpp
2>Link:
2> World.vcxproj -> C:\EQEmuSVNFiles\EQEmu\trunk\EQEmuServer\x64\ReleaseBots x64\World.exe
2>FinalizeBuildStatus:
2> Deleting file "x64\ReleaseBots x64\World.unsuccessfulbuild".
2> Touching "x64\ReleaseBots x64\World.lastbuildstate".
2>
2>Build succeeded.
2>
2>Time Elapsed 00:01:04.10
========== Build: 2 succeeded, 0 failed, 0 up-to-date, 0 skipped ==========
Upon running, here is the error I am receiving:
Code:
The application was unable to start correctly (0xc000007b). Click OK to close the application.
From research, it's either a .NET issue (for those not running 4.0 which I am) or from those attempting to run using a dependency/DLL that is Win32 and the program is Win64, or vice versa.
Well.. All I know is, my EMuShareMem.DLL is being compiled into the /x64/Release x64" directory and my World.exe is being compiled into my /x64/ReleaseBots x64" where I would think they should be.
So, I'm at a loss. As you may have assumed, I am indeed attempting to compile a ReleaseBots x64 version (bots version). I did take notice though configuration manager in VS2010 that "queryserv" defaulted on a "Release" configuration and not "Release x64". But I noticed this after the first and second attempt (after cleaning and rebuilding, just in case) to build the project. So I changed it to "Release x64", even though I believe it would make little to no difference to World.exe or the .DLL since they don't depend on it, but, figured, what the heck.
At any rate.. 4 hours in, I'm just as clueless as to the issue as I was when I first received the error.
Any ideas?