Jump to content
TrinityCore

Warlords of Draenor Core


meeek
 Share

Recommended Posts

Hey, I've been trying to compile from github the core from 6.2.3/6.2.4, I'm well aware its stopped developing. I cannot get it to configure properly in CMake, nor can I obviously build it.

 

I'd be willing to pay for help and get this working and running. I want to develop my own server on my freetime as a learning project and for entertainment. I can't find any core for WoD, sadly.. Very hard, would appreciate any quick help

 

Link to comment
Share on other sites

32 minutes ago, meeek said:

Hey, I've been trying to compile from github the core from 6.2.3/6.2.4, I'm well aware its stopped developing. I cannot get it to configure properly in CMake, nor can I obviously build it.

 

I'd be willing to pay for help and get this working and running. I want to develop my own server on my freetime as a learning project and for entertainment. I can't find any core for WoD, sadly.. Very hard, would appreciate any quick help

 

pastebin your compilation log.

Link to comment
Share on other sites

52 minutes ago, Aokromes said:

pastebin your compilation log.

I'm using; 

https://github.com/TrinityCore/TrinityCore/tree/6.2.4/21355

Generating through CMake gives me this ; 

https://pastebin.com/jtNPMQRK

Error with OpenSSL not being found, etc. If I fix openssl;

this shows:

https://pastebin.com/jNEaV67F

I can't get Boost to work properly for some reason. If I change something in the CMakeLists to route to boost folder, it fixes the boost version being outdated but still wont work.

Then it tells me it cant find x amount of Boost libraries.

https://pastebin.com/LdCP7rZa

 

I'm pretty stuck, you have discord or anything by any chance?

Edited by meeek
Link to comment
Share on other sites

10 minutes ago, meeek said:

I'm using; 

https://github.com/TrinityCore/TrinityCore/tree/6.2.4/21355

Generating through CMake gives me this ; 

https://pastebin.com/jtNPMQRK

Error with OpenSSL not being found, etc. If I fix openssl;

this shows:

https://pastebin.com/jNEaV67F

I can't get Boost to work properly for some reason. If I change something in the CMakeLists to route to boost folder, it fixes the boost version being outdated but still wont work.

Then it tells me it cant find x amount of Boost libraries.

https://pastebin.com/LdCP7rZa

 

I'm pretty stuck, you have discord or anything by any chance?

discord private support only helps one person, you very likely need  to port 

boost detect fixes from https://github.com/TrinityCore/TrinityCore/commits/master/cmake

Link to comment
Share on other sites

20 minutes ago, Aokromes said:

discord private support

Understandable.

 

20 minutes ago, Aokromes said:

you very likely need  to port 

boost detect fixes from https://github.com/TrinityCore/TrinityCore/commits/master/cmake

Like which ones? https://github.com/TrinityCore/TrinityCore/commit/cabb352c337ef50e90f174e2dcc42eb3bdaede2d#diff-272ceadb8458515b2ae4b5630a6029cc ? 

How do I implement this one into the notepad though? I tried adding it at the bottom with no success.

EDIT: I tried adding them but my notepad looks different, the ones he say i should remove (the line is not the same).

urgh.

Edited by meeek
Link to comment
Share on other sites

Usually, if you have boost root set up properly, it can still fail if you are using the boost source instead of precompiled binaries or binaries compiled by yourself.

For example, I have everything set up correctly, however when I hide lib64-msvc-14.0 and lib64-msvc-14.1 from my boost installation folder, Cmake will complain with

	CMake Error at cmake/macros/FindBoost.cmake:1231 (message):
Unable to find the requested Boost libraries.

Boost version: 1.64.0

Boost include path: C:/local/boost_1_64_0

Could not find the following static Boost libraries:

boost_system
boost_filesystem
boost_thread
boost_program_options
boost_iostreams
boost_regex

No Boost libraries were found. You may need to set BOOST_LIBRARYDIR to the
directory containing Boost libraries or BOOST_ROOT to the location of
Boost. If you still have problems search on forum for TCE00020.
Call Stack (most recent call first):
dep/boost/CMakeLists.txt:44 (find_package)
	

Link to comment
Share on other sites

Just now, Rochet2 said:

Usually, if you have boost root set up properly, it can still fail if you are using the boost source instead of precompiled binaries or binaries compiled by yourself.

For example, I have everything set up correctly, however when I hide lib64-msvc-14.0 and lib64-msvc-14.1 from my boost installation folder, Cmake will complain with

 


	CMake Error at cmake/macros/FindBoost.cmake:1231 (message):
