Author Topic: Question on Linux builds  (Read 562 times)

0 Members and 1 Guest are viewing this topic.

Question on Linux builds
Hi folks,

meanwhile I use Knossos on Ubuntu 20.04 which works fine.

However, I receive some strange errors when playing some of the mods: False colors (NVIDIA GT 1030 card with 440 driver) and freezes. It is not really reproducable.

Question now is, if compiling the engines by myself would

a) help, and
b) would affect the Knossos installations of the respective engines when doing a file integrity check

Reasons for asking are the compiler and the python 3.8.2 version. So far, the engine builds were from 14.04, weren't they?

System is a AMD Ryzen3 3200, 8GB RAM and 16 GB swap

Thanks in advance


Offline m!m

  • 211
Re: Question on Linux builds
The release builds are currently built on Ubuntu 16.04 but that shouldn't matter too much.

If you are experiencing graphics issues then it is highly unlikely that compiling the builds yourself would help but you can always try and see if it changes anything. There are no known issues with using self-compiled builds with Knossos.

Re: Question on Linux builds
Ok, maybe I found the problem: As I dont have a swap partition I first made a swapfile too small (2 GB with 8GB RAM). Then I increased it to 16GB, but still errors occured. Now I found that the /etc/fstab did not end with an empty line (after the swapfile entry). Did that, rebooted, and so far...

Will report back if that was nonsense, too

Re: Question on Linux builds
Ok, it wasn't that...

As self compiling with cmake doesn't work according to the instructions, could someone please give me the exact commnd lines for the 19.0.0, 3.8.3 and the other builds currently used in Knossos, please? According to the Readme doesnt work here (or I am too stupid...)



Offline m!m

  • 211
Re: Question on Linux builds
Not sure what guide you are following but this one should be mostly accurate:

Re: Question on Linux builds
Ok, here we go

cmake -S /home/$USER/Schreibtisch/ -D FSO_FREESPACE_PATH=/home/$USER/
Code: [Select]
CMake Warning at CMakeLists.txt:35 (message):
  CMAKE_BUILD_TYPE was not specified, defaulting to Release configuration.

-- The C compiler identification is GNU 9.3.0
-- The CXX compiler identification is GNU 9.3.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
-- NO FS2PATH environment variable found, you can define this to point to your freespace install but it is not required.
-- cotire 1.7.10 loaded.
-- Doing configuration specific to gcc...
-- Performing Test SUPPORTS_W_FLAG
-- Performing Test SUPPORTS_W_FLAG - Success
-- Performing Test SUPPORTS_WALL_FLAG
-- Performing Test SUPPORTS_WALL_FLAG - Success
-- Performing Test SUPPORTS_WEXTRA_FLAG - Success
-- Performing Test SUPPORTS_STRINGOP_OVERFLOW - Success
-- Configuring UNIX specific things and stuff...
-- Looking for execinfo.h
-- Looking for execinfo.h - found
-- Looking for C++ include cxxabi.h
-- Looking for C++ include cxxabi.h - found
-- Looking for sys/types.h
-- Looking for sys/types.h - found
-- Looking for stdint.h
-- Looking for stdint.h - found
-- Looking for stddef.h
-- Looking for stddef.h - found
-- Check size of max_align_t
-- Check size of max_align_t - done
-- Check size of std::max_align_t
-- Check size of std::max_align_t - done
-- Check size of std::is_trivially_copyable<int>
-- Check size of std::is_trivially_copyable<int> - done
-- Check size of char32_t
-- Check size of char32_t - done
-- Check size of U'b'
-- Check size of U'b' - done
-- Looking for strcasecmp
-- Looking for strcasecmp - found
-- Looking for strncasecmp
-- Looking for strncasecmp - found
-- Looking for _stricmp
-- Looking for _stricmp - not found
-- Looking for _strnicmp
-- Looking for _strnicmp - not found
-- Looking for strlwr
-- Looking for strlwr - not found
-- Looking for strings.h
-- Looking for strings.h - found
-- Looking for snprintf
-- Looking for snprintf - found
-- Looking for _snprintf
-- Looking for _snprintf - not found
-- Found PkgConfig: /usr/bin/pkg-config (found version "0.29.1")
-- Checking for module 'lua5.1<=5.1.5'
--   Found lua5.1, version 5.1.5
-- Found OpenAL: /usr/lib/x86_64-linux-gnu/ 
-- Checking for one of the modules 'sdl2'
-- Checking for module 'jansson>=2.2'
--   Found jansson, version 2.12
-- Looking for pthread.h
-- Looking for pthread.h - found
-- Performing Test CMAKE_HAVE_LIBC_PTHREAD - Failed
-- Looking for pthread_create in pthreads
-- Looking for pthread_create in pthreads - not found
-- Looking for pthread_create in pthread
-- Looking for pthread_create in pthread - found
-- Found Threads: TRUE 
CMake Error at /usr/share/cmake-3.16/Modules/FindPackageHandleStandardArgs.cmake:146 (message):
Call Stack (most recent call first):
  /usr/share/cmake-3.16/Modules/FindPackageHandleStandardArgs.cmake:393 (_FPHSA_FAILURE_MESSAGE)
  /usr/share/cmake-3.16/Modules/FindFreetype.cmake:157 (find_package_handle_standard_args)
  lib/freetype.cmake:19 (find_package)
  lib/CMakeLists.txt:28 (include)

-- Configuring incomplete, errors occurred!
See also "/home/$USER/Schreibtisch/".
See also "/home/$USER/Schreibtisch/".
Logs attached

[attachment eaten by a Shivan]


Offline m!m

  • 211
Re: Question on Linux builds
Ah, FreeType was missing from the install command. Try installing libfreetype-dev and then try again.

Re: Question on Linux builds
Ok, this time it worked. Does it matter that it is no AppImage for Knossos?



Offline m!m

  • 211
Re: Question on Linux builds
AppImage is just a special format for making it easier to distribute the builds. It is not needed if you build the binaries yourself.


Offline Thaeris

  • Can take his lumps
  • 211
  • Away in Limbo
Re: Question on Linux builds
As far as I know (which is not a lot), the AppImage basically wraps everything into a self-contained executable for a Linux application, not all that unlike what some Windows applications do. The downside is that it may (or rather, WILL) bloat the size of the program. Conversely, the end user can probably be confident that their program will run the way it's supposed to. Might be a really good way of distributing "fresh" releases of old software, which can only run with depreciated packages.

...There are other means of distributing a program as well. Flatpaks generally seem to be well-received, seemingly more so than Canonical's "Snap" format. All of these methods, mind you, are generally of a similar mind: to make Linux applications agnostic to the individual Linux distribution. That's really about all I know. That said, Flatpak strikes me as the best option, all things considered.
"trolls are clearly social rejects and therefore should be isolated from society, or perhaps impaled."


"Look on the bright side, how many release dates have been given for Doomsday, and it still isn't out yet.

It's the Duke Nukem Forever of prophecies..."

"Jesus saves.

Everyone else takes normal damage.


"pirating software is a lesser evil than stealing but its still evil. but since i pride myself for being evil, almost anything is fair game."

"i never understood why women get the creeps so ****ing easily. i mean most serial killers act perfectly normal, until they kill you."