Jump to content
TrinityCore

How to compile connection_patcher in 32bit (win)


Magnuss
 Share

Recommended Posts

Hi,

I compiled server and tools successful in 64bit on windows. And everything is working.

However a friend has a Windows 32bit only and needed the connection_patcher as 32bit version. I wanted to recompile the tools only.

But in MSVS there is no option in the dropdown for win32 and in CMAKE I also couldn't figure out what I have to chance.

Any help is welcome ;-)

 

 

 

Link to comment
Share on other sites

CMake -> File -> Delete Cache
 Then click "Configure" and a the compiler selection will pop up. Select the right VS version (without Win64 at the and) and you're good to go.

Regards,
Carbenium

 

Edit: ofc click "Generate" too and open the new .sln file with VS to apply the changes.

Link to comment
Share on other sites

Thanks, works but ...

... of course I had to download and install 32bit versions of Boost and OpenSSL to get it running. And to use the 32bit libeay32.dll.  Hope it helps somebody else.

 

Beside of that .... is there any advantage to compile the core in 64bit ?
I have done it but for 90% of software the only 'advantage' is that the 64bit version blows up the file size.

Link to comment
Share on other sites

I know that, but that's exactly the point: Most software does not address such high amount of memory.

Is there something at TC ?

It belong also not to the classical group of 'CAD/CAE-like programs, data managers, programs to work with digital media and applied scientific applications'.

But what do you recommend ?

Link to comment
Share on other sites

That's a word :-)

I found also this: http://stackoverflow.com/questions/15948767/why-should-we-build-64-bit-targets-for-c-application

The answer about the CPU registers I found interesting for me.

" Aside from the OBVIOUS reasons given above (mainly "using more than 2-3GB of memory"), the reason to compile for 64-bit is that x86-64 has 16 registers, where x86-32 has 8. Since one of those registers is the stackpointer and often rBP is reserved for "framepointer", the actual useful number of registers is 6 and 14 respectively. The additional registers allow, for example, larger number of parameters being passed in registers, and larger number of temporary variables being held in registers within a function. This has a positive effect on the actual execution speed of the code, as every time memory is used instead of a register, AT LEAST it leads to a more complex instruction, and often to an additional instruction having to be used. This in turn makes the code larger when there isn't enough registers "

Link to comment
Share on other sites

 Share

  • Recently Browsing   0 members

    No registered users viewing this page.

×
×
  • Create New...