Unable to find the requested Boost libraries.

Boost version: 1.64.0

Boost include path: C:/local/boost_1_64_0

Could not find the following static Boost libraries:

boost_system
boost_filesystem
boost_thread
boost_program_options
boost_iostreams
boost_regex

No Boost libraries were found. You may need to set BOOST_LIBRARYDIR to the
directory containing Boost libraries or BOOST_ROOT to the location of
Boost. If you still have problems search on forum for TCE00020.
Call Stack (most recent call first):
dep/boost/CMakeLists.txt:44 (find_package)
	

 

Hey mate. Do you have discord or anything I could add you on and try help me solve this?

I'd gladly pay if it works for your time!

Link to comment
Share on other sites

Just now, Rochet2 said:

Do you have the lib folder(s) with msvc in the name?

I have 1, yes. lib64-msvc-14.1 and, libs.

 

I'll try one more time :P You have discord or I can link you my stream and you can walk through me from there? I'd be down to paypal for help

 

Link to comment
Share on other sites

4 minutes ago, meeek said:

I have 1, yes. lib64-msvc-14.1 and, libs.

 

I'll try one more time :P You have discord or I can link you my stream and you can walk through me from there? I'd be down to paypal for help

 

Which compiler did you choose in cmake?

eku8DB8.png

Did you choose Win64? or the one without it?

Link to comment
Share on other sites

With the boost you have you should be using win64.
There was some problems with the new boost versions and the cmake script a while back. Maybe the 6.x core you have has the old cmake script that cannot handle the .1 in the folder name. For this reason I think I temporarily copied my lib64-msvc-14.1 folder and named it lib64-msvc-14.0. But instead of that maybe its better to check if your core has the needed boost cmake changes: https://github.com/TrinityCore/TrinityCore/commit/5734643cecbadfffb7ee1b66c9665d57108923f6#diff-82d123ab4d0745ba8103dc4b10c23d9f

 

 

.. and now right after writing that I just went there and checked and it doesnt, so maybe cherry pick that commit or something.

Link to comment
Share on other sites

2 minutes ago, Rochet2 said:

With the boost you have you should be using win64.
There was some problems with the new boost versions and the cmake script a while back. Maybe the 6.x core you have has the old cmake script that cannot handle the .1 in the folder name. For this reason I think I temporarily copied my lib64-msvc-14.1 folder and named it lib64-msvc-14.0. But instead of that maybe its better to check if your core has the needed boost cmake changes: https://github.com/TrinityCore/TrinityCore/commit/5734643cecbadfffb7ee1b66c9665d57108923f6#diff-82d123ab4d0745ba8103dc4b10c23d9f

 

 

.. and now right after writing that I just went there and checked and it doesnt, so maybe cherry pick that commit or something.

So I'm supposed to use Boost 1.51?
 

> find_package(Boost 1.51 REQUIRED system filesystem thread program_options iostreams regex)

>

set(BOOST_DEBUG ON)
if(DEFINED ENV{BOOST_ROOT})
set(BOOST_ROOT $ENV{BOOST_ROOT})
if(CMAKE_CXX_COMPILER_VERSION VERSION_LESS 19.0)
set(BOOST_LIBRARYDIR ${BOOST_ROOT}/lib${PLATFORM}-msvc-12.0)
else()
set(BOOST_LIBRARYDIR ${BOOST_ROOT}/lib${PLATFORM}-msvc-14.0)

endif()

 

and CMake less than 19?

 

 

Link to comment
Share on other sites

2 minutes ago, meeek said:

So I'm supposed to use Boost 1.51?
 

> find_package(Boost 1.51 REQUIRED system filesystem thread program_options iostreams regex)

>

set(BOOST_DEBUG ON)
if(DEFINED ENV{BOOST_ROOT})
set(BOOST_ROOT $ENV{BOOST_ROOT})
if(CMAKE_CXX_COMPILER_VERSION VERSION_LESS 19.0)
set(BOOST_LIBRARYDIR ${BOOST_ROOT}/lib${PLATFORM}-msvc-12.0)
else()
set(BOOST_LIBRARYDIR ${BOOST_ROOT}/lib${PLATFORM}-msvc-14.0)

endif()

 

and CMake less than 19?

 

 

No. You should cherry-pick the commit I referenced. It should fix your problem with boost (clear cmake cache and retry configure after you cherry picked).

Though I guess also using older versions would get rid of the error since it is caused by newer versions, but .. is  using old stuff really the solution?

Link to comment
Share on other sites

4 minutes ago, Rochet2 said:

