GrimKriegor / TES3MP-deploy

A script to simplify the installation, upgrade and packaging of TES3MP
GNU General Public License v3.0
21 stars 12 forks source link

Can't Build Server #38

Open hereandnowlive opened 2 years ago

hereandnowlive commented 2 years ago

Hello,

I have a small server that I am trying to get TES3MP working for but it keeps failing. OS: Ubuntu 20.04.4 LTS

Every time I try to build with the script I just get this error on the command line:

-- The C compiler identification is GNU 9.4.0 -- The CXX compiler identification is GNU 9.4.0 -- Check for working C compiler: /usr/bin/cc -- Check for working C compiler: /usr/bin/cc -- 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/c++ -- Check for working CXX compiler: /usr/bin/c++ -- works -- Detecting CXX compiler ABI info -- Detecting CXX compiler ABI info - done -- Detecting CXX compile features -- Detecting CXX compile features - done -- Configuring OpenMW... -- Found Git: /usr/bin/git (found version "2.25.1") -- /opt/TES3MP-deploy-master/dependencies/raknet/include -- /opt/TES3MP-deploy-master/dependencies/raknet/build/lib/libRakNetLibStatic.a -- Found RakNet_LIBRARY_RELEASE: /opt/TES3MP-deploy-master/dependencies/raknet/build/lib/libRakNetLibStatic.a -- Found RakNet_INCLUDES: /opt/TES3MP-deploy-master/dependencies/raknet/include/raknet -- Found OpenGL: /usr/lib/x86_64-linux-gnu/libOpenGL.so
CMake Error at /usr/share/cmake-3.16/Modules/FindPackageHandleStandardArgs.cmake:146 (message): Could NOT find LZ4 (missing: LZ4_LIBRARY LZ4_INCLUDE_DIR LZ4_VERSION) Call Stack (most recent call first): /usr/share/cmake-3.16/Modules/FindPackageHandleStandardArgs.cmake:393 (_FPHSA_FAILURE_MESSAGE) cmake/FindLZ4.cmake:95 (find_package_handle_standard_args) CMakeLists.txt:204 (find_package)

-- Configuring incomplete, errors occurred! See also "/opt/TES3MP-deploy-master/build/CMakeFiles/CMakeOutput.log". See also "/opt/TES3MP-deploy-master/build/CMakeFiles/CMakeError.log". make: *** No targets specified and no makefile found. Stop.

I have checked my LZ4 dependancy and I do have it. So it could be a red harring. Also I have followed the install guide here: https://openmw.readthedocs.io/en/latest/manuals/installation/install-openmw.html#the-ubuntu-way

to get openmw working and everything seems to be installed correctly. I was initially using the command: sudo ./tes3mp-deploy.sh -i -s

to get it to install since I only want the server potion running on it. However I have had to switch over to this command for it to recompile and get an error at all: sudo ./tes3mp-deploy.sh -u --cmake-local

I'll attach the two build logs as well thanks!

CMakeError.log CMakeOutput.log

hereandnowlive commented 2 years ago

checked if it had anything to do with my gcc or g++ compiler but both of them were well past version 4.9 (9.4).

hereandnowlive commented 2 years ago

Was able to fix two of the bugs I hit referencing a great reddit thread on the issue: https://www.reddit.com/r/OpenMW/comments/t020m1/any_linux_users_have_trouble_with_tes3mpdeploy/

You need to run these two commands: sudo apt install liblz4-dev sudo apt install libboost-all-dev

and it will get around the issue, however I am having a new issue when the build happens. build.log

hereandnowlive commented 2 years ago

Got a message from an OpenMW thread and they gave me this useful info: TES3MP Linux builds can currently be compiled only with GCC 8, any later versions of GCC results in this issue. Reason for this is the way source code for tes3mp-server is written. Easiest way of getting GCC 8 on your system without turning the whole thing inside out is to use TES3MP-Forge container, mount some volumes to it and make a build in there.

Looks like unless I roll back my gcc version I will need to setup a container. Good info to know.