SFTtech / openage

Free (as in freedom) open source clone of the Age of Empires II engine 🚀
http://openage.dev
Other
12.62k stars 1.11k forks source link

When starting run.py: FileNotFoundError: file could not be found #1302

Closed christian-vorhemus closed 3 years ago

christian-vorhemus commented 4 years ago

I've configured and built the project as described here but when starting everything up, I get the message that apparently a config file could not be found:

$ make run
[  0%] Automatic MOC for target libopenage
bin/run game
INFO [py] launching openage v0.4.1-264-gd73cf2e7
INFO [py] compiled by GNU 9.3.0
INFO [py] running in DEVMODE
INFO [py] No converted assets have been found
INFO launching engine with Path(Union(Directory(/mnt/c/Users/me/Desktop/C-Linux/openage/cfg).root @ (b'cfg',), Directory(/mnt/c/Users/me/Desktop/C-Linux/openage/assets)
.root @ (b'assets',)):) and fps limit 0
WARN QStandardPaths: XDG_RUNTIME_DIR not set, defaulting to '/tmp/runtime-me'
INFO Compiled with Qt 5.9.5 and run with Qt 5.9.5
WARN QSGContext::initialize: depth buffer support missing, expect rendering errors
WARN QSGContext::initialize: stencil buffer support missing, expect rendering errors
INFO loading configuration files...
INFO [py] loading config file [Union(Directory(/mnt/c/Users/me/Desktop/C-Linux/openage/cfg).root @ (b'cfg',), Directory(/mnt/c/Users/me/Desktop/C-Linux/openage/assets).
root @ (b'assets',))]:cfg/keybinds.oac...
Traceback (most recent call last):
  File "run.py", line 15, in init run
    main()
  File "/mnt/c/Users/me/Desktop/C-Linux/openage/.bin/g++-debug-Oauto-sanitize-none/openage/__main__.py", line 134, in main
    return args.entrypoint(args, cli.error)
  File "/mnt/c/Users/me/Desktop/C-Linux/openage/.bin/g++-debug-Oauto-sanitize-none/openage/game/main.py", line 78, in main
    return run_game(args, root)
  File "openage/game/main_cpp.pyx", line 47, in openage.game.main_cpp.run_game
    result = run_game_cpp(args_cpp)
  File "openage/util/fslike/cpp.pyx", line 282, in openage.util.fslike.cpp.fs_open_r
    return fs_open(open_path, 0)
  File "openage/util/fslike/cpp.pyx", line 249, in openage.util.fslike.cpp.fs_open
    raise FileNotFoundError("file could not be found")
FileNotFoundError: file could not be found
Makefile:25: recipe for target 'run' failed
make: *** [run] Error 1

I don't really understand what file should be missing here. The path and file C:/Users/me/Desktop/C-Linux/openage/cfg/keybinds.oac is there, also the path C:/Users/me/Desktop/C-Linux/openage/assets exists, however, I haven't converted game assets yet.

I'm running Ubuntu in WSL2, my lsb_release:

Distributor ID: Ubuntu
Description:    Ubuntu 18.04.3 LTS
Release:        18.04
Codename:       bionic
christian-vorhemus commented 4 years ago

Okay, this problem doesn't occur when using release v0.4.1 instead of cloning from master. Leaving it open just in case it is an unknown issue.

heinezen commented 4 years ago

Yes, the project is currently not supposed to run as outlined here. We still need to update the docs to reflect that...

TheJJ commented 4 years ago

I think it's not about keybinds.oac, but some other file that is missing in fhe error message. We should fix that. I'm guessing that's the case since the fslike.Union is implemented in python, whereas the error message is about a cpp-fslike (i.e. a c++ file handle).

So we should print the filename in openage/util/fslike/cpp.pyx, line 249.

This doesn't fix the missing file error, though, that's likely due to what @heinezen said.

okias commented 3 years ago

I can confirm this issue on Flatpak #1349

okias commented 3 years ago

strace

