Search Unity

Linux: Compiling Master Server

Discussion in 'Multiplayer' started by Stanto, May 8, 2014.

  1. Stanto

    Stanto

    Joined:
    May 20, 2013
    Posts:
    2
    I'm running a Linode VPS with Debian.

    I've downloaded the MasterServer-2.0.1f1.zip and ran make to compile. I get the following output:

    Code (csharp):
    1. g++ -c -Wall -I. -ICommon -DUNITY_MASTERSERVER RakNet/Sources/NetworkIDObject.cpp -o RakNet/Sources/NetworkIDObject.o
    2. In file included from RakNet/Sources/NetworkIDManager.h:11:0,
    3.                  from RakNet/Sources/NetworkIDObject.cpp:9:
    4. RakNet/Sources/DS_BinarySearchTree.h: In instantiation of "void DataStructures::AVLBalancedBinarySearchTree<BinarySearchTreeType>::BalanceTree(typename DataStructures::BinarySearchTree<BinarySearchTreeType>::node*, bool) [with BinarySearchTreeType = NetworkIDNode; typename DataStructures::BinarySearchTree<BinarySearchTreeType>::node = DataStructures::BinarySearchTree<NetworkIDNode>::node]":
    5. RakNet/Sources/DS_BinarySearchTree.h:219:3:   required from "void DataStructures::AVLBalancedBinarySearchTree<BinarySearchTreeType>::Del(const BinarySearchTreeType) [with BinarySearchTreeType = NetworkIDNode]"
    6. RakNet/Sources/NetworkIDObject.cpp:43:72:   required from here
    7. RakNet/Sources/DS_BinarySearchTree.h:169:5: error: "Height" was not declared in this scope, and no declarations were found by argument-dependent lookup at the point of instantiation [-fpermissive]
    8. RakNet/Sources/DS_BinarySearchTree.h:169:5: note: declarations in dependent base "DataStructures::BinarySearchTree<NetworkIDNode>" are not found by unqualified lookup
    9. RakNet/Sources/DS_BinarySearchTree.h:169:5: note: use "this->Height" instead
    10. RakNet/Sources/DS_BinarySearchTree.h:174:5: error: "Height" was not declared in this scope, and no declarations were found by argument-dependent lookup at the point of instantiation [-fpermissive]
    11. RakNet/Sources/DS_BinarySearchTree.h:174:5: note: declarations in dependent base "DataStructures::BinarySearchTree<NetworkIDNode>" are not found by unqualified lookup
    12. RakNet/Sources/DS_BinarySearchTree.h:174:5: note: use "this->Height" instead
    13. RakNet/Sources/DS_BinarySearchTree.h:202:4: error: "FindParent" was not declared in this scope, and no declarations were found by argument-dependent lookup at the point of instantiation [-fpermissive]
    14. RakNet/Sources/DS_BinarySearchTree.h:202:4: note: declarations in dependent base "DataStructures::BinarySearchTree<NetworkIDNode>" are not found by unqualified lookup
    15. RakNet/Sources/DS_BinarySearchTree.h:202:4: note: use "this->FindParent" instead
    16. make: *** [RakNet/Sources/NetworkIDObject.o] Error 1
    17.  
    GCC/G++ is version 4.7
    Ncurses is version 5
    Debian v7.5 wheezy
    Kernel 3.13.7

    I have not changed the code.
     
  2. fjalla

    fjalla

    Joined:
    Nov 6, 2012
    Posts:
    73
    Bump, same error.
     
  3. Stanto

    Stanto

    Joined:
    May 20, 2013
    Posts:
    2
    Resolved.
    G++/GCC was updated and it doesn't like the dodgy code in the RakNet source.

    The only way around this is to install an older version of GCC/G++ or setup your system in such a way that you can switch between the two (if you need the more recent version).

    Else you have to rifle through the source code and work out where to put "this->" where applicable. Which needs to be fixed by Raknet/Unity.
     
  4. fjalla

    fjalla

    Joined:
    Nov 6, 2012
    Posts:
    73