我已经从源代码编译了虚幻引擎,一切都很成功。但是当我尝试启动UE4Editor时,它崩溃了。控制台上的错误是:
[2017.04.14-05.25.55:381][ 0]LogExit: Exiting.
Engine crash handling finished; re-raising signal 11 for the default handler. Good bye.
附加崩溃日志和诊断文件。
环境:
Linux andrii-asus 4.4.0-72-generic #93-Ubuntu SMP Fri Mar 31 14:07:41 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux
UE4.log:
Log file open, 04/14/17 08:20:46
LogInit:Display: Running engine without a game
LogPlatformFile: Not using cached read wrapper
LogInit:Display: RandInit(-1053205140) SRandInit(-1053205140).
LogTaskGraph: Started task graph with 5 named threads and 6 total threads with 1 sets of task threads.
LogStats: Stats thread started at 0.255940
LogInit: Using libcurl 7.48.0-DEV
LogInit: - built for x86_64-unknown-linux-gnu
LogInit: - supports SSL with OpenSSL/1.0.2h
LogInit: - supports HTTP deflate (compression) using libz 1.2.8
LogInit: - other features:
LogInit: CURL_VERSION_SSL
LogInit: CURL_VERSION_LIBZ
LogInit: CURL_VERSION_IPV6
LogInit: CURL_VERSION_ASYNCHDNS
LogInit: CURL_VERSION_LARGEFILE
LogInit: CURL_VERSION_TLSAUTH_SRP
LogInit: Libcurl: checking if '/etc/pki/tls/certs/ca-bundle.crt' exists
LogInit: Libcurl: checking if '/etc/ssl/certs/ca-certificates.crt' exists
LogInit: CurlRequestOptions (configurable via config and command line):
LogInit: - bVerifyPeer = true - Libcurl will verify peer certificate
LogInit: - bUseHttpProxy = false - Libcurl will NOT use HTTP proxy
LogInit: - bDontReuseConnections = false - Libcurl will reuse connections
LogInit: - CertBundlePath = /etc/ssl/certs/ca-certificates.crt - Libcurl will set CURLOPT_CAINFO to it
LogInit: Build: ++UE4+Release-4.15-CL-0
LogInit: Engine Version: 4.15.1-0+++UE4+Release-4.15
LogInit: Compatible Engine Version: 4.15.0-0+++UE4+Release-4.15
LogInit: Net CL: 0
LogDevObjectVersion: Number of dev versions registered: 14
LogDevObjectVersion: Dev-Blueprints (B0D832E4-1F89-4F0D-ACCF-7EB736FD4AA2): 8
LogDevObjectVersion: Dev-Build (E1C64328-A22C-4D53-A36C-8E866417BD8C): 0
LogDevObjectVersion: Dev-Core (375EC13C-06E4-48FB-B500-84F0262A717E): 2
LogDevObjectVersion: Dev-Editor (E4B068ED-F494-42E9-A231-DA0B2E46BB41): 14
LogDevObjectVersion: Dev-Framework (CFFC743F-43B0-4480-9391-14DF171D2073): 22
LogDevObjectVersion: Dev-Mobile (B02B49B5-BB20-44E9-A304-32B752E40360): 0
LogDevObjectVersion: Dev-Networking (A4E4105C-59A1-49B5-A7C5-40C4547EDFEE): 0
LogDevObjectVersion: Dev-Online (39C831C9-5AE6-47DC-9A44-9C173E1C8E7C): 0
LogDevObjectVersion: Dev-Physics (78F01B33-EBEA-4F98-B9B4-84EACCB95AA2): 0
LogDevObjectVersion: Dev-Platform (6631380F-2D4D-43E0-8009-CF276956A95A): 0
LogDevObjectVersion: Dev-Rendering (12F88B9F-8875-4AFC-A67C-D90C383ABD29): 12
LogDevObjectVersion: Dev-Sequencer (7B5AE74C-D270-4C10-A958-57980B212A5A): 3
LogDevObjectVersion: Dev-VR (D7296918-1DD6-4BDD-9DE2-64A83CC13884): 0
LogDevObjectVersion: Dev-LoadTimes (C2A15278-BFE7-4AFE-6C17-90FF531DF755): 1
LogInit: Compiled (64-bit): Apr 14 2017 01:02:21
LogInit: Compiled with Clang: 3.9.1 (branches/release_39)
LogInit: Build Configuration: Development
LogInit: Branch Name: ++UE4+Release-4.15
LogInit: Command line:
LogInit: Base directory: /home/andrii/dev/game-dev/UnrealEngine/Engine/Binaries/Linux/
LogInit: Installed Engine Build: 0
LogInit: Presizing for max 8388607 objects, including 0 objects not considered by GC, pre-allocating 0 bytes for permanent pool.
LogInit: Object subsystem initialized
[2017.04.14-05.20.47:317][ 0]LogInit: Initializing SDL.
[2017.04.14-05.20.47:393][ 0]LogInit: Initialized SDL 2.0.4 revision: 10374 (hg-10374:dccf51aee79b with EpicExtensions) (compiled against 2.0.4)
[2017.04.14-05.20.47:393][ 0]LogInit: Display metrics:
[2017.04.14-05.20.47:393][ 0]LogInit: PrimaryDisplayWidth: 1366
[2017.04.14-05.20.47:394][ 0]LogInit: PrimaryDisplayHeight: 768
[2017.04.14-05.20.47:394][ 0]LogInit: PrimaryDisplayWorkAreaRect:
[2017.04.14-05.20.47:394][ 0]LogInit: Left=0, Top=0, Right=1366, Bottom=768
[2017.04.14-05.20.47:394][ 0]LogInit: VirtualDisplayRect:
[2017.04.14-05.20.47:394][ 0]LogInit: Left=0, Top=0, Right=1366, Bottom=768
[2017.04.14-05.20.47:394][ 0]LogInit: TitleSafePaddingSize: X=0.000 Y=0.000
[2017.04.14-05.20.47:394][ 0]LogInit: ActionSafePaddingSize: X=0.000 Y=0.000
[2017.04.14-05.20.47:394][ 0]LogInit: Number of monitors: 1
[2017.04.14-05.20.47:394][ 0]LogInit: Monitor 0
[2017.04.14-05.20.47:394][ 0]LogInit: Name: 0
[2017.04.14-05.20.47:394][ 0]LogInit: ID: display0
[2017.04.14-05.20.47:394][ 0]LogInit: NativeWidth: 1366
[2017.04.14-05.20.47:394][ 0]LogInit: NativeHeight: 768
[2017.04.14-05.20.47:394][ 0]LogInit: bIsPrimary: true
[2017.04.14-05.20.47:396][ 0]LogLinux: Selected Device Profile: [Linux]
[2017.04.14-05.20.47:396][ 0]LogInit: Applying CVar settings loaded from the selected device profile: [Linux]
[2017.04.14-05.20.47:425][ 0]LogInit: Linux hardware info:
[2017.04.14-05.20.47:425][ 0]LogInit: - we are the first instance of this executable
[2017.04.14-05.20.47:425][ 0]LogInit: - this process' id (pid) is 21826, parent process' id (ppid) is 18246
[2017.04.14-05.20.47:425][ 0]LogInit: - we are not running under debugger
[2017.04.14-05.20.47:425][ 0]LogInit: - machine network name is 'andrii-asus'
[2017.04.14-05.20.47:425][ 0]LogInit: - user name is 'andrii' (andrii)
[2017.04.14-05.20.47:425][ 0]LogInit: - we're logged in locally
[2017.04.14-05.20.47:425][ 0]LogInit: - we're running with rendering
[2017.04.14-05.20.47:425][ 0]LogInit: - CPU: GenuineIntel 'Intel(R) Core(TM) i5-4200U CPU @ 1.60GHz' (signature: 0x40651)
[2017.04.14-05.20.47:425][ 0]LogInit: - Number of physical cores available for the process: 2
[2017.04.14-05.20.47:425][ 0]LogInit: - Number of logical cores available for the process: 4
[2017.04.14-05.20.47:425][ 0]LogInit: - Cache line size: 64
[2017.04.14-05.20.47:425][ 0]LogInit: - Memory allocator used: binned
[2017.04.14-05.20.47:425][ 0]LogLinux: Benchmarking clocks:
[2017.04.14-05.20.47:425][ 0]LogLinux: - CLOCK_REALTIME (id=0) can sustain 43327609 (43328K, 43M) calls per second without zero deltas.
[2017.04.14-05.20.47:425][ 0]LogLinux: - CLOCK_MONOTONIC (id=1) can sustain 43813462 (43813K, 44M) calls per second without zero deltas.
[2017.04.14-05.20.47:425][ 0]LogLinux: - CLOCK_MONOTONIC_RAW (id=4) can sustain 11311143 (11311K, 11M) calls per second without zero deltas.
[2017.04.14-05.20.47:425][ 0]LogLinux: - CLOCK_MONOTONIC_COARSE (id=6) can sustain 131097007 (131097K, 131M) calls per second with 99.999802% zero deltas.
[2017.04.14-05.20.47:425][ 0]LogLinux: Selected clock_id 1 (CLOCK_MONOTONIC) since it is the fastest support clock without zero deltas.
[2017.04.14-05.20.47:425][ 0]LogInit: Linux-specific commandline switches:
[2017.04.14-05.20.47:426][ 0]LogInit: -nodwarf (currently OFF): suppress parsing of DWARF debug info (callstacks will be generated faster, but won't have line numbers)
[2017.04.14-05.20.47:426][ 0]LogInit: -ansimalloc - use malloc()/free() from libc (useful for tools like valgrind and electric fence)
[2017.04.14-05.20.47:426][ 0]LogInit: -jemalloc - use jemalloc for all memory allocation
[2017.04.14-05.20.47:426][ 0]LogInit: -binnedmalloc - use binned malloc for all memory allocation
[2017.04.14-05.20.47:426][ 0]LogInit: -httpproxy=ADDRESS:PORT - redirects HTTP requests to a proxy (only supported if compiled with libcurl)
[2017.04.14-05.20.47:426][ 0]LogInit: -reuseconn - allow libcurl to reuse HTTP connections (only matters if compiled with libcurl)
[2017.04.14-05.20.47:426][ 0]LogInit: -virtmemkb=NUMBER - sets process virtual memory (address space) limit (overrides VirtualMemoryLimitInKB value from .ini)
[2017.04.14-05.20.47:426][ 0]LogInit: - Physical RAM available (not considering process quota): 8 GB (7867 MB, 8056536 KB, 8249892864 bytes)
[2017.04.14-05.20.47:485][ 0]LogTextLocalizationManager: No specific translations for ('en-US') exist, so ('en') translations will be used.
[2017.04.14-05.20.51:313][ 0]LogInit:Error: _PlatformCreateOpenGLContextCore - Could not create OpenGL 4.3 context, SDL error: 'Could not create GL context: GLXBadFBConfig'
[2017.04.14-05.20.51:313][ 0]LogRHI:Error: OpenGL 4.3 not supported by driver
[2017.04.14-05.20.51:314][ 0]LogInit:Error: _PlatformCreateOpenGLContextCore - Could not create OpenGL 4.3 context, SDL error: 'Could not create GL context: GLXBadFBConfig'
[2017.04.14-05.20.51:361][ 0]LogLinux:Error: appError called: Assertion failed: Assertion failed: SharedContext.hGLContext [File:/home/andrii/dev/game-dev/UnrealEngine/Engine/Source/Runtime/OpenGLDrv/Private/Linux/OpenGLLinux.cpp] [Line: 249]
[2017.04.14-05.20.51:401][ 0]LogLinux: === Critical error: ===
Unhandled Exception: SIGSEGV: invalid attempt to write memory at address 0x0000000000000003
[2017.04.14-05.20.51:401][ 0]LogLinux: Assertion failed: Assertion failed: SharedContext.hGLContext [File:/home/andrii/dev/game-dev/UnrealEngine/Engine/Source/Runtime/OpenGLDrv/Private/Linux/OpenGLLinux.cpp] [Line: 249]
[Callstack] 00 0x00007fe745f33eff FLinuxPlatformStackWalk::CaptureStackBackTrace(unsigned long long*, unsigned int, void*)
[Callstack] 01 0x00007fe745e1cf25 FGenericPlatformStackWalk::StackWalkAndDump(char*, unsigned long, int, void*)
[Callstack] 02 0x00007fe745ef52e1 FLinuxCrashContext::CaptureStackTrace()
[Callstack] 03 0x00007fe73c139190 CommonLinuxCrashHandler(FGenericCrashContext const&)
[Callstack] 04 0x00007fe745ef945a PlatformCrashHandler(int, siginfo_t*, void*)
[Callstack] 05 0x00007fe74bbf1390 /lib/x86_64-linux-gnu/libpthread.so.0(+0x11390) [0x7fe74bbf1390]
[Callstack] 06 0x00007fe745e1154b FGenericPlatformMisc::RaiseException(unsigned int)
[Callstack] 07 0x00007fe745f03222 FOutputDeviceLinuxError::Serialize(wchar_t const*, ELogVerbosity::Type, FName const&)
[Callstack] 08 0x00007fe745fd016b FOutputDevice::Logf(wchar_t const*, ...)
[Callstack] 09 0x00007fe745f39718 FDebug::AssertFailed(char const*, char const*, int, wchar_t const*, ...)
[Callstack] 10 0x00007fe720431902 FPlatformOpenGLDevice::FPlatformOpenGLDevice()
[Callstack] 11 0x00007fe72042eac7 FOpenGLDynamicRHI::FOpenGLDynamicRHI()
[Callstack] 12 0x00007fe72042e5ff FOpenGLDynamicRHIModule::CreateRHI(ERHIFeatureLevel::Type)
[Callstack] 13 0x00007fe73ff72051 PlatformCreateDynamicRHI()
[Callstack] 14 0x00007fe73ff718af RHIInit(bool)
[Callstack] 15 0x0000000000418484 FEngineLoop::PreInit(wchar_t const*) [/home/andrii/dev/game-dev/UnrealEngine/Engine/Source/Runtime/Launch/Private/LaunchEngineLoop.cpp, line 1633]
[Callstack] 16 0x0000000000424508 GuardedMain(wchar_t const*) [/home/andrii/dev/game-dev/UnrealEngine/Engine/Source/Runtime/Launch/Private/Launch.cpp, line 42]
[Callstack] 17 0x00007fe73c139f1b CommonLinuxMain(int, char**, int (*)(wchar_t const*))
[Callstack] 18 0x00007fe73b4e1830 /lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0xf0) [0x7fe73b4e1830]
[Callstack] 19 0x0000000000414ff9 ./UE4Editor(_start+0x29) [0x414ff9]
诊断.txt:
Generating report for minidump
Application version 4.15.1.0
... built from changelist 0
OS version Linux 4.4.0-72-generic (network name: andrii-asus)
Running 2 x86_64 processors (4 logical cores)
Exception was "SIGSEGV: invalid attempt to write memory at address 0x0000000000000003"
<SOURCE START>
<SOURCE END>
<CALLSTACK START>
Unknown!FLinuxPlatformStackWalk::CaptureStackBackTrace(unsigned long long*, unsigned int, void*) + some bytes
Unknown!FGenericPlatformStackWalk::StackWalkAndDump(char*, unsigned long, int, void*) + some bytes
Unknown!FLinuxCrashContext::CaptureStackTrace() + some bytes
Unknown!CommonLinuxCrashHandler(FGenericCrashContext const&) + some bytes
Unknown!PlatformCrashHandler(int, siginfo_t*, void*) + some bytes
Unknown!/lib/x86_64-linux-gnu/libpthread.so.0(+0x11390) [0x7fe74bbf1390] + some bytes
Unknown!FGenericPlatformMisc::RaiseException(unsigned int) + some bytes
Unknown!FOutputDeviceLinuxError::Serialize(wchar_t const*, ELogVerbosity::Type, FName const&) + some bytes
Unknown!FOutputDevice::Logf(wchar_t const*, ...) + some bytes
Unknown!FDebug::AssertFailed(char const*, char const*, int, wchar_t const*, ...) + some bytes
Unknown!FPlatformOpenGLDevice::FPlatformOpenGLDevice() + some bytes
Unknown!FOpenGLDynamicRHI::FOpenGLDynamicRHI() + some bytes
Unknown!FOpenGLDynamicRHIModule::CreateRHI(ERHIFeatureLevel::Type) + some bytes
Unknown!PlatformCreateDynamicRHI() + some bytes
Unknown!RHIInit(bool) + some bytes
./UE4Editor!FEngineLoop::PreInit(wchar_t const*) + some bytes [/home/andrii/dev/game-dev/UnrealEngine/Engine/Source/Runtime/Launch/Private/LaunchEngineLoop.cpp:1633]
./UE4Editor!GuardedMain(wchar_t const*) + some bytes [/home/andrii/dev/game-dev/UnrealEngine/Engine/Source/Runtime/Launch/Private/Launch.cpp:42]
Unknown!CommonLinuxMain(int, char**, int (*)(wchar_t const*)) + some bytes
Unknown!/lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0xf0) [0x7fe73b4e1830] + some bytes
Unknown!./UE4Editor(_start+0x29) [0x414ff9] + some bytes
<CALLSTACK END>
0 loaded modules
Report end!
提前谢谢。
好的,我找到了启动失败的原因。
长话短说:
执行以下命令让我度过了愉快的一天:
apt-add-repository ppa:oibaf/graphics-drivers && apt-get update && apt-get dist-upgrade
注意:您可能需要成为根用户才能执行这些命令。
日志中最有用的行是:
0]LogInit:Error: _PlatformCreateOpenGLContextCore - Could not create OpenGL 4.3 context, SDL error: 'Could not create GL context: GLXBadFBConfig'
[2017.04.14-05.20.51:313][ 0]LogRHI:Error: OpenGL 4.3 not supported by driver
[2017.04.14-05.20.51:314][ 0]LogInit:Error: _PlatformCreateOpenGLContextCore - Could not create OpenGL 4.3 context, SDL error: 'Could not create GL context: GLXBadFBConfig'
[2017.04.14-05.20.51:361][ 0]LogLinux:Error: appError called: Assertion failed: Assertion failed: SharedContext.hGLContext [File:/home/andrii/dev/game-dev/UnrealEngine/Engine/Source/Runtime/OpenGLDrv/Private/Linux/OpenGLLinux.cpp] [Line: 249]
[2017.04.14-05.20.51:401][ 0]LogLinux: === Critical error: ===
Unhandled Exception: SIGSEGV: invalid attempt to write memory at address 0x0000000000000003
[2017.04.14-05.20.51:401][ 0]LogLinux: Assertion failed: Assertion failed: SharedContext.hGLContext [File:/home/andrii/dev/game-dev/UnrealEngine/Engine/Source/Runtime/OpenGLDrv/Private/Linux/OpenGLLinux.cpp] [Line: 249]
这意味着我的图形驱动程序不支持OpenGL 4.3+。
在谷歌上搜索了一会儿后,我发现了一篇关于在 Linux 上安装英特尔图形驱动程序的好文章(在我的例子中是 Mint 18(。
这是一个链接:在Ubuntu 16.04上尝试英特尔的OpenGL 4.2 Mesa驱动程序很容易
,存在权限问题,您应该更改所有者,然后更改chown
和chmod
的权限。我这样做并工作。
sudo chown -R [your username] : [your group ] *