Giter VIP home page Giter VIP logo

Comments (17)

handsomematt avatar handsomematt commented on May 27, 2024 1

Could not find toolchain file: /scripts/buildsystems/vcpkg.cmake

your $VCPKG_ROOT is not set

from donut.

coreybruce avatar coreybruce commented on May 27, 2024

Doing cmake . on it's own got me this far

[corey@corey-pc donut]$ cmake .
-- The C compiler identification is GNU 10.2.0
-- The CXX compiler identification is GNU 10.2.0
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working C compiler: /usr/bin/cc - skipped
-- Detecting C compile features
-- Detecting C compile features - done
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Check for working CXX compiler: /usr/bin/c++ - skipped
-- Detecting CXX compile features
-- Detecting CXX compile features - done
CMake Error at /usr/share/cmake-3.20/Modules/CheckIncludeFileCXX.cmake:56 (configure_file):
  configure_file attempted to configure a file:
  /mnt/Storage/donut/CMakeFiles/CMakeTmp/CheckIncludeFile.cxx into a source
  directory.
Call Stack (most recent call first):
  CMakeLists.txt:36 (check_include_file_cxx)


-- Configuring incomplete, errors occurred!
See also "/mnt/Storage/donut/CMakeFiles/CMakeOutput.log".

from donut.

coreybruce avatar coreybruce commented on May 27, 2024

Why do we need to use vcpkg on LInux? couldn't this just use normal cmake, rely on already package manager and installed packages because I already have SDL2 ect installed on my Linux OS. The simplest way to get dependencies on Linux is through it's repository also doing ./vcpkg install sdl2 bullet3 openal-soft fmt on Linux doesn't work because it's not located in the donut repo but a system package you need to install and requires sudo.

Also ran into this issue

Environment variable VCPKG_FORCE_SYSTEM_BINARIES must be set on arm, s390x, and ppc64le platforms.

Apprarently it's set to "VCPKG_ROOT" is set to **"/usr/share/vcpkg/scripts/buildsystems/vcpkg.cmake"** when I installed it

Would of been way easier if it used normal cmake for all platforms or just use vcpkg only for Windows as it's not needed for Linux.

from donut.

coreybruce avatar coreybruce commented on May 27, 2024
[corey@corey-pc donut]$ cmake -S . -B build -DCMAKE_TOOLCHAIN_FILE=/usr/share/vcpkg/scripts/buildsystems/vcpkg.cmake -DVCPKG_TARGET_TRIPLET=x64-linux
-- Configuring done
CMake Warning (dev) in CMakeLists.txt:
  Policy CMP0111 is not set: An imported target missing its location property
  fails during generation.  Run "cmake --help-policy CMP0111" for policy
  details.  Use the cmake_policy command to set the policy and suppress this
  warning.

  IMPORTED_LOCATION not set for imported target "fmt::fmt" configuration
  "RelWithDebInfo".
This warning is for project developers.  Use -Wno-dev to suppress it.

-- Generating done
-- Build files have been written to: /mnt/Storage/donut/build
[corey@corey-pc donut]$ cmake --build build -j6
src/CMakeFiles/donut.dir/build.make:1072: *** target pattern contains no '%'.  Stop.
make[1]: *** [CMakeFiles/Makefile2:124: src/CMakeFiles/donut.dir/all] Error 2
make: *** [Makefile:91: all] Error 2
[corey@corey-pc donut]$ cmake ./build
-- Configuring done
CMake Warning (dev) in CMakeLists.txt:
  Policy CMP0111 is not set: An imported target missing its location property
  fails during generation.  Run "cmake --help-policy CMP0111" for policy
  details.  Use the cmake_policy command to set the policy and suppress this
  warning.

  IMPORTED_LOCATION not set for imported target "fmt::fmt" configuration
  "RelWithDebInfo".
This warning is for project developers.  Use -Wno-dev to suppress it.

-- Generating done
-- Build files have been written to: /mnt/Storage/donut/build

Build instructions with cmake didn't work so I made some changes but even tho it gave a warning and said it finished I am not sure where the binary is.

from donut.

RossComputerGuy avatar RossComputerGuy commented on May 27, 2024