...
write(1, "\33[mINFO\33[m \33[36m[py]\33[m loading "..., 229INFO [py] loading config file [Union(<openage.util.fslike.union.Union object at 0x7f1c390f0640>.root @ (b'cfg',), <openage.util.fslike.union.Union object at 0x7f1c390f0160>.root @ (b'assets',))]:cfg/keybinds.oac...
) = 229
write(11, "INFO|py|__init__.py:111|info|0|1"..., 255) = 255
stat("/home/okias/.var/app/lol.sfttech.openage/config/openage/keybinds.oac", 0x7ffed2cbf240) = -1 ENOENT (No such file or directory)
stat("/app/etc/openage/keybinds.oac", {st_mode=S_IFREG|0644, st_size=1637, ...}) = 0
stat("/home/okias/.var/app/lol.sfttech.openage/config/openage/keybinds.oac", 0x7ffed2cbf240) = -1 ENOENT (No such file or directory)
stat("/app/etc/openage/keybinds.oac", {st_mode=S_IFREG|0644, st_size=1637, ...}) = 0
openat(AT_FDCWD, "/app/etc/openage/keybinds.oac", O_RDONLY|O_CLOEXEC) = 26
fstat(26, {st_mode=S_IFREG|0644, st_size=1637, ...}) = 0
ioctl(26, TCGETS, 0x7ffed2cbef80)       = -1 ENOTTY (Inappropriate ioctl for device)
lseek(26, 0, SEEK_CUR)                  = 0
ioctl(26, TCGETS, 0x7ffed2cbfa10)       = -1 ENOTTY (Inappropriate ioctl for device)
stat("/usr/lib/python3.8/encodings", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0
stat("/usr/lib/python3.8/encodings/ascii.py", {st_mode=S_IFREG|0644, st_size=1248, ...}) = 0
stat("/usr/lib/python3.8/encodings/ascii.py", {st_mode=S_IFREG|0644, st_size=1248, ...}) = 0
openat(AT_FDCWD, "/usr/lib/python3.8/encodings/__pycache__/ascii.cpython-38.pyc", O_RDONLY|O_CLOEXEC) = 27
fstat(27, {st_mode=S_IFREG|0644, st_size=1881, ...}) = 0
ioctl(27, TCGETS, 0x7ffed2cbe870)       = -1 ENOTTY (Inappropriate ioctl for device)
lseek(27, 0, SEEK_CUR)                  = 0
lseek(27, 0, SEEK_CUR)                  = 0
fstat(27, {st_mode=S_IFREG|0644, st_size=1881, ...}) = 0
read(27, "U\r\r\n\3\0\0\0\332<q\357n\320a\327\343\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 1882) = 1881
read(27, "", 1)                         = 0
close(27)                               = 0
openat(AT_FDCWD, "/usr/lib/python3.8/encodings/ascii.py", O_RDONLY|O_CLOEXEC) = 27
fstat(27, {st_mode=S_IFREG|0644, st_size=1248, ...}) = 0
ioctl(27, TCGETS, 0x7ffed2cbe870)       = -1 ENOTTY (Inappropriate ioctl for device)
lseek(27, 0, SEEK_CUR)                  = 0
lseek(27, 0, SEEK_CUR)                  = 0
fstat(27, {st_mode=S_IFREG|0644, st_size=1248, ...}) = 0
read(27, "\"\"\" Python 'ascii' Codec\n\n\nWritt"..., 1249) = 1248
read(27, "", 1)                         = 0
close(27)                               = 0
read(26, "# Copyright 2016-2016 the openag"..., 8192) = 1637
read(26, "", 8192)                      = 0
close(26)                               = 0
stat("/home/okias/.var/app/lol.sfttech.openage/data/openage/assets/converted/termcolors.docx", 0x7ffed2cbf520) = -1 ENOENT (No such file or directory)
stat("/app/share/openage/converted/termcolors.docx", 0x7ffed2cbf280) = -1 ENOENT (No such file or directory)
stat("/home/okias/.var/app/lol.sfttech.openage/data/openage/assets/converted/termcolors.docx", 0x7ffed2cbf520) = -1 ENOENT (No such file or directory)
stat("/app/share/openage/converted/termcolors.docx", 0x7ffed2cbf280) = -1 ENOENT (No such file or directory)
futex(0x7f1c3d9b01e0, FUTEX_WAKE_PRIVATE, 2147483647) = 0
getpid()                                = 27
getpid()                                = 27
getpid()                                = 27
getpid()                                = 27
getpid()                                = 27
ioctl(14, DRM_IOCTL_I915_GEM_MADVISE, 0x7ffed2cc0194) = 0
getpid()                                = 27
getpid()                                = 27
getpid()                                = 27
getpid()                                = 27
getpid()                                = 27
write(24, "\1\0\0\0\0\0\0\0", 8)        = 8
futex(0x7f1bf75bf9d0, FUTEX_WAIT, 41, NULL) = 0
futex(0x55b903bcc998, FUTEX_WAKE_PRIVATE, 2147483647) = 0
write(23, "\1\0\0\0\0\0\0\0", 8)        = 8
futex(0x55b903b658b0, FUTEX_WAKE_PRIVATE, 1) = 1
madvise(0x7f1bf75d0000, 65536, MADV_DONTNEED) = 0
mprotect(0x7f1bf75d0000, 65536, PROT_NONE) = 0
madvise(0x7f1bf75f0000, 65536, MADV_DONTNEED) = 0
mprotect(0x7f1bf75f0000, 65536, PROT_NONE) = 0
madvise(0x7f1bf75c0000, 65536, MADV_DONTNEED) = 0
mprotect(0x7f1bf75c0000, 65536, PROT_NONE) = 0
madvise(0x7f1bf75e0000, 65536, MADV_DONTNEED) = 0
mprotect(0x7f1bf75e0000, 65536, PROT_NONE) = 0
munmap(0x7f1bf75c0000, 4194304)         = 0
munmap(0x7f1bf7bc0000, 4456448)         = 0
munmap(0x7f1bf79c0000, 2097152)         = 0
write(17, "\1\0\0\0\0\0\0\0", 8)        = 8
getpid()                                = 27
poll([{fd=15, events=POLLIN|POLLOUT}], 1, -1) = 1 ([{fd=15, revents=POLLOUT}])
writev(15, [{iov_base="\226#Z\3\1\0\0\0\4\0\0\0\1\0\0\0\t\r\0\0006\0\0\0\1\0\0\0\4\0\0\0"..., iov_len=3516}], 1) = 3516
futex(0x55b9024bfb60, FUTEX_WAIT_PRIVATE, 0, NULL) = 0
futex(0x55b9024bfb10, FUTEX_WAKE_PRIVATE, 1) = 0
poll([{fd=15, events=POLLIN|POLLOUT}], 1, -1) = 1 ([{fd=15, revents=POLLOUT}])
writev(15, [{iov_base=".\0\2\0\3\0\200\0", iov_len=8}], 1) = 8
poll([{fd=15, events=POLLIN|POLLOUT}], 1, -1) = 1 ([{fd=15, revents=POLLOUT}])
writev(15, [{iov_base="<\25\2\0\0\0\200\0+ \1\0", iov_len=12}, {iov_base=NULL, iov_len=0}, {iov_base="", iov_len=0}], 3) = 12
poll([{fd=15, events=POLLIN}], 1, -1)   = 1 ([{fd=15, revents=POLLIN}])
recvmsg(15, {msg_name=NULL, msg_namelen=0, msg_iov=[{iov_base="\1\1\265\1\0\0\0\0\24\0 \0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0", iov_len=4096}], msg_iovlen=1, msg_controllen=0, msg_flags=0}, 0) = 32
futex(0x55b903afe518, FUTEX_WAKE_PRIVATE, 1) = 1
futex(0x55b903afe4c8, FUTEX_WAKE_PRIVATE, 1) = 1
futex(0x55b903afe518, FUTEX_WAKE_PRIVATE, 1) = 1
futex(0x55b903afe4c8, FUTEX_WAKE_PRIVATE, 1) = 1
futex(0x55b903afe518, FUTEX_WAKE_PRIVATE, 1) = 1
futex(0x55b903afe4c8, FUTEX_WAKE_PRIVATE, 1) = 1
futex(0x55b903afe518, FUTEX_WAKE_PRIVATE, 1) = 1
futex(0x55b903afe4c8, FUTEX_WAKE_PRIVATE, 1) = 1
futex(0x7f1c140068a4, FUTEX_WAIT_BITSET, 2, NULL, FUTEX_BITSET_MATCH_ANY) = -1 EAGAIN (Resource temporarily unavailable)
futex(0x55b903afe51c, FUTEX_WAKE_PRIVATE, 2147483647) = 4
futex(0x55b903afe4c8, FUTEX_WAKE_PRIVATE, 1) = 1
munmap(0x7f1bf6dbf000, 8392704)         = 0
munmap(0x7f1c0c0d8000, 8392704)         = 0
munmap(0x7f1c281b5000, 8392704)         = 0
munmap(0x7f1c0e8dd000, 1310728)         = 0
close(22)                               = 0
shutdown(15, SHUT_RDWR)                 = 0
close(15)                               = 0
poll([{fd=12, events=POLLIN|POLLOUT}], 1, -1) = 1 ([{fd=12, revents=POLLOUT}])
writev(12, [{iov_base="\4\0\2\0\32\0 \0+\5\1\0", iov_len=12}, {iov_base=NULL, iov_len=0}, {iov_base="", iov_len=0}], 3) = 12
poll([{fd=12, events=POLLIN}], 1, -1)   = 1 ([{fd=12, revents=POLLIN}])
recvmsg(12, {msg_name=NULL, msg_namelen=0, msg_iov=[{iov_base="\1\1\5\1\0\0\0\0\24\0 \0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0", iov_len=4096}], msg_iovlen=1, msg_controllen=0, msg_flags=0}, 0) = 32
getpid()                                = 27
getpid()                                = 27
ioctl(14, DRM_IOCTL_I915_GEM_MADVISE, 0x7ffed2cc0184) = 0
ioctl(14, DRM_IOCTL_I915_GEM_CONTEXT_DESTROY, 0x7ffed2cc01f0) = 0
ioctl(14, DRM_IOCTL_I915_GEM_MADVISE, 0x7ffed2cc0154) = 0
ioctl(14, DRM_IOCTL_I915_GEM_MADVISE, 0x7ffed2cc0184) = 0
ioctl(14, DRM_IOCTL_I915_GEM_MADVISE, 0x7ffed2cc0184) = 0
ioctl(14, DRM_IOCTL_I915_GEM_MADVISE, 0x7ffed2cc0184) = 0
ioctl(14, DRM_IOCTL_I915_GEM_MADVISE, 0x7ffed2cc01a4) = 0
ioctl(14, DRM_IOCTL_I915_GEM_MADVISE, 0x7ffed2cc0154) = 0
ioctl(14, DRM_IOCTL_I915_GEM_MADVISE, 0x7ffed2cc0154) = 0
ioctl(14, DRM_IOCTL_I915_GEM_MADVISE, 0x7ffed2cc0084) = 0
poll([{fd=12, events=POLLIN|POLLOUT}], 1, -1) = 1 ([{fd=12, revents=POLLOUT}])
writev(12, [{iov_base="\226\4\2\0\25\0 \0+\5\1\0", iov_len=12}, {iov_base=NULL, iov_len=0}, {iov_base="", iov_len=0}], 3) = 12
poll([{fd=12, events=POLLIN}], 1, -1)   = 1 ([{fd=12, revents=POLLIN}])
recvmsg(12, {msg_name=NULL, msg_namelen=0, msg_iov=[{iov_base="\1\1\7\1\0\0\0\0\24\0 \0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0", iov_len=4096}], msg_iovlen=1, msg_controllen=0, msg_flags=0}, 0) = 32
poll([{fd=12, events=POLLIN|POLLOUT}], 1, -1) = 1 ([{fd=12, revents=POLLOUT}])
writev(12, [{iov_base="\3\4\2\0\24\0 \0\16\5\2\0\24\0 \0", iov_len=16}, {iov_base=NULL, iov_len=0}, {iov_base="", iov_len=0}], 3) = 16
poll([{fd=12, events=POLLIN}], 1, -1)   = 1 ([{fd=12, revents=POLLIN}])
recvmsg(12, {msg_name=NULL, msg_namelen=0, msg_iov=[{iov_base="\1\0\10\1\3\0\0\0\224\4\0\0\1\0\0\1\377\377\377\377\0\0\0\0\0\0\2\0\23\0 \0"..., iov_len=4096}], msg_iovlen=1, msg_controllen=0, msg_flags=0}, 0) = 76
poll([{fd=12, events=POLLIN|POLLOUT}], 1, -1) = 1 ([{fd=12, revents=POLLOUT}])
writev(12, [{iov_base="\n\4\2\0\24\0 \0\31\0\v\0%\5\0\0\0\0\30\0\22\0\0\0%\5\0\0\24\0 \0"..., iov_len=52}, {iov_base=NULL, iov_len=0}, {iov_base="", iov_len=0}], 3) = 52
poll([{fd=12, events=POLLIN}], 1, -1)   = 1 ([{fd=12, revents=POLLIN}])
recvmsg(12, {msg_name=NULL, msg_namelen=0, msg_iov=[{iov_base="\22\0\n\1\24\0 \0\24\0 \0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., iov_len=4096}], msg_iovlen=1, msg_controllen=0, msg_flags=0}, 0) = 160
recvmsg(12, {msg_namelen=0}, 0)         = -1 EAGAIN (Resource temporarily unavailable)
recvmsg(12, {msg_namelen=0}, 0)         = -1 EAGAIN (Resource temporarily unavailable)
poll([{fd=12, events=POLLIN|POLLOUT}], 1, -1) = 1 ([{fd=12, revents=POLLOUT}])
writev(12, [{iov_base="\4\4\2\0\24\0 \0", iov_len=8}, {iov_base=NULL, iov_len=0}, {iov_base="", iov_len=0}], 3) = 8
recvmsg(12, {msg_name=NULL, msg_namelen=0, msg_iov=[{iov_base="\21\0\f\1\24\0 \0\24\0 \0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., iov_len=4096}], msg_iovlen=1, msg_controllen=0, msg_flags=0}, 0) = 416
recvmsg(12, {msg_name=NULL, msg_namelen=0, msg_iov=[{iov_base="\34\0\f\1\24\0 \0(\1\0\0~R\322\0\1\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., iov_len=4096}], msg_iovlen=1, msg_controllen=0, msg_flags=0}, 0) = 224
recvmsg(12, {msg_namelen=0}, 0)         = -1 EAGAIN (Resource temporarily unavailable)
futex(0x7f1c34ab69d0, FUTEX_WAIT, 29, NULL) = 0
munmap(0x7f1c0e0dc000, 8392704)         = 0
getpid()                                = 27
write(7, "W", 1)                        = 1
write(7, "W", 1)                        = 1
getpid()                                = 27
write(7, "W", 1)                        = 1
close(8)                                = 0
munmap(0x7f1c2c000000, 67108864)        = 0
close(6)                                = 0
close(7)                                = 0
write(4, "W", 1)                        = 1
getpid()                                = 27
write(4, "W", 1)                        = 1
close(5)                                = 0
munmap(0x7f1c34af8000, 67108864)        = 0
close(3)                                = 0
close(4)                                = 0
rt_sigaction(SIGINT, NULL, {sa_handler=0x7f1c405c8ca0, sa_mask=[], sa_flags=SA_RESTORER, sa_restorer=0x7f1c40236800}, 8) = 0
rt_sigaction(SIGTERM, NULL, {sa_handler=0x7f1c3d18b860, sa_mask=[], sa_flags=SA_RESTORER, sa_restorer=0x7f1c40236800}, 8) = 0
rt_sigaction(SIGTERM, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=SA_RESTORER, sa_restorer=0x7f1c40236800}, NULL, 8) = 0
sendmsg(9, {msg_name=NULL, msg_namelen=0, msg_iov=[{iov_base="l\1\0\1\4\0\0\0\3\0\0\0\227\0\0\0\1\1o\0\34\0\0\0/org/fre"..., iov_len=168}, {iov_base="m\267\376w", iov_len=4}], msg_iovlen=2, msg_controllen=0, msg_flags=0}, MSG_NOSIGNAL) = 172
munmap(0x7f1c34018000, 475136)          = 0
close(10)                               = 0
close(9)                                = 0
poll([{fd=12, events=POLLIN|POLLOUT}], 1, -1) = 1 ([{fd=12, revents=POLLOUT}])
writev(12, [{iov_base="<\4\2\0\0\0 \0+\0\1\0", iov_len=12}, {iov_base=NULL, iov_len=0}, {iov_base="", iov_len=0}], 3) = 12
poll([{fd=12, events=POLLIN}], 1, -1)   = 1 ([{fd=12, revents=POLLIN}])
recvmsg(12, {msg_name=NULL, msg_namelen=0, msg_iov=[{iov_base="\1\1\16\1\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0", iov_len=4096}], msg_iovlen=1, msg_controllen=0, msg_flags=0}, 0) = 32
ioctl(14, DRM_IOCTL_GEM_CLOSE, 0x7ffed2cc0100) = 0
munmap(0x7f1c3408d000, 4096)            = 0
ioctl(14, DRM_IOCTL_GEM_CLOSE, 0x7ffed2cc0100) = 0
ioctl(14, DRM_IOCTL_GEM_CLOSE, 0x7ffed2cc0100) = 0
munmap(0x7f1c340b1000, 4096)            = 0
ioctl(14, DRM_IOCTL_GEM_CLOSE, 0x7ffed2cc0100) = 0
munmap(0x7f1c3408c000, 4096)            = 0
ioctl(14, DRM_IOCTL_GEM_CLOSE, 0x7ffed2cc0100) = 0
munmap(0x7f1c28e00000, 16384)           = 0
ioctl(14, DRM_IOCTL_GEM_CLOSE, 0x7ffed2cc0100) = 0
munmap(0x7f1c28af7000, 16384)           = 0
ioctl(14, DRM_IOCTL_GEM_CLOSE, 0x7ffed2cc0100) = 0
munmap(0x7f1c28afb000, 32768)           = 0
ioctl(14, DRM_IOCTL_GEM_CLOSE, 0x7ffed2cc0100) = 0
munmap(0x7f1c28b03000, 40960)           = 0
ioctl(14, DRM_IOCTL_GEM_CLOSE, 0x7ffed2cc0100) = 0
munmap(0x7f1c28df6000, 40960)           = 0
ioctl(14, DRM_IOCTL_GEM_CLOSE, 0x7ffed2cc0100) = 0
munmap(0x7f1c28aed000, 40960)           = 0
ioctl(14, DRM_IOCTL_GEM_CLOSE, 0x7ffed2cc0100) = 0
munmap(0x7f1c28e04000, 524288)          = 0
ioctl(14, DRM_IOCTL_GEM_CLOSE, 0x7ffed2cc0100) = 0
munmap(0x7f1bf6cbf000, 1048576)         = 0
ioctl(14, DRM_IOCTL_GEM_CLOSE, 0x7ffed2cc0100) = 0
ioctl(14, DRM_IOCTL_GEM_CLOSE, 0x7ffed2cc0100) = 0
ioctl(14, DRM_IOCTL_GEM_CLOSE, 0x7ffed2cc0100) = 0
ioctl(14, DRM_IOCTL_GEM_CLOSE, 0x7ffed2cc0100) = 0
close(14)                               = 0
futex(0x55b901cbebd8, FUTEX_WAKE_PRIVATE, 1) = 1
futex(0x55b901cbeb88, FUTEX_WAKE_PRIVATE, 1) = 1
futex(0x55b901cbebd8, FUTEX_WAKE_PRIVATE, 1) = 1
futex(0x55b901cbeb88, FUTEX_WAKE_PRIVATE, 1) = 1
futex(0x55b901cbebd8, FUTEX_WAKE_PRIVATE, 1) = 1
futex(0x55b901cbeb88, FUTEX_WAKE_PRIVATE, 1) = 1
futex(0x55b901cbebd8, FUTEX_WAKE_PRIVATE, 1) = 1
futex(0x55b901cbeb88, FUTEX_WAKE_PRIVATE, 1) = 1
futex(0x55b901cbebdc, FUTEX_WAKE_PRIVATE, 2147483647) = 4
futex(0x55b901cbeb88, FUTEX_WAKE_PRIVATE, 1) = 1
munmap(0x7f1c0d8db000, 8392704)         = 0
munmap(0x7f1c0d0da000, 8392704)         = 0
munmap(0x7f1c0c8d9000, 8392704)         = 0
munmap(0x7f1c342b6000, 8392704)         = 0
munmap(0x7f1c2ae88000, 1310728)         = 0
close(13)                               = 0
shutdown(12, SHUT_RDWR)                 = 0
close(12)                               = 0
rt_sigaction(SIGINT, NULL, {sa_handler=0x7f1c405c8ca0, sa_mask=[], sa_flags=SA_RESTORER, sa_restorer=0x7f1c40236800}, 8) = 0
rt_sigaction(SIGTERM, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=SA_RESTORER, sa_restorer=0x7f1c40236800}, 8) = 0
close(11)                               = 0
getpid()                                = 27
openat(AT_FDCWD, "/app/lib/libEGL.so.1", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/usr/lib/x86_64-linux-gnu/GL/default/lib/libEGL.so.1", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/usr/lib/x86_64-linux-gnu/openh264/extra/libEGL.so.1", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/etc/ld.so.cache", O_RDONLY|O_CLOEXEC) = 3
fstat(3, {st_mode=S_IFREG|0644, st_size=3432, ...}) = 0
mmap(NULL, 3432, PROT_READ, MAP_PRIVATE, 3, 0) = 0x7f1c38af7000
close(3)                                = 0
openat(AT_FDCWD, "/usr/lib/x86_64-linux-gnu/libEGL.so.1", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0p7\0\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0755, st_size=88648, ...}) = 0
close(3)                                = 0
munmap(0x7f1c38af7000, 3432)            = 0
openat(AT_FDCWD, "/app/lib/libEGL.so.1", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/usr/lib/x86_64-linux-gnu/GL/default/lib/libEGL.so.1", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/usr/lib/x86_64-linux-gnu/openh264/extra/libEGL.so.1", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/etc/ld.so.cache", O_RDONLY|O_CLOEXEC) = 3
fstat(3, {st_mode=S_IFREG|0644, st_size=3432, ...}) = 0
mmap(NULL, 3432, PROT_READ, MAP_PRIVATE, 3, 0) = 0x7f1c38af7000
close(3)                                = 0
openat(AT_FDCWD, "/usr/lib/x86_64-linux-gnu/libEGL.so.1", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0p7\0\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0755, st_size=88648, ...}) = 0
mmap(NULL, 87416, PROT_READ, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f1c38ae1000
mmap(0x7f1c38ae4000, 49152, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x3000) = 0x7f1c38ae4000
mmap(0x7f1c38af0000, 20480, PROT_READ, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0xf000) = 0x7f1c38af0000
mmap(0x7f1c38af5000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x13000) = 0x7f1c38af5000
close(3)                                = 0
mprotect(0x7f1c38af5000, 4096, PROT_READ) = 0
munmap(0x7f1c38af7000, 3432)            = 0
getpid()                                = 27
getpid()                                = 27
getpid()                                = 27
getpid()                                = 27
getpid()                                = 27
munmap(0x7f1c34259000, 380132)          = 0
munmap(0x7f1c341fc000, 380132)          = 0
munmap(0x7f1c3419f000, 380132)          = 0
write(2, "Traceback (most recent call last"..., 35Traceback (most recent call last):
) = 35
write(2, "  File \"/app/bin/openage\", line "..., 48  File "/app/bin/openage", line 15, in <module>
) = 48
openat(AT_FDCWD, "/app/bin/openage", O_RDONLY|O_CLOEXEC) = 3
fstat(3, {st_mode=S_IFREG|0755, st_size=507, ...}) = 0
ioctl(3, TCGETS, 0x7ffed2cc00a0)        = -1 ENOTTY (Inappropriate ioctl for device)
lseek(3, 0, SEEK_CUR)                   = 0
fcntl(3, F_DUPFD_CLOEXEC, 0)            = 4
fcntl(4, F_GETFL)                       = 0x8000 (flags O_RDONLY|O_LARGEFILE)
fstat(4, {st_mode=S_IFREG|0755, st_size=507, ...}) = 0
read(4, "#!/usr/bin/env python3\n\n\"\"\"\nOpen"..., 4096) = 507
close(4)                                = 0
lseek(3, 0, SEEK_SET)                   = 0
read(3, "#!/usr/bin/env python3\n\n\"\"\"\nOpen"..., 8192) = 507
close(3)                                = 0
write(2, "    main()\n", 11    main()
)            = 11
write(2, "  File \"/app/lib/python3.8/site-"..., 81  File "/app/lib/python3.8/site-packages/openage/__main__.py", line 132, in main
) = 81
openat(AT_FDCWD, "/app/lib/python3.8/site-packages/openage/__main__.py", O_RDONLY|O_CLOEXEC) = 3
fstat(3, {st_mode=S_IFREG|0644, st_size=4763, ...}) = 0
ioctl(3, TCGETS, 0x7ffed2cc00a0)        = -1 ENOTTY (Inappropriate ioctl for device)
lseek(3, 0, SEEK_CUR)                   = 0
fcntl(3, F_DUPFD_CLOEXEC, 0)            = 4
fcntl(4, F_GETFL)                       = 0x8000 (flags O_RDONLY|O_LARGEFILE)
fstat(4, {st_mode=S_IFREG|0644, st_size=4763, ...}) = 0
read(4, "# Copyright 2015-2020 the openag"..., 4096) = 4096
close(4)                                = 0
lseek(3, 0, SEEK_SET)                   = 0
read(3, "# Copyright 2015-2020 the openag"..., 8192) = 4763
close(3)                                = 0
write(2, "    return args.entrypoint(args,"..., 44    return args.entrypoint(args, cli.error)
) = 44
write(2, "  File \"/app/lib/python3.8/site-"..., 81  File "/app/lib/python3.8/site-packages/openage/game/main.py", line 79, in main
) = 81
openat(AT_FDCWD, "/app/lib/python3.8/site-packages/openage/game/main.py", O_RDONLY|O_CLOEXEC) = 3
fstat(3, {st_mode=S_IFREG|0644, st_size=2604, ...}) = 0
ioctl(3, TCGETS, 0x7ffed2cc00a0)        = -1 ENOTTY (Inappropriate ioctl for device)
lseek(3, 0, SEEK_CUR)                   = 0
fcntl(3, F_DUPFD_CLOEXEC, 0)            = 4
fcntl(4, F_GETFL)                       = 0x8000 (flags O_RDONLY|O_LARGEFILE)
fstat(4, {st_mode=S_IFREG|0644, st_size=2604, ...}) = 0
read(4, "# Copyright 2015-2020 the openag"..., 4096) = 2604
close(4)                                = 0
lseek(3, 0, SEEK_SET)                   = 0
read(3, "# Copyright 2015-2020 the openag"..., 8192) = 2604
close(3)                                = 0
...
+++ exited with 1 +++
tmrlvi commented 3 years ago

I'm having the same problem. The relevant lines are (It is easier to see when you add prints to openage.util.fslike.cpp.fs_open_r):

stat("/home/okias/.var/app/lol.sfttech.openage/data/openage/assets/converted/termcolors.docx", 0x7ffed2cbf520) = -1 ENOENT (No such file or directory)
stat("/app/share/openage/converted/termcolors.docx", 0x7ffed2cbf280) = -1 ENOENT (No such file or directory)
stat("/home/okias/.var/app/lol.sfttech.openage/data/openage/assets/converted/termcolors.docx", 0x7ffed2cbf520) = -1 ENOENT (No such file or directory)
stat("/app/share/openage/converted/termcolors.docx", 0x7ffed2cbf280) = -1 ENOENT (No such file or directory)

From what I understand, this is because you didn't build the resources. (Though also building the resources doesn't work. Seems the converter is in the middle of being refactored)

okias commented 3 years ago

If it's really this one, I think engine should report missing resources nicer way (since this is hell on earth and not mentioning Doom).. just going to create bug for the convertor

TheJJ commented 3 years ago

We now have a error message in place, so I think we can close this :D The reason is, as you said, that the converter is now new and in the engine isn't (yet).