View Full Version : X64 Compile errors, perl64 failing.
Burningsoul
07-16-2012, 02:34 PM
Preface: I can compile a 32bit version of the emu source just fine using VS2008 and server.sln. I've installed VS2010 Ultimate, Mysql 5.5.21 X64, and Perl64 (versions 5.16/5.14/5.12 - I've tried them all).
Using Emu revision 2167 - I've loaded server10.sln, set up the include and library folders correctly, set the solution config to releasebotsx64, and solution platform to x64.
I have GOT to be overlooking something as the build fails with a boat load of perl64 errors. Most of them haven't even been posted on these forums since the 2004 era. Errors are as follows..
2>c:\perl64\perl\lib\core\regexp.h(304): error C2143: syntax error : missing ';' before 'const'
2>c:\perl64\perl\lib\core\regexp.h(304): error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
2>c:\perl64\perl\lib\core\regexp.h(304): error C2086: 'int __inline__' : redefinition
2>c:\perl64\perl\lib\core\op_reg_common.h(73): error C2146: syntax error : missing ';' before identifier 'regex_charset'
I've done clean uninstall/reinstalls of each version of Perl64 from activestate, as well as strawberry perl. As I noted, these errors are ancient when searched for here, and haven't been mentioned in forever. Is this just a stupid noob overlooking something simple?
Maze_EQ
07-16-2012, 03:03 PM
Try dropping to perl 5.10, I was having that issue on my 2008 machine lastnight when I went to compile, dropped to perl 5.10 x64 and everything worked fine. Hopefully that helps some.
gibroni
07-16-2012, 04:25 PM
just did a 64 release (no bots) compile and worked fine. using 5.14 and perl64
Burningsoul
07-16-2012, 05:43 PM
Thanks for the heads up. I will wipe everything clean and try once more with 5.14.
GLGanjika
07-16-2012, 07:55 PM
Thanks for the heads up. I will wipe everything clean and try once more with 5.14.
I find9and have heard from others a lot) one gets the best results when reformatting the computer and then starting over
on a fresh install of your OS - following whatever guide your following to the T.
Burningsoul
07-16-2012, 08:26 PM
I'm not formating just to get an X64 bit version of something I already have. I know how to remove these files. I can, and have been, compiling 32bit versions of them for awhile. No offense bud, that'd be my advice to someone else too.
I'm getting it sorted, I had to sort the dependencies for the project, and change the references to perl5xx.lib to the version I'm using. Everything, save for queryserv now compiles. It throws the following errors:
1>------ Build started: Project: ucs, Configuration: Release x64 x64 ------
2>------ Build started: Project: queryserv, Configuration: Release x64 x64 ------
1>Build started 7/16/2012 7:24:10 PM.
2>Build started 7/16/2012 7:24:10 PM.
1>InitializeBuildStatus:
1> Touching "x64\Release x64\ucs.unsuccessfulbuild".
2>InitializeBuildStatus:
2> Creating "x64\Release x64\queryserv.unsuccessfulbuild" because "AlwaysCreate" was specified.
2>ClCompile:
2> All outputs are up-to-date.
1>ClCompile:
1> clientlist.cpp
2>Link:
2> All outputs are up-to-date.
2> queryserv.vcxproj -> C:\EQSource\trunk\EQEmuServer\x64\Release x64\QueryServer.exe
2>FinalizeBuildStatus:
2> Deleting file "x64\Release x64\queryserv.unsuccessfulbuild".
2> Touching "x64\Release x64\queryserv.lastbuildstate".
2>
2>Build succeeded.
2>
2>Time Elapsed 00:00:00.12
1>c:\eqsource\trunk\eqemuserver\common\BasePacket.h( 61): warning C4267: 'initializing' : conversion from 'size_t' to 'uint32', possible loss of data
1>c:\eqsource\trunk\eqemuserver\common\BasePacket.h( 67): warning C4267: 'initializing' : conversion from 'size_t' to 'uint32', possible loss of data
1>clientlist.cpp(314): warning C4267: 'initializing' : conversion from 'size_t' to 'int', possible loss of data
1>clientlist.cpp(317): error C2065: 'OP_MailDeliveryStatus' : undeclared identifier
1>clientlist.cpp(341): error C2065: 'OP_MailDeliveryStatus' : undeclared identifier
1>clientlist.cpp(414): error C2065: 'OP_Buddy' : undeclared identifier
1>clientlist.cpp(465): error C2065: 'OP_Ignore' : undeclared identifier
1>clientlist.cpp(638): error C2065: 'OP_MailLogin' : undeclared identifier
1>clientlist.cpp(638): error C2051: case expression not constant
1>clientlist.cpp(698): error C2065: 'OP_Mail' : undeclared identifier
1>clientlist.cpp(698): error C2051: case expression not constant
1>clientlist.cpp(712): warning C4065: switch statement contains 'default' but no 'case' labels
1>clientlist.cpp(922): warning C4267: 'initializing' : conversion from 'size_t' to 'int', possible loss of data
1>clientlist.cpp(936): warning C4267: '+=' : conversion from 'size_t' to 'int', possible loss of data
1>clientlist.cpp(938): error C2065: 'OP_MailLogin' : undeclared identifier
1>clientlist.cpp(1090): error C2065: 'OP_Mail' : undeclared identifier
1>clientlist.cpp(1105): warning C4267: 'argument' : conversion from 'size_t' to 'const uint32', possible loss of data
1>clientlist.cpp(1178): error C2065: 'OP_Mail' : undeclared identifier
1>clientlist.cpp(1193): warning C4267: 'argument' : conversion from 'size_t' to 'const uint32', possible loss of data
1>clientlist.cpp(1277): warning C4267: 'argument' : conversion from 'size_t' to 'const uint32', possible loss of data
1>clientlist.cpp(1314): warning C4018: '<' : signed/unsigned mismatch
1>clientlist.cpp(1427): warning C4018: '<' : signed/unsigned mismatch
1>clientlist.cpp(1514): warning C4267: 'initializing' : conversion from 'size_t' to 'int', possible loss of data
1>clientlist.cpp(1559): warning C4267: 'initializing' : conversion from 'size_t' to 'int', possible loss of data
1>clientlist.cpp(1561): error C2065: 'OP_ChannelAnnounceJoin' : undeclared identifier
1>clientlist.cpp(1579): warning C4267: 'initializing' : conversion from 'size_t' to 'int', possible loss of data
1>clientlist.cpp(1581): error C2065: 'OP_ChannelAnnounceLeave' : undeclared identifier
1>clientlist.cpp(1607): warning C4267: 'argument' : conversion from 'size_t' to 'const uint32', possible loss of data
1>clientlist.cpp(2290): warning C4267: 'initializing' : conversion from 'size_t' to 'int', possible loss of data
1>clientlist.cpp(2292): error C2065: 'OP_MailNew' : undeclared identifier
1>clientlist.cpp(2318): error C2065: 'OP_MailboxChange' : undeclared identifier
1>clientlist.cpp(2345): error C2065: 'OP_Buddy' : undeclared identifier
1>clientlist.cpp(2368): error C2065: 'OP_Ignore' : undeclared identifier
1> database.cpp
1>c:\eqsource\trunk\eqemuserver\common\BasePacket.h( 61): warning C4267: 'initializing' : conversion from 'size_t' to 'uint32', possible loss of data
1>c:\eqsource\trunk\eqemuserver\common\BasePacket.h( 67): warning C4267: 'initializing' : conversion from 'size_t' to 'uint32', possible loss of data
1>database.cpp(412): warning C4267: '+=' : conversion from 'size_t' to 'int', possible loss of data
1>database.cpp(415): warning C4267: '+=' : conversion from 'size_t' to 'int', possible loss of data
1>database.cpp(418): warning C4267: '+=' : conversion from 'size_t' to 'int', possible loss of data
1>database.cpp(421): warning C4267: '+=' : conversion from 'size_t' to 'int', possible loss of data
1>database.cpp(423): error C2065: 'OP_MailHeaderCount' : undeclared identifier
1>database.cpp(446): warning C4267: '=' : conversion from 'size_t' to 'int', possible loss of data
1>database.cpp(448): warning C4267: '=' : conversion from 'size_t' to 'int', possible loss of data
1>database.cpp(450): warning C4267: '=' : conversion from 'size_t' to 'int', possible loss of data
1>database.cpp(452): warning C4267: '=' : conversion from 'size_t' to 'int', possible loss of data
1>database.cpp(453): warning C4267: '=' : conversion from 'size_t' to 'int', possible loss of data
1>database.cpp(454): warning C4267: '=' : conversion from 'size_t' to 'int', possible loss of data
1>database.cpp(455): warning C4267: '=' : conversion from 'size_t' to 'int', possible loss of data
1>database.cpp(456): warning C4267: '=' : conversion from 'size_t' to 'int', possible loss of data
1>database.cpp(519): warning C4267: 'initializing' : conversion from 'size_t' to 'int', possible loss of data
1>database.cpp(521): error C2065: 'OP_MailSendBody' : undeclared identifier
1>database.cpp(578): warning C4267: 'argument' : conversion from 'size_t' to 'int32', possible loss of data
1>database.cpp(579): warning C4267: 'argument' : conversion from 'size_t' to 'int32', possible loss of data
1>database.cpp(586): warning C4244: 'initializing' : conversion from 'time_t' to 'int', possible loss of data
1>
1>Build FAILED.
1>
1>Time Elapsed 00:00:01.22
========== Build: 1 succeeded, 1 failed, 4 up-to-date, 0 skipped ==========
Specs are as follows:
W7 64 / VS2010 Ultimate / Perl 5.16 64 / Mysql 5.5 with needed dev files
All projects in the solution have dependencies set for the proper include and library directories. References to perl514.lib have been changed. Added _WINDOWS to the preprocessor definitions.
Maze_EQ
07-16-2012, 09:18 PM
Queryserve->UCS dependency
I think.
vBulletin® v3.8.11, Copyright ©2000-2025, vBulletin Solutions Inc.