Using vpkg is unconventional as the majority of people DO NOT have it installed on their Linux systems. This is exactly why the majority of distros have a package manager and why most packages are available on a package manager that is not vpkg. Plus most people have sudo access so this means being able to use their distro's package manager is just fine.

from donut.

coreybruce avatar coreybruce commented on May 27, 2024

So @RossComputerGuy came up with better and easier build instructions after deleting the build folder.

cmake -S . -B build
cd build
make  -j $(nproc)

But we both ran into this same issue once we started building @handsomematt

[corey@corey-pc build]$ make -j6
[  4%] Building CXX object src/CMakeFiles/donut.dir/AnimCamera.cpp.o
[  4%] Building CXX object src/CMakeFiles/donut.dir/Character.cpp.o
[  4%] Building CXX object src/CMakeFiles/donut.dir/Audio/AudioManager.cpp.o
[  6%] Building CXX object src/CMakeFiles/donut.dir/CharacterController.cpp.o
[  7%] Building CXX object src/CMakeFiles/donut.dir/Core/File.cpp.o
[  9%] Building CXX object src/CMakeFiles/donut.dir/Core/Log.cpp.o
[ 11%] Building CXX object src/CMakeFiles/donut.dir/Core/Math/Math.cpp.o
[ 12%] Building CXX object src/CMakeFiles/donut.dir/Core/Math/Matrix3x3.cpp.o
[ 14%] Building CXX object src/CMakeFiles/donut.dir/Core/Math/Matrix4x4.cpp.o
[ 15%] Building CXX object src/CMakeFiles/donut.dir/Core/Math/Quaternion.cpp.o
[ 17%] Building CXX object src/CMakeFiles/donut.dir/Core/Math/Vector2.cpp.o
[ 19%] Building CXX object src/CMakeFiles/donut.dir/Core/Math/Vector3.cpp.o
[ 20%] Building CXX object src/CMakeFiles/donut.dir/Core/Math/Vector3Int.cpp.o
[ 22%] Building CXX object src/CMakeFiles/donut.dir/Core/Math/Vector4.cpp.o
[ 23%] Building CXX object src/CMakeFiles/donut.dir/Core/MemoryStream.cpp.o
/mnt/Storage/donut/src/Core/MemoryStream.cpp: In member function ‘void Donut::MemoryStream::ReadBytes(uint8_t*, std::size_t)’:
/mnt/Storage/donut/src/Core/MemoryStream.cpp:19:7: error: ‘memcpy’ is not a member of ‘std’
   19 |  std::memcpy(dest, &(*_position), length);
      |       ^~~~~~
make[2]: *** [src/CMakeFiles/donut.dir/build.make:272: src/CMakeFiles/donut.dir/Core/MemoryStream.cpp.o] Error 1
make[2]: *** Waiting for unfinished jobs....
In file included from /mnt/Storage/donut/src/AnimCamera.cpp:9:
/mnt/Storage/donut/src/Render/SkinAnimation.h: In member function ‘T Donut::SkinAnimation::ValueKeyCurve<T>::Evalulate(float, T)’:
/mnt/Storage/donut/src/Render/SkinAnimation.h:79:11: error: ‘glm’ has not been declared
   79 |    time = glm::mod(time, _keyValues[lastIndex]->GetTime());
      |           ^~~
In file included from /mnt/Storage/donut/src/Render/SkinModel.h:10,
                 from /mnt/Storage/donut/src/Character.cpp:10:
/mnt/Storage/donut/src/Render/SkinAnimation.h: In member function ‘T Donut::SkinAnimation::ValueKeyCurve<T>::Evalulate(float, T)’:
/mnt/Storage/donut/src/Render/SkinAnimation.h:79:11: error: ‘glm’ has not been declared
   79 |    time = glm::mod(time, _keyValues[lastIndex]->GetTime());
      |           ^~~
make[2]: *** [src/CMakeFiles/donut.dir/build.make:76: src/CMakeFiles/donut.dir/AnimCamera.cpp.o] Error 1
make[2]: *** [src/CMakeFiles/donut.dir/build.make:104: src/CMakeFiles/donut.dir/Character.cpp.o] Error 1
make[1]: *** [CMakeFiles/Makefile2:125: src/CMakeFiles/donut.dir/all] Error 2
make: *** [Makefile:91: all] Error 2

from donut.

handsomematt avatar handsomematt commented on May 27, 2024

