Description:
Cannot compile with clean build with any modification, using cmake 3.6.
Current behaviour:
/Compiler/Sources/src/server/game/Handlers/MiscHandler.cpp: In member function ‘void WorldSession::SendAreaTriggerMessage(const char*, ...)’:
/Compiler/Sources/src/server/game/Handlers/MiscHandler.cpp:596:22: error: ‘va_start’ was not declared in this scope
va_start(ap, Text);
^
/Compiler/Sources/src/server/game/Handlers/MiscHandler.cpp:598:14: error: ‘va_end’ was not declared in this scope
va_end(ap);
^
Expected behaviour:
Should compile
Steps to reproduce the problem:
Branch(es):
3.3.5
TC rev. hash/commit:
cb9b9f7247c57ee0eed42b063b827799166ce20a
TDB version:
63
Operating system:
Linux x64, centos-release-7-4.1708.el7.centos.x86_64
Not confirmed.
OS: Arch Linux
Cmake 3.9.2
Boost 1.65.1
GCC 7.2.0
MariaDB 10.1.26
CentOS is bullshit. I'm serious. After a month of work on it, even Ubuntu doesn't seem so shit.
TrinityCore rev. cb9b9f7247c5 2017-09-24 20:23:37 +0200 (3.3.5 branch) (Win64, Release, Static)
Can not confirm this either, but then again, I have only compiled on Windows/Visual Studio 2017.
@n4ndo : Are you 100% certain that your source is unchanged and that the commit hash is from your compile?
I see the previous poster has suggested that your OS is less than useful, could it be a configuration issue?
that's why wiki say centos is not recommended. centos compilation is very tricky. it needs to download a lot of packages manually and cmake flags.
So, after 2008 using mangos and TC with RHEL Base systems, you are saying to me that i have to change the OS? .. .really? Come on TC i know you can make it better. no only "I cant configure so its bullshit.. kid comment"
@n4ndo: you are free to use whatever OS you want but keep in mind that you cannot expect us to be able to support all of them. We guarantee that it works with a couple of the major ones.
If someone finds a fix for the problem, very likely it can be added to the repo.
I try to upgrade my gcc 6.3 and cmake 3.9 version, but not work.. just for note, this was working with a 3 month old tc version.
@n4ndo Even Travis hints that everything is compiled without errors on Linux. Fedora is based on RHEL and everything is fine there too. Here the specificity of CentOS is to blame. CentOS operates on the principle of "inexplicable, but the f̶u̶c̶k̶ fact". In CentOS, everything can break even after a minor update. I had an example when there Apache stopped recognizing the standard config.
Ok, so i add #include <stdarg.h> to src/server/game/Handlers/MiscHandler.cpp and now 100% Compile.
@n4ndo: nice, can you try with #include <cstdarg> instead? That's the C++ header
@DDuarte change made and working too. :)
Most helpful comment
Ok, so i add
#include <stdarg.h>to src/server/game/Handlers/MiscHandler.cpp and now 100% Compile.