No. You should cherry-pick the commit I referenced. It should fix your problem with boost (clear cmake cache and retry configure after you cherry picked)

I added this:

 

if (boost_filesystem_copy_links_without_NO_SCOPED_ENUM)
  target_compile_definitions(boost
    INTERFACE
      -DBOOST_DATE_TIME_NO_LIB
      -DBOOST_REGEX_NO_LIB
      -DBOOST_CHRONO_NO_LIB)
else()
  target_compile_definitions(boost
    INTERFACE
      -DBOOST_DATE_TIME_NO_LIB
      -DBOOST_REGEX_NO_LIB
      -DBOOST_CHRONO_NO_LIB
-DBOOST_NO_CXX11_SCOPED_ENUMS)

 

 

And the only problem I get is with the first line and if, cause its not closed.

EDIT:

CMake Error in CMakeLists.txt:
A logical block opening on the line

C:/WoDCore/TrinityCore-6.2.4-21355/CMakeLists.txt:80 (if)

is not closed.

Edited by meeek
info
Link to comment
Share on other sites

> if (boost_filesystem_copy_links_without_NO_SCOPED_ENUM)
  target_compile_definitions(boost
    INTERFACE
      -DBOOST_DATE_TIME_NO_LIB
      -DBOOST_REGEX_NO_LIB
      -DBOOST_CHRONO_NO_LIB)
else()
  target_compile_definitions(boost
    INTERFACE
      -DBOOST_DATE_TIME_NO_LIB
      -DBOOST_REGEX_NO_LIB
      -DBOOST_CHRONO_NO_LIB
-DBOOST_NO_CXX11_SCOPED_ENUMS)

endif()

 

did this, deleted cache, removed build folder (the content) re-configured and : https://pastebin.com/ZNTPaKiT

 

is the result.

Link to comment
Share on other sites

1 minute ago, meeek said:

I added this:

if (boost_filesystem_copy_links_without_NO_SCOPED_ENUM)
  target_compile_definitions(boost
    INTERFACE
      -DBOOST_DATE_TIME_NO_LIB
      -DBOOST_REGEX_NO_LIB
      -DBOOST_CHRONO_NO_LIB)
else()
  target_compile_definitions(boost
    INTERFACE
      -DBOOST_DATE_TIME_NO_LIB
      -DBOOST_REGEX_NO_LIB
      -DBOOST_CHRONO_NO_LIB
-DBOOST_NO_CXX11_SCOPED_ENUMS)

And the only problem I get is with the first line and if, cause its not closed.

1

Hmm, why did you add that? I don't think I suggested such at least.
The commit/changes I referenced had no mention of such code.
https://github.com/TrinityCore/TrinityCore/commit/5734643cecbadfffb7ee1b66c9665d57108923f6#diff-82d123ab4d0745ba8103dc4b10c23d9f
 

5 minutes ago, fonigoy said:

Sorry for being a big big noob but I have no idea what you mean by cherrypick, Should I just download a less recent boost version too?

4 minutes ago, fonigoy said:

I have absolutely 0 coding experience and I'm doing this just to experience and learn with my friends while having fun IG

If you have 0 experience, maybe trying out the latest version of TC is easier. And if you are already are using the latest version, then you have probably mismatching dependencies or you installed only boost source without the precompiled binaries or similar - for that you should post information about your installation like what boost you have, how does the installation of it look etc.
If you really need to try some old unsupported core .. maybe using old versions is an ok choice if you just want to get things working.
Less recent boost usually means using a less recent compiler as well if you use the precompiled packages.
Cherry-picking is taking only a specific commit/change. You can do that with the command "git cherry-pick <commit>". You can also just do the changes manually. Googling will get you far :)

 

6 minutes ago, meeek said:

I tried cheerypicking literally every row and what made sense, nothing works. I'm clueless

Hmm, after the other post you made I am not sure what exactly you did or tried.
Maybe using the older version of compiler and boost is ok if you can't get anything to work and if they work. To be able to work with the latest tools and libs you would need the changes though.

Link to comment
Share on other sites

4 minutes ago, Rochet2 said:

Hmm, why did you add that? I don't think I suggested such at least.
The commit/changes I referenced had no mention of such code.

I don't get the git-cherrypicking part.

Where do I enter git-cherrypick and what do I enter per/line to cherrypick?

> 5734643cecbadfffb7ee1b66c9665d57108923f6#diff-82d123ab4d0745ba8103dc4b10c23d9f

^that from the url?

 

 

Link to comment
Share on other sites

I FIGURED IT OUTTTTTTTTTTTTTTTTTTTTTTTTTT!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

 