There's no requirement on vcpkg, but you were literally passing it as the toolchain file and it didn't exist.

The code isn't good and will require some of your own patching to compile on Linux probably.

from donut.

coreybruce avatar coreybruce commented on May 27, 2024

There's no requirement on vcpkg, but you were literally passing it as the toolchain file and it didn't exist.

The code isn't good and will require some of your own patching to compile on Linux probably.

True but we were following the instructions.

Is there any possibility of patching the code to fix the issue because I don't want Linux users to feel like 2nd class citizens when they want to use this and not be properly supported because it was only made to "run on Windows" when it should run on any using open source code/software.

from donut.

handsomematt avatar handsomematt commented on May 27, 2024

Sure if someone who actually uses Linux (like yourself) wants to patch it to work on Linux it wouldn't be too hard.

from donut.

coreybruce avatar coreybruce commented on May 27, 2024

Ah ok so you don't have much experience in Linux I understand, I might see if I can get @RossComputerGuy or another friend to lend a hand to send in a patch to fix it :)

from donut.

coreybruce avatar coreybruce commented on May 27, 2024

Latest patches has fixed it and @RossComputerGuy has it working on Void Linux using a Nvidia GPU but I am having issues with openal and on my pi 4 it doesn't give any errors but doesn't launch. Is there a minimal requirement for the OpenGL version and is it OpenGl 3.3?

PC log

[corey@corey-pc SimpsonsHit&Run]$ ./donut
+---------------------------------------------------+
|    _____        /--------------------------\      |
|   /     \      |                            |     |
| \/\/     |    /     donut game               \    |
|  |  (o)(o)    |                              |    |
|  C   .---_)   \_   _________________________/     |
|   | |.___|      | /                               |
|   |  \__/      <_/                                |
|   /_____\                                         |
|  /_____/ \                                        |
| /         \                                       |
+---------------------------------------------------+

hellooooooooooo new york!!!!
Initializing SDL...
SDL Version/Compiled 2.0.14
SDL Version/Linked 2.0.14
OpenGL version loaded: 4.6
Vendor: NVIDIA Corporation
Renderer: GeForce GTX 1060 6GB/PCIe/SSE2
Version: 4.6.0 NVIDIA 460.73.01

[ALSOFT] (EE) Failed to set real-time priority for thread: Operation not permitted (1)
[ALSOFT] (EE) Failed to set real-time priority for thread: Operation not permitted (1)
X Error of failed request:  GLXBadContext
  Major opcode of failed request:  151 (GLX)
  Minor opcode of failed request:  4 (X_GLXDestroyContext)
  Serial number of failed request:  387
  Current serial number in output stream:  387

Pi 4 log

[corey@corey-pi4 SimpsonsHit&Run]$ ./donut
+---------------------------------------------------+
|    _____        /--------------------------\      |
|   /     \      |                            |     |
| \/\/     |    /     donut game               \    |
|  |  (o)(o)    |                              |    |
|  C   .---_)   \_   _________________________/     |
|   | |.___|      | /                               |
|   |  \__/      <_/                                |
|   /_____\                                         |
|  /_____/ \                                        |
| /         \                                       |
+---------------------------------------------------+

hellooooooooooo new york!!!!
Initializing SDL...
SDL Version/Compiled 2.0.14
SDL Version/Linked 2.0.14
OpenGL version loaded: 2.1
Vendor: Broadcom
Renderer: V3D 4.2
Version: 2.1 Mesa 21.0.3

from donut.

rndtrash avatar rndtrash commented on May 27, 2024

Latest patches has fixed it and @RossComputerGuy has it working on Void Linux using a Nvidia GPU but I am having issues with openal and on my pi 4 it doesn't give any errors but doesn't launch. Is there a minimal requirement for the OpenGL version and is it OpenGl 3.3?

PC log

[corey@corey-pc SimpsonsHit&Run]$ ./donut
+---------------------------------------------------+
|    _____        /--------------------------\      |
|   /     \      |                            |     |
| \/\/     |    /     donut game               \    |
|  |  (o)(o)    |                              |    |
|  C   .---_)   \_   _________________________/     |
|   | |.___|      | /                               |
|   |  \__/      <_/                                |
|   /_____\                                         |
|  /_____/ \                                        |
| /         \                                       |
+---------------------------------------------------+

