SeventhUmbral
SeventhUmbral copied to clipboard
Project cannot be build in FreeBSD 9.3
Information about my system:
$ uname -a
FreeBSD freebsd.homenet.local 9.3-RELEASE FreeBSD 9.3-RELEASE #0 r268512: Fri Jul 11 03:13:02 UTC 2014 [email protected]:/usr/obj/usr/src/sys/GENERIC i386
$ clang -v
FreeBSD clang version 3.4.1 (tags/RELEASE_34/dot1-final 208032) 20140512
Target: i386-unknown-freebsd9.3
Thread model: posix
Selected GCC installation:
$ g++ -v
Using built-in specs.
Target: i386-undermydesk-freebsd
Configured with: FreeBSD/i386 system compiler
Thread model: posix
gcc version 4.2.1 20070831 patched [FreeBSD]
After that I tried to compile it with Clang:
cd SeventhUmbral/build_unix/
./build_clang.sh
The Code gets compiled without any complication...
$ ./build_clang.sh
-- The C compiler identification is Clang 3.4.1
-- The CXX compiler identification is Clang 3.4.1
-- Check for working C compiler: /usr/bin/clang
-- Check for working C compiler: /usr/bin/clang -- works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Detecting C compile features
-- Detecting C compile features - done
-- Check for working CXX compiler: /usr/bin/clang++
-- Check for working CXX compiler: /usr/bin/clang++ -- works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Detecting CXX compile features
-- Detecting CXX compile features - done
CMake Warning (dev) at CMakeLists.txt:9 (link_directories):
This command specifies the relative path
../../../Framework/build_unix/build
as a link directory.
Policy CMP0015 is not set: link_directories() treats paths relative to the
source dir. Run "cmake --help-policy CMP0015" for policy details. Use the
cmake_policy command to set the policy and suppress this warning.
This warning is for project developers. Use -Wno-dev to suppress it.
-- Configuring done
-- Generating done
-- Build files have been written to: /usr/home/thomas/Projects/SeventhUmbral/build_unix/build
Scanning dependencies of target ffxivd
[ 2%] Building CXX object CMakeFiles/ffxivd.dir/usr/home/thomas/Projects/SeventhUmbral/daemon/actors/Actor.cpp.o
[ 5%] Building CXX object CMakeFiles/ffxivd.dir/usr/home/thomas/Projects/SeventhUmbral/daemon/actors/EnemyActor.cpp.o
[ 7%] Building CXX object CMakeFiles/ffxivd.dir/usr/home/thomas/Projects/SeventhUmbral/daemon/actors/PlayerActor.cpp.o
[ 10%] Building CXX object CMakeFiles/ffxivd.dir/usr/home/thomas/Projects/SeventhUmbral/daemon/AppConfig.cpp.o
[ 13%] Building CXX object CMakeFiles/ffxivd.dir/usr/home/thomas/Projects/SeventhUmbral/daemon/AppearanceDatabase.cpp.o
[ 15%] Building CXX object CMakeFiles/ffxivd.dir/usr/home/thomas/Projects/SeventhUmbral/daemon/Character.cpp.o
[ 18%] Building CXX object CMakeFiles/ffxivd.dir/usr/home/thomas/Projects/SeventhUmbral/daemon/Clock.cpp.o
[ 21%] Building CXX object CMakeFiles/ffxivd.dir/usr/home/thomas/Projects/SeventhUmbral/daemon/DatabaseConnectionManager.cpp.o
[ 23%] Building CXX object CMakeFiles/ffxivd.dir/usr/home/thomas/Projects/SeventhUmbral/daemon/GameServer.cpp.o
[ 26%] Building CXX object CMakeFiles/ffxivd.dir/usr/home/thomas/Projects/SeventhUmbral/daemon/GameServerPlayer.cpp.o
[ 28%] Building CXX object CMakeFiles/ffxivd.dir/usr/home/thomas/Projects/SeventhUmbral/daemon/GlobalData.cpp.o
In file included from /usr/home/thomas/Projects/SeventhUmbral/daemon/GlobalData.cpp:2:
/usr/home/thomas/Projects/SeventhUmbral/build_unix/../../Framework/include/StdStreamUtils.h:15:20: warning: explicit specialization cannot have a storage class
static CStdStream CreateInputStdStream(const std::wstring& path)
~~~~~~~ ^
/usr/home/thomas/Projects/SeventhUmbral/build_unix/../../Framework/include/StdStreamUtils.h:21:20: warning: explicit specialization cannot have a storage class
static CStdStream CreateInputStdStream(const std::string& path)
~~~~~~~ ^
/usr/home/thomas/Projects/SeventhUmbral/build_unix/../../Framework/include/StdStreamUtils.h:27:20: warning: explicit specialization cannot have a storage class
static CStdStream CreateOutputStdStream(const std::wstring& path)
~~~~~~~ ^
/usr/home/thomas/Projects/SeventhUmbral/build_unix/../../Framework/include/StdStreamUtils.h:33:20: warning: explicit specialization cannot have a storage class
static CStdStream CreateOutputStdStream(const std::string& path)
~~~~~~~ ^
4 warnings generated.
[ 31%] Building CXX object CMakeFiles/ffxivd.dir/usr/home/thomas/Projects/SeventhUmbral/daemon/Instance.cpp.o
[ 34%] Building CXX object CMakeFiles/ffxivd.dir/usr/home/thomas/Projects/SeventhUmbral/daemon/LobbyServer.cpp.o
[ 36%] Building CXX object CMakeFiles/ffxivd.dir/usr/home/thomas/Projects/SeventhUmbral/daemon/LobbyServerPlayer.cpp.o
[ 39%] Building CXX object CMakeFiles/ffxivd.dir/usr/home/thomas/Projects/SeventhUmbral/daemon/Log.cpp.o
[ 42%] Building CXX object CMakeFiles/ffxivd.dir/usr/home/thomas/Projects/SeventhUmbral/daemon/Main.cpp.o
[ 44%] Building CXX object CMakeFiles/ffxivd.dir/usr/home/thomas/Projects/SeventhUmbral/daemon/packets/BasePacket.cpp.o
[ 47%] Building CXX object CMakeFiles/ffxivd.dir/usr/home/thomas/Projects/SeventhUmbral/daemon/packets/BattleActionPacket.cpp.o
[ 50%] Building CXX object CMakeFiles/ffxivd.dir/usr/home/thomas/Projects/SeventhUmbral/daemon/packets/ChangeEquipmentSlotPacket.cpp.o
[ 52%] Building CXX object CMakeFiles/ffxivd.dir/usr/home/thomas/Projects/SeventhUmbral/daemon/packets/CommandRequestReplyPacket.cpp.o
[ 55%] Building CXX object CMakeFiles/ffxivd.dir/usr/home/thomas/Projects/SeventhUmbral/daemon/packets/CompositePacket.cpp.o
[ 57%] Building CXX object CMakeFiles/ffxivd.dir/usr/home/thomas/Projects/SeventhUmbral/daemon/packets/DisplayMessagePacket.cpp.o
[ 60%] Building CXX object CMakeFiles/ffxivd.dir/usr/home/thomas/Projects/SeventhUmbral/daemon/packets/FinishScriptPacket.cpp.o
[ 63%] Building CXX object CMakeFiles/ffxivd.dir/usr/home/thomas/Projects/SeventhUmbral/daemon/packets/KeepAlivePacket.cpp.o
[ 65%] Building CXX object CMakeFiles/ffxivd.dir/usr/home/thomas/Projects/SeventhUmbral/daemon/packets/SetActorAppearancePacket.cpp.o
[ 68%] Building CXX object CMakeFiles/ffxivd.dir/usr/home/thomas/Projects/SeventhUmbral/daemon/packets/SetActorPropertyPacket.cpp.o
[ 71%] Building CXX object CMakeFiles/ffxivd.dir/usr/home/thomas/Projects/SeventhUmbral/daemon/packets/SetActorStatePacket.cpp.o
[ 73%] Building CXX object CMakeFiles/ffxivd.dir/usr/home/thomas/Projects/SeventhUmbral/daemon/packets/SetInitialPositionPacket.cpp.o
[ 76%] Building CXX object CMakeFiles/ffxivd.dir/usr/home/thomas/Projects/SeventhUmbral/daemon/packets/SetInventoryPacket.cpp.o
[ 78%] Building CXX object CMakeFiles/ffxivd.dir/usr/home/thomas/Projects/SeventhUmbral/daemon/packets/SetMapPacket.cpp.o
[ 81%] Building CXX object CMakeFiles/ffxivd.dir/usr/home/thomas/Projects/SeventhUmbral/daemon/packets/SetMusicPacket.cpp.o
[ 84%] Building CXX object CMakeFiles/ffxivd.dir/usr/home/thomas/Projects/SeventhUmbral/daemon/packets/SetTempInventoryPacket.cpp.o
[ 86%] Building CXX object CMakeFiles/ffxivd.dir/usr/home/thomas/Projects/SeventhUmbral/daemon/packets/SetWeatherPacket.cpp.o
[ 89%] Building CXX object CMakeFiles/ffxivd.dir/usr/home/thomas/Projects/SeventhUmbral/daemon/packets/UnknownInventoryPacket.cpp.o
[ 92%] Building CXX object CMakeFiles/ffxivd.dir/usr/home/thomas/Projects/SeventhUmbral/daemon/PacketUtils.cpp.o
[ 94%] Building CXX object CMakeFiles/ffxivd.dir/usr/home/thomas/Projects/SeventhUmbral/daemon/SocketUtils.cpp.o
[ 97%] Building CXX object CMakeFiles/ffxivd.dir/usr/home/thomas/Projects/SeventhUmbral/daemon/ZoneDatabase.cpp.o
In file included from /usr/home/thomas/Projects/SeventhUmbral/daemon/ZoneDatabase.cpp:4:
/usr/home/thomas/Projects/SeventhUmbral/build_unix/../../Framework/include/StdStreamUtils.h:15:20: warning: explicit specialization cannot have a storage class
static CStdStream CreateInputStdStream(const std::wstring& path)
~~~~~~~ ^
/usr/home/thomas/Projects/SeventhUmbral/build_unix/../../Framework/include/StdStreamUtils.h:21:20: warning: explicit specialization cannot have a storage class
static CStdStream CreateInputStdStream(const std::string& path)
~~~~~~~ ^
/usr/home/thomas/Projects/SeventhUmbral/build_unix/../../Framework/include/StdStreamUtils.h:27:20: warning: explicit specialization cannot have a storage class
static CStdStream CreateOutputStdStream(const std::wstring& path)
~~~~~~~ ^
/usr/home/thomas/Projects/SeventhUmbral/build_unix/../../Framework/include/StdStreamUtils.h:33:20: warning: explicit specialization cannot have a storage class
static CStdStream CreateOutputStdStream(const std::string& path)
~~~~~~~ ^
4 warnings generated.
[100%] Building CXX object CMakeFiles/ffxivd.dir/usr/home/thomas/Projects/SeventhUmbral/common/BLOWFISH.C.o
...but then I get errors while clang is trying to link the executable:
Linking CXX executable ffxivd
CMakeFiles/ffxivd.dir/usr/home/thomas/Projects/SeventhUmbral/daemon/AppConfig.cpp.o: In function `void boost::filesystem::path_traits::dispatch<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >(std::__1::basic_string<wchar_t, std::__1::char_traits<wchar_t>, std::__1::allocator<wchar_t> > const&, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >&, std::__1::codecvt<wchar_t, char, __mbstate_t> const&)':
/usr/home/thomas/Projects/SeventhUmbral/daemon/AppConfig.cpp:(.text._ZN5boost10filesystem11path_traits8dispatchINSt3__112basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEEEEvRKNS4_IwNS5_IwEENS7_IwEEEERT_RKNS3_7codecvtIwc11__mbstate_tEE[_ZN5boost10filesystem11path_traits8dispatchINSt3__112basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEEEEvRKNS4_IwNS5_IwEENS7_IwEEEERT_RKNS3_7codecvtIwc11__mbstate_tEE]+0x41d): undefined reference to `boost::filesystem::path_traits::convert(wchar_t const*, wchar_t const*, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >&, std::__1::codecvt<wchar_t, char, __mbstate_t> const&)'
clang++: error: linker command failed with exit code 1 (use -v to see invocation)
*** [ffxivd] Error code 1
Stop in /usr/home/thomas/Projects/SeventhUmbral/build_unix/build.
*** [CMakeFiles/ffxivd.dir/all] Error code 1
Stop in /usr/home/thomas/Projects/SeventhUmbral/build_unix/build.
*** [all] Error code 1
Stop in /usr/home/thomas/Projects/SeventhUmbral/build_unix/build.
Does anyone have a clue what the problem could be? May it be a incompatibility with a new/old version of clang/FreeBSD?
Thank you for your time.