etternagame / etterna

Advanced cross-platform rhythm game focused on keyboard play
https://etternaonline.com/
MIT License
475 stars 134 forks source link

[Build Issue]: cmake install fails with disabled crashpad #1208

Closed mrtnvgr closed 1 year ago

mrtnvgr commented 1 year ago

Have you read through the build instructions before reading this?

What operating system are you seeing the problem on?

Linux (any distro)

Describe the build issue

CMake arguments:

-DCMAKE_BUILD_TYPE=Release
-DWITH_CRASHPAD=OFF
-G "Unix Makefiles"

Relevant log output

CMake Error at cmake_install.cmake:87 (file):
file INSTALL cannot find "/var/tmp/portage/games-vsrg/etterna-9999/work/etterna-9999_build/gn_crashpad/crashpad_handler":
No such file or directory.CMake Error at cmake_install.cmake:87 (file):
  file INSTALL cannot find
  "/var/tmp/portage/games-vsrg/etterna-9999/work/etterna-9999_build/gn_crashpad/crashpad_handler":
  No such file or directory.

Anything else?

No response

jameskr97 commented 1 year ago

Are you still having this issue? Would you be able to provide any more logs? Are you running with crashpad disabled from a clean build directory?

jameskr97 commented 1 year ago

Please reopen this issue if you are still having this problem. I'm unable to reproduce it, and I'll need more information from your side.

mrtnvgr commented 1 year ago

@jameskr97 git clone https://github.com/etternagame/etterna cd etterna mkdir build && cd build

cmake -DCMAKE_BUILD_TYPE=Release -DWITH_CRASHPAD=OFF -G "Unix Makefiles" ..

-- Looking for posix_fadvise - found
-- cppcheck not found. cppcheck target will not be created.
-- Could NOT find Doxygen (missing: DOXYGEN_EXECUTABLE)
-- Doxygen not found. Documentation target will not be created.
-- LDoc not found. Documentation target will not be created.
-- Configuring done
-- Generating done
-- Build files have been written to: /home/user/etterna/build

make

make install

[  1%] Built target ogg
[  4%] Built target vorbis
[ 28%] Built target libcurl
[ 29%] Built target sqlite3
[ 30%] Built target SQLiteCpp
[ 31%] Built target discord-rpc
[ 31%] Built target minilua
[ 31%] Built target buildvm_arch_h
[ 32%] Built target buildvm
[ 32%] Built target lj_gen_vm_s
[ 32%] Built target lj_gen_headers
[ 32%] Built target lj_gen_folddef
[ 42%] Built target libluajit
[ 42%] Built target muFFT-avx
[ 42%] Built target muFFT-sse
[ 42%] Built target muFFT-sse3
[ 43%] Built target muFFT
[ 43%] Built target glfw
[ 43%] Built target pcre
[ 46%] Built target zlib
[ 48%] Built target libmad
[ 49%] Built target fmt
[ 50%] Built target nowide
[100%] Built target Etterna
Install the project...
-- Install configuration: "Release"
CMake Error at cmake_install.cmake:77 (file):
  file cannot create directory: /usr/local/Etterna.  Maybe need
  administrative privileges.

make: *** [Makefile:120: install] Error 1

doas make install

[  1%] Built target ogg
[  4%] Built target vorbis
[ 28%] Built target libcurl
[ 29%] Built target sqlite3
[ 30%] Built target SQLiteCpp
[ 31%] Built target discord-rpc
[ 31%] Built target minilua
[ 31%] Built target buildvm_arch_h
[ 32%] Built target buildvm
[ 32%] Built target lj_gen_vm_s
[ 32%] Built target lj_gen_headers
[ 32%] Built target lj_gen_folddef
[ 42%] Built target libluajit
[ 42%] Built target muFFT-avx
[ 42%] Built target muFFT-sse
[ 42%] Built target muFFT-sse3
[ 43%] Built target muFFT
[ 43%] Built target glfw
[ 43%] Built target pcre
[ 46%] Built target zlib
[ 48%] Built target libmad
[ 49%] Built target fmt
[ 50%] Built target nowide
[100%] Built target Etterna
Install the project...
-- Install configuration: "Release"
-- Installing: /usr/local/Etterna/Etterna
CMake Error at cmake_install.cmake:87 (file):
  file INSTALL cannot find
  "/home/user/etterna/build/gn_crashpad/crashpad_handler": No such file or
  directory.

make: *** [Makefile:120: install] Error 1
jameskr97 commented 1 year ago

Currently, we don't support installing into the system via make install.

It's attempting to use "install" the crashpad_handler because that is a part of how we distribute the game on GitHub Actions.

If you want to build the game, I recommend running the game right in the build directory or moving the binary and game folders into a separate folder (similar to how our release Linux binary looks).