hellooooooooooo new york!!!!
Initializing SDL...
SDL Version/Compiled 2.0.14
SDL Version/Linked 2.0.14
OpenGL version loaded: 4.6
Vendor: NVIDIA Corporation
Renderer: GeForce GTX 1060 6GB/PCIe/SSE2
Version: 4.6.0 NVIDIA 460.73.01

[ALSOFT] (EE) Failed to set real-time priority for thread: Operation not permitted (1)
[ALSOFT] (EE) Failed to set real-time priority for thread: Operation not permitted (1)
X Error of failed request:  GLXBadContext
  Major opcode of failed request:  151 (GLX)
  Minor opcode of failed request:  4 (X_GLXDestroyContext)
  Serial number of failed request:  387
  Current serial number in output stream:  387

Pi 4 log

[corey@corey-pi4 SimpsonsHit&Run]$ ./donut
+---------------------------------------------------+
|    _____        /--------------------------\      |
|   /     \      |                            |     |
| \/\/     |    /     donut game               \    |
|  |  (o)(o)    |                              |    |
|  C   .---_)   \_   _________________________/     |
|   | |.___|      | /                               |
|   |  \__/      <_/                                |
|   /_____\                                         |
|  /_____/ \                                        |
| /         \                                       |
+---------------------------------------------------+

hellooooooooooo new york!!!!
Initializing SDL...
SDL Version/Compiled 2.0.14
SDL Version/Linked 2.0.14
OpenGL version loaded: 2.1
Vendor: Broadcom
Renderer: V3D 4.2
Version: 2.1 Mesa 21.0.3

Weird thing: for some reason it crashes with GLXBadContext if donut hasn't found any resources. Copying all the files from TS:H&R to build/bin folder solved that issue for me.
And yes, it requires at least OpenGL 4 support

from donut.

coreybruce avatar coreybruce commented on May 27, 2024

Latest patches has fixed it and @RossComputerGuy has it working on Void Linux using a Nvidia GPU but I am having issues with openal and on my pi 4 it doesn't give any errors but doesn't launch. Is there a minimal requirement for the OpenGL version and is it OpenGl 3.3?
PC log

[corey@corey-pc SimpsonsHit&Run]$ ./donut
+---------------------------------------------------+
|    _____        /--------------------------\      |
|   /     \      |                            |     |
| \/\/     |    /     donut game               \    |
|  |  (o)(o)    |                              |    |
|  C   .---_)   \_   _________________________/     |
|   | |.___|      | /                               |
|   |  \__/      <_/                                |
|   /_____\                                         |
|  /_____/ \                                        |
| /         \                                       |
+---------------------------------------------------+

hellooooooooooo new york!!!!
Initializing SDL...
SDL Version/Compiled 2.0.14
SDL Version/Linked 2.0.14
OpenGL version loaded: 4.6
Vendor: NVIDIA Corporation
Renderer: GeForce GTX 1060 6GB/PCIe/SSE2
Version: 4.6.0 NVIDIA 460.73.01

[ALSOFT] (EE) Failed to set real-time priority for thread: Operation not permitted (1)
[ALSOFT] (EE) Failed to set real-time priority for thread: Operation not permitted (1)
X Error of failed request:  GLXBadContext
  Major opcode of failed request:  151 (GLX)
  Minor opcode of failed request:  4 (X_GLXDestroyContext)
  Serial number of failed request:  387
  Current serial number in output stream:  387

Pi 4 log

[corey@corey-pi4 SimpsonsHit&Run]$ ./donut
+---------------------------------------------------+
|    _____        /--------------------------\      |
|   /     \      |                            |     |
| \/\/     |    /     donut game               \    |
|  |  (o)(o)    |                              |    |
|  C   .---_)   \_   _________________________/     |
|   | |.___|      | /                               |
|   |  \__/      <_/                                |
|   /_____\                                         |
|  /_____/ \                                        |
| /         \                                       |
+---------------------------------------------------+

hellooooooooooo new york!!!!
Initializing SDL...
SDL Version/Compiled 2.0.14
SDL Version/Linked 2.0.14
OpenGL version loaded: 2.1
Vendor: Broadcom
Renderer: V3D 4.2
Version: 2.1 Mesa 21.0.3