https://github.com/TrinityCore/TrinityCore/blob/6.2.4/21355/dep/boost/CMakeLists.txt#L46

 

USE THIS CMAKELISTS.TXT INSTEAD, AND ADD!

 

cmake_minimum_required(VERSION 3.12)

 

at the top!

except i prob didnt, i barely got any files and compiling it nothing really happens. yikers. somethings missing i guess

Edited by meeek
Link to comment
Share on other sites

>

CMake Error at dep/boost/CMakeLists.txt:47 (add_library):
add_library cannot create target "boost" because another target with the
same name already exists. The existing target is an interface library
created in source directory "C:/WoDCore/TrinityCore-6.2.4-21355". See
documentation for policy CMP0002 for more details.

 

CMake Error at dep/mysql/CMakeLists.txt:12 (message):
MySQL wasn't found on your system but it's required to build the servers!

 

 

My only remaining error now... apparently mysql dont exist on my system. Scripts etc are loaded but MySQL can't be found

Link to comment
Share on other sites

 Share

  • Recently Browsing   0 members

    No registered users viewing this page.

  • Similar Content

    • By Wark
      I'd just like to get a little insight to why so much of the current Trinitycore code doesn't match up to a few years ago.
      Now I know I'm not a pro at coding on Trinitycore and I understand that the core is open sourced but these just seem so significant and doesn't seem right to remove this stuff.
       
      Let me give an example. Lets say I'm watching this tutorial to get a little information about classes and methods that I can use when making a script. (I've also been using the Trinitycore Code Documentation as reference as well but it also seems to show the same issues)
      Although the tutorial is a little out of date, I don't see why OnGossipSelect doesn't exist anywhere in CreatureScript and that when I try to link the script to the core code it spits out this error.
      object of abstract class type "GossipTeleporter" is not allowed:
      pure virtual function "CreatureScript::GetAI" has no overrider
      The DEFINES of "ADD_GOSSIP_ITEM" and many more don't exist either.
       
      Am I missing something? All I want to know is if the core is mean't to be this way and if not should I download an older version of the core before I put to much working into my current core.
      (I downloaded my core right from the Trinitycore website tutorial)
       
      I'm currently trying to write a simple gossipteleporter that will let you talk to an npc and teleport to the given location. It's very hard to do this when so many things just don't exist within my core.
       
      EXTRA: I pasted this into a new custom script just to see if I would get errors and I got a lot of different errors: http://pastebin.com/raw/G62e0t49
      This was obtained from here: http://www.ac-web.org/forums/showthread.php?129885-Request-Teleporter-NPC-for-TrinityCore
      By no means am I looking to copy the code from the two links above, I was using them as a test to see if my core accepted them.
       
      Thanks,
      Wark
    • By Lenny4
      I'm currently developping a web site to allow user to create an account and play in the game. For that I'm using soap connection, this way I can execute gm command from my website. (like bnetaccount create ...)
      I was wondering, if one day I have a lot of players and I need to limit the amount of players who can be connect in the game at the same time.
      But I want to choose (I will not choose my self I will create a php script for that) wich one can connect or not.
      So my questions are:
      - is there a way to know when a user try to connect in game, I mean a request is send to my website (or another way)? how?
                       - if yes can I avoid the connection to the game? how?
      - is there a way to disconnect a user in the game using soap command (or another way)? how? Because here https://trinitycore.atlassian.net/wiki/spaces/tc/pages/2130065/GM+Commands I can't find a command to disconnect a player
      Thank you for your help.
    • By AllowTheKarnage
      Hello, today I was trying to install the database with the master branch, but when I go to start worldserver.exe I get error saying "The application was unable to start correctly (0xc000007b). click OK to close the application." I also tried to run as administrator. What might be the problem?

    • By stridergm
      I would like to know for example the mechanics such as the warlock aura called Dark Bargain. How from the event absob in the script ccp is triggered an reduce 50% of the damage taken, until before send final damage to the client. It is that I would like to know all the aura workflow in the core.
    • By TurtleMaster
      Hi TrinityCore community
      I am a computer scientist (just got my degree) and I want to learn a bit about Warcraft programming for fun.
      I got the 3.5.5 core as a VS project, I can build and run the worldserver, and I can successfully start the game from there. I was hoping someone here could give me some tips/guidance as to how I should go about learning to program the core and how to contribute most effectively to the community. My biggest concern is the workflow between editing, building, and running. It seems like it would be a very slow process to rebuild the core every time you need to jump into the game to check something. 
      Any thoughts?
×
×
  • Create New...