Weird thing: for some reason it crashes with GLXBadContext if donut hasn't found any resources. Copying all the files from TS:H&R to build/bin folder solved that issue for me.
And yes, it requires at least OpenGL 4 support

Hmm weird tho I tried that and it didn't work

[corey@corey-pc bin]$ ./donut
+---------------------------------------------------+
|    _____        /--------------------------\      |
|   /     \      |                            |     |
| \/\/     |    /     donut game               \    |
|  |  (o)(o)    |                              |    |
|  C   .---_)   \_   _________________________/     |
|   | |.___|      | /                               |
|   |  \__/      <_/                                |
|   /_____\                                         |
|  /_____/ \                                        |
| /         \                                       |
+---------------------------------------------------+

hellooooooooooo new york!!!!
Initializing SDL...
SDL Version/Compiled 2.0.14
SDL Version/Linked 2.0.14
OpenGL version loaded: 4.6
Vendor: NVIDIA Corporation
Renderer: GeForce GTX 1060 6GB/PCIe/SSE2
Version: 4.6.0 NVIDIA 460.73.01

X Error of failed request:  GLXBadContext
  Major opcode of failed request:  151 (GLX)
  Minor opcode of failed request:  4 (X_GLXDestroyContext)
  Serial number of failed request:  388
  Current serial number in output stream:  388

image

Ahh damn that sucks, I would of loced to play this on my pi 4 especially since the original games minimal specs are easily covered by the pi 4, would it be possible to support OpenGL ES 2.1 at all?

from donut.

rndtrash avatar rndtrash commented on May 27, 2024

Hmm, here's my log when donut has no resources:

+---------------------------------------------------+
|    _____        /--------------------------\      |
|   /     \      |                            |     |
| \/\/     |    /     donut game               \    |
|  |  (o)(o)    |                              |    |
|  C   .---_)   \_   _________________________/     |
|   | |.___|      | /                               |
|   |  \__/      <_/                                |
|   /_____\                                         |
|  /_____/ \                                        |
| /         \                                       |
+---------------------------------------------------+

hellooooooooooo new york!!!!
Initializing SDL...
SDL Version/Compiled 2.0.12
SDL Version/Linked 2.0.12
OpenGL version loaded: 4.6
Vendor: NVIDIA Corporation
Renderer: GeForce GTX 1050 Ti/PCIe/SSE2
Version: 4.6.0 NVIDIA 460.73.01

BDB1539 Build signature doesn't match environment
X Error of failed request:  GLXBadContext
  Major opcode of failed request:  151 (GLX)
  Minor opcode of failed request:  4 (X_GLXDestroyContext)
  Serial number of failed request:  391
  Current serial number in output stream:  391

Lets move our discussion to donut Discord server☺

from donut.

coreybruce avatar coreybruce commented on May 27, 2024

Hmm, here's my log when donut has no resources:

+---------------------------------------------------+
|    _____        /--------------------------\      |
|   /     \      |                            |     |
| \/\/     |    /     donut game               \    |
|  |  (o)(o)    |                              |    |
|  C   .---_)   \_   _________________________/     |
|   | |.___|      | /                               |
|   |  \__/      <_/                                |
|   /_____\                                         |
|  /_____/ \                                        |
| /         \                                       |
+---------------------------------------------------+

hellooooooooooo new york!!!!
Initializing SDL...
SDL Version/Compiled 2.0.12
SDL Version/Linked 2.0.12
OpenGL version loaded: 4.6
Vendor: NVIDIA Corporation
Renderer: GeForce GTX 1050 Ti/PCIe/SSE2
Version: 4.6.0 NVIDIA 460.73.01

BDB1539 Build signature doesn't match environment
X Error of failed request:  GLXBadContext
  Major opcode of failed request:  151 (GLX)
  Minor opcode of failed request:  4 (X_GLXDestroyContext)
  Serial number of failed request:  391
  Current serial number in output stream:  391

Lets move our discussion to donut Discord server

Sure, just mention @Gameslayer, I am on your Discord server already :)

from donut.

RossComputerGuy avatar RossComputerGuy commented on May 27, 2024

Why is he blocked?

from donut.

fuzunspm avatar fuzunspm commented on May 27, 2024

what an asshole (plowteam) + idiot

from donut.

Related Issues (19)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.