carla-simulator / carla

Open-source simulator for autonomous driving research.
http://carla.org
MIT License
11.57k stars 3.73k forks source link

Is it possible to run carla simulator binary in ubuntu 14.04? #1101

Closed tanglrHello closed 5 years ago

tanglrHello commented 5 years ago

I have a package built on ubuntu16.04, and have a server which is of version ubuntu14.04. I want to run the carla simulator server by ./CarlaUE4.sh without display on the 14.04 server. I copied the directory from Dist to the 14.04 server, and execute: $DISPLAY= ./CarlaUE4.sh Then a segmentation fault comes

My configuration: ubuntu 14.04 carla release 0.9.1 NVIDIA GEFORCE GTX 1080Ti nvidia driver: 384.130

I know there is a note in document saying carla requires ubuntu16.04. But if I don't need to compile it on ubuntu 14.04 and just run a prebuilt binary, is it still necessary? As updating the os version for the server or preparing a docker is a little bit toublesome, is there a way to just install something to get it right?

Any suggestion or clue is really aprreciated. If you have run the carla simulator successfully on ubuntu 14.04, please let me know. Thanks!

The complete log for the segmentation fault is here:

Increasing per-process limit of core file size to infinity. LogPlatformFile: Using cached read wrapper LogInit: Display: RandInit(1949752523) SRandInit(1949752523). LogInit: Overriding engine version to CL 0, compatible CL 0 LogTaskGraph: Started task graph with 5 named threads and 17 total threads with 3 sets of task threads. LogStats: Stats thread started at 0.036181 LogICUInternationalization: Display: ICU TimeZone Detection - Raw Offset: +8:00, Platform Override: '' LogPluginManager: Mounting plugin Carla LogPluginManager: Mounting plugin PhysXVehicles LogPluginManager: Mounting plugin RSMapGen LogPluginManager: Mounting plugin ProceduralMeshComponent LogPluginManager: Mounting plugin PerformanceMonitor LogPluginManager: Mounting plugin Paper2D LogPluginManager: Mounting plugin LightPropagationVolume LogPluginManager: Mounting plugin CryptoKeys LogPluginManager: Mounting plugin FacialAnimation LogPluginManager: Mounting plugin DatasmithContent LogPluginManager: Mounting plugin CharacterAI LogPluginManager: Mounting plugin AvfMedia LogPluginManager: Mounting plugin ImgMedia LogPluginManager: Mounting plugin LinearTimecode LogPluginManager: Mounting plugin MediaCompositing LogPluginManager: Mounting plugin WmfMedia LogPluginManager: Mounting plugin TcpMessaging LogPluginManager: Mounting plugin UdpMessaging LogPluginManager: Mounting plugin ActorSequence LogPluginManager: Mounting plugin OnlineSubsystem LogPluginManager: Mounting plugin OnlineSubsystemNull LogPluginManager: Mounting plugin OnlineSubsystemUtils LogPluginManager: Mounting plugin ArchVisCharacter LogPluginManager: Mounting plugin CableComponent LogPluginManager: Mounting plugin CustomMeshComponent LogPluginManager: Mounting plugin ImmediatePhysics LogPluginManager: Mounting plugin LinuxDeviceProfileSelector LogPluginManager: Mounting plugin RuntimePhysXCooking LogStreaming: Display: Took 0.170s to configure plugins. LogFileManager: Warning: ReadFile failed: Count=0 Length=4096 Error=errno=21 (Is a directory) for file LogInit: Using libcurl 7.57.0 LogInit: - built for x86_64-pc-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: - MaxHostConnections = 16 - Libcurl will limit the number of connections to a host LogInit: - LocalHostAddr = Default LogInit: Build: ++UE4+Release-4.19-CL-0 LogInit: Engine Version: 4.19.2-0+++UE4+Release-4.19 LogInit: Compatible Engine Version: 4.19.0-0+++UE4+Release-4.19 LogInit: Net CL: 0 LogDevObjectVersion: Number of dev versions registered: 18 LogDevObjectVersion: Dev-Blueprints (B0D832E4-1F89-4F0D-ACCF-7EB736FD4AA2): 10 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): 23 LogDevObjectVersion: Dev-Framework (CFFC743F-43B0-4480-9391-14DF171D2073): 33 LogDevObjectVersion: Dev-Mobile (B02B49B5-BB20-44E9-A304-32B752E40360): 2 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): 25 LogDevObjectVersion: Dev-Sequencer (7B5AE74C-D270-4C10-A958-57980B212A5A): 6 LogDevObjectVersion: Dev-VR (D7296918-1DD6-4BDD-9DE2-64A83CC13884): 1 LogDevObjectVersion: Dev-LoadTimes (C2A15278-BFE7-4AFE-6C17-90FF531DF755): 1 LogDevObjectVersion: Private-Geometry (6EACA3D4-40EC-4CC1-B786-8BED09428FC5): 2 LogDevObjectVersion: Dev-AnimPhys (29E575DD-E0A3-4627-9D10-D276232CDCEA): 16 LogDevObjectVersion: Dev-ReflectionCapture (6B266CEC-1EC7-4B8F-A30B-E4D90942FC07): 1 LogDevObjectVersion: Dev-Automation (0DF73D61-A23F-47EA-B727-89E90C41499A): 1 LogInit: Compiled (64-bit): Dec 28 2018 14:30:36 LogInit: Compiled with Clang: 5.0.0 (tags/RELEASE_500/final) LogInit: Build Configuration: Development LogInit: Branch Name: ++UE4+Release-4.19 LogInit: Command Line: -windowed LogInit: Base Directory: /home/tanglianrui/roadstar/0.9.1-10-fast-two-maps/LinuxNoEditor/CarlaUE4/Binaries/Linux/ LogInit: Installed Engine Build: 0 LogStreaming: Display: Took 0.004s to delete old logs. LogInit: Presizing for max 2097152 objects, including 0 objects not considered by GC, pre-allocating 0 bytes for permanent pool. LogStreaming: Display: Async Loading initialized: Event Driven Loader: true, Async Loading Thread: false LogInit: Object subsystem initialized [2019.01.07-08.42.33:288][ 0]LogInit: Initializing SDL. [2019.01.07-08.42.33:298][ 0]LogInit: Using SDL_WINDOW_OPENGL [2019.01.07-08.42.33:298][ 0]LogInit: Initialized SDL 2.0.5 revision: 11184 (hg-11184:04063928c4a8 with EpicExtensions) (compiled against 2.0.5) [2019.01.07-08.42.33:298][ 0]LogInit: Display metrics: [2019.01.07-08.42.33:298][ 0]LogInit: PrimaryDisplayWidth: 1024 [2019.01.07-08.42.33:298][ 0]LogInit: PrimaryDisplayHeight: 768 [2019.01.07-08.42.33:298][ 0]LogInit: PrimaryDisplayWorkAreaRect: [2019.01.07-08.42.33:298][ 0]LogInit: Left=0, Top=0, Right=1024, Bottom=768 [2019.01.07-08.42.33:298][ 0]LogInit: VirtualDisplayRect: [2019.01.07-08.42.33:298][ 0]LogInit: Left=0, Top=0, Right=1024, Bottom=768 [2019.01.07-08.42.33:298][ 0]LogInit: TitleSafePaddingSize: X=0.000 Y=0.000 Z=0.000 W=0.000 [2019.01.07-08.42.33:298][ 0]LogInit: ActionSafePaddingSize: X=0.000 Y=0.000 Z=0.000 W=0.000 [2019.01.07-08.42.33:298][ 0]LogInit: Number of monitors: 1 [2019.01.07-08.42.33:298][ 0]LogInit: Monitor 0 [2019.01.07-08.42.33:298][ 0]LogInit: Name: 0 [2019.01.07-08.42.33:298][ 0]LogInit: ID: display0 [2019.01.07-08.42.33:298][ 0]LogInit: NativeWidth: 1024 [2019.01.07-08.42.33:298][ 0]LogInit: NativeHeight: 768 [2019.01.07-08.42.33:298][ 0]LogInit: bIsPrimary: true [2019.01.07-08.42.33:299][ 0]LogLinux: Selected Device Profile: [LinuxNoEditor] [2019.01.07-08.42.33:299][ 0]LogInit: Applying CVar settings loaded from the selected device profile: [LinuxNoEditor] [2019.01.07-08.42.33:316][ 0]LogInit: Linux hardware info: [2019.01.07-08.42.33:316][ 0]LogInit: - we are the first instance of this executable [2019.01.07-08.42.33:317][ 0]LogInit: - this process' id (pid) is 6648, parent process' id (ppid) is 6640 [2019.01.07-08.42.33:317][ 0]LogInit: - we are not running under debugger [2019.01.07-08.42.33:317][ 0]LogInit: - machine network name is 'fabu-All-Series-3' [2019.01.07-08.42.33:317][ 0]LogInit: - user name is 'tanglianrui' (tanglianrui) [2019.01.07-08.42.33:317][ 0]LogInit: - we're logged in remotely [2019.01.07-08.42.33:317][ 0]LogInit: - we're running with rendering [2019.01.07-08.42.33:317][ 0]LogInit: - CPU: GenuineIntel 'Intel(R) Xeon(R) CPU E5-2667 v4 @ 3.20GHz' (signature: 0x406F1) [2019.01.07-08.42.33:317][ 0]LogInit: - Number of physical cores available for the process: 32 [2019.01.07-08.42.33:317][ 0]LogInit: - Number of logical cores available for the process: 32 [2019.01.07-08.42.33:317][ 0]LogInit: - Cache line size: 64 [2019.01.07-08.42.33:317][ 0]LogInit: - Memory allocator used: binned2 [2019.01.07-08.42.33:317][ 0]LogLinux: Benchmarking clocks: [2019.01.07-08.42.33:317][ 0]LogLinux: - CLOCK_REALTIME (id=0) can sustain 32073655 (32074K, 32M) calls per second without zero deltas. [2019.01.07-08.42.33:317][ 0]LogLinux: - CLOCK_MONOTONIC (id=1) can sustain 46665790 (46666K, 47M) calls per second without zero deltas. [2019.01.07-08.42.33:317][ 0]LogLinux: - CLOCK_MONOTONIC_RAW (id=4) can sustain 12794538 (12795K, 13M) calls per second without zero deltas. [2019.01.07-08.42.33:317][ 0]LogLinux: - CLOCK_MONOTONIC_COARSE (id=6) can sustain 173814498 (173814K, 174M) calls per second with 99.999851% zero deltas. [2019.01.07-08.42.33:317][ 0]LogLinux: Selected clock_id 1 (CLOCK_MONOTONIC) since it is the fastest support clock without zero deltas. [2019.01.07-08.42.33:317][ 0]LogInit: Linux-specific commandline switches: [2019.01.07-08.42.33:317][ 0]LogInit: -nodwarf (currently OFF): suppress parsing of DWARF debug info (callstacks will be generated faster, but won't have line numbers) [2019.01.07-08.42.33:317][ 0]LogInit: -ansimalloc - use malloc()/free() from libc (useful for tools like valgrind and electric fence) [2019.01.07-08.42.33:317][ 0]LogInit: -jemalloc - use jemalloc for all memory allocation [2019.01.07-08.42.33:317][ 0]LogInit: -binnedmalloc - use binned malloc for all memory allocation [2019.01.07-08.42.33:317][ 0]LogInit: -httpproxy=ADDRESS:PORT - redirects HTTP requests to a proxy (only supported if compiled with libcurl) [2019.01.07-08.42.33:317][ 0]LogInit: -reuseconn - allow libcurl to reuse HTTP connections (only matters if compiled with libcurl) [2019.01.07-08.42.33:317][ 0]LogInit: -virtmemkb=NUMBER - sets process virtual memory (address space) limit (overrides VirtualMemoryLimitInKB value from .ini) [2019.01.07-08.42.33:318][ 0]LogInit: - Physical RAM available (not considering process quota): 79 GB (80432 MB, 82363356 KB, 84340076544 bytes) [2019.01.07-08.42.33:336][ 0]LogInit: Using OS detected language (en-US). [2019.01.07-08.42.33:336][ 0]LogInit: Using OS detected locale (en-US). [2019.01.07-08.42.33:337][ 0]LogTextLocalizationManager: No localization for 'en-US' exists, so 'en' will be used for the language. [2019.01.07-08.42.33:338][ 0]LogTextLocalizationManager: No localization for 'en-US' exists, so 'en' will be used for the locale. [2019.01.07-08.42.33:385][ 0]LogStreaming: Display: Took 0.049s to EndInitTextLocalization. [2019.01.07-08.42.33:391][ 0]LogSlate: New Slate User Created. User Index 0, Is Virtual User: 0 [2019.01.07-08.42.33:391][ 0]LogSlate: Slate User Registered. User Index 0, Is Virtual User: 0 Signal 11 caught. Malloc Size=131076 LargeMemoryPoolOffset=131092 CommonLinuxCrashHandler: Signal=11 Malloc Size=65535 LargeMemoryPoolOffset=196655 [2019.01.07-08.42.34:049][ 0]LogLinux: === Critical error: === Unhandled Exception: SIGSEGV: invalid attempt to read memory at address 0x0000000000000010

[2019.01.07-08.42.34:049][ 0]LogLinux: Fatal error!

0x00000000035d3ae5 FLinuxPlatformStackWalk::CaptureStackBackTrace(unsigned long long, unsigned int, void) [/home/tanglianrui/UnrealEngine_4.19/Engine/Source/Runtime/Core/Private/Linux/LinuxPlatformStackWalk.cpp:1038] 0x00000000034b8d25 FGenericPlatformStackWalk::StackWalkAndDump(char, unsigned long, int, void) [/home/tanglianrui/UnrealEngine_4.19/Engine/Source/Runtime/Core/Private/GenericPlatform/GenericPlatformStackWalk.cpp:171] 0x00000000035925a0 FLinuxCrashContext::CaptureStackTrace() [Runtime/Core/Public/Containers/ContainerAllocationPolicies.h:332] 0x00000000063bf26b CommonLinuxCrashHandler(FGenericCrashContext const&) [/home/tanglianrui/UnrealEngine_4.19/Engine/Source/Runtime/Linux/LinuxCommonStartup/Private/LinuxCommonStartup.cpp:37] 0x0000000003593a03 PlatformCrashHandler(int, siginfo_t, void) [/home/tanglianrui/UnrealEngine_4.19/Engine/Source/Runtime/Core/Private/Linux/LinuxPlatformCrashContext.cpp:521] 0x00007f6918441330 /lib/x86_64-linux-gnu/libpthread.so.0(+0x10330) [0x7f6918441330] 0x00000000068d78e8 /home/tanglianrui/roadstar/0.9.1-10-fast-two-maps/LinuxNoEditor/CarlaUE4/Binaries/Linux/CarlaUE4() [0x68d78e8] 0x000000000688ed47 /home/tanglianrui/roadstar/0.9.1-10-fast-two-maps/LinuxNoEditor/CarlaUE4/Binaries/Linux/CarlaUE4() [0x688ed47] 0x0000000004afc58c Linux_PlatformCreateDummyGLWindow(FPlatformOpenGLContext) [/home/tanglianrui/UnrealEngine_4.19/Engine/Source/Runtime/OpenGLDrv/Private/Linux/OpenGLLinux.cpp:119] 0x0000000004afe6f3 PlatformInitOpenGL() [/home/tanglianrui/UnrealEngine_4.19/Engine/Source/Runtime/OpenGLDrv/Private/Linux/OpenGLLinux.cpp:852] 0x0000000004b19d29 FOpenGLDynamicRHI::FOpenGLDynamicRHI() [/home/tanglianrui/UnrealEngine_4.19/Engine/Source/Runtime/OpenGLDrv/Private/Linux/OpenGLLinux.cpp:311] 0x0000000004b19aec FOpenGLDynamicRHIModule::CreateRHI(ERHIFeatureLevel::Type) [/home/tanglianrui/UnrealEngine_4.19/Engine/Source/Runtime/OpenGLDrv/Private/OpenGLDevice.cpp:1076] 0x0000000004b7aa77 PlatformCreateDynamicRHI() [/home/tanglianrui/UnrealEngine_4.19/Engine/Source/Runtime/RHI/Private/Linux/LinuxDynamicRHI.cpp:68] 0x0000000004b79fec RHIInit(bool) [/home/tanglianrui/UnrealEngine_4.19/Engine/Source/Runtime/RHI/Private/DynamicRHI.cpp:180] 0x000000000345d944 FEngineLoop::PreInit(wchar_t const) [/home/tanglianrui/UnrealEngine_4.19/Engine/Source/Runtime/Launch/Private/LaunchEngineLoop.cpp:1785] 0x0000000003468e68 GuardedMain(wchar_t const*) [/home/tanglianrui/UnrealEngine_4.19/Engine/Source/Runtime/Launch/Private/Launch.cpp:42] 0x00000000063bfcc0 CommonLinuxMain(int, char*, int ()(wchar_t const*)) [/home/tanglianrui/UnrealEngine_4.19/Engine/Source/Runtime/Linux/LinuxCommonStartup/Private/LinuxCommonStartup.cpp:236] 0x00007f69173f0f45 /lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0xf5) [0x7f69173f0f45] 0x000000000345b029 /home/tanglianrui/roadstar/0.9.1-10-fast-two-maps/LinuxNoEditor/CarlaUE4/Binaries/Linux/CarlaUE4(_start+0x29) [0x345b029]

[2019.01.07-08.42.34:059][ 0]LogExit: Executing StaticShutdownAfterError LogPlatformFile: Not using cached read wrapper LogInit: Display: RandInit(902544655) SRandInit(902544655). LogTaskGraph: Started task graph with 4 named threads and 20 total threads with 1 sets of task threads. LogInit: Build: ++UE4+Release-4.19-CL-0 LogInit: Engine Version: 4.19.2-0+++UE4+Release-4.19 LogInit: Compatible Engine Version: 4.19.0-0+++UE4+Release-4.19 LogInit: Net CL: 0 LogInit: Compiled (64-bit): Dec 21 2018 14:53:45 LogInit: Compiled with Clang: 5.0.0 (tags/RELEASE_500/final) LogInit: Build Configuration: Shipping LogInit: Branch Name: ++UE4+Release-4.19 LogInit: Command Line: -Abslog=/home/tanglianrui/roadstar/0.9.1-10-fast-two-maps/LinuxNoEditor/CarlaUE4/Saved/Logs/CarlaUE4-CRC.log /home/tanglianrui/roadstar/0.9.1-10-fast-two-maps/LinuxNoEditor/CarlaUE4/Saved/Crashes/crashinfo-CarlaUE4-pid-6648-00035CB622011007002A003B7448A7A5/ LogInit: Base Directory: /home/tanglianrui/roadstar/0.9.1-10-fast-two-maps/LinuxNoEditor/Engine/Binaries/Linux/ LogInit: Installed Engine Build: 1 LogInit: Presizing for max 100000 objects, including 0 objects not considered by GC, pre-allocating 0 bytes for permanent pool. LogInit: Object subsystem initialized [2019.01.07-08.42.34:117][ 0]LogInit: Linux hardware info: [2019.01.07-08.42.34:118][ 0]LogInit: - we are the first instance of this executable [2019.01.07-08.42.34:118][ 0]LogInit: - this process' id (pid) is 6678, parent process' id (ppid) is 6648 [2019.01.07-08.42.34:118][ 0]LogInit: - we are not running under debugger [2019.01.07-08.42.34:118][ 0]LogInit: - machine network name is 'fabu-All-Series-3' [2019.01.07-08.42.34:118][ 0]LogInit: - user name is 'tanglianrui' (tanglianrui) [2019.01.07-08.42.34:118][ 0]LogInit: - we're logged in remotely [2019.01.07-08.42.34:118][ 0]LogInit: - we're running with rendering [2019.01.07-08.42.34:118][ 0]LogInit: - CPU: GenuineIntel 'Intel(R) Xeon(R) CPU E5-2667 v4 @ 3.20GHz' (signature: 0x406F1) [2019.01.07-08.42.34:118][ 0]LogInit: - Number of physical cores available for the process: 32 [2019.01.07-08.42.34:118][ 0]LogInit: - Number of logical cores available for the process: 32 [2019.01.07-08.42.34:118][ 0]LogInit: - Cache line size: 64 [2019.01.07-08.42.34:118][ 0]LogInit: - Memory allocator used: binned2 [2019.01.07-08.42.34:119][ 0]LogLinux: Skipped benchmarking clocks because the engine is running in a standalone program mode - CLOCK_REALTIME will be used. [2019.01.07-08.42.34:119][ 0]LogInit: Linux-specific commandline switches: [2019.01.07-08.42.34:119][ 0]LogInit: -nodwarf (currently OFF): suppress parsing of DWARF debug info (callstacks will be generated faster, but won't have line numbers) [2019.01.07-08.42.34:119][ 0]LogInit: -ansimalloc - use malloc()/free() from libc (useful for tools like valgrind and electric fence) [2019.01.07-08.42.34:119][ 0]LogInit: -jemalloc - use jemalloc for all memory allocation [2019.01.07-08.42.34:119][ 0]LogInit: -binnedmalloc - use binned malloc for all memory allocation [2019.01.07-08.42.34:119][ 0]LogInit: -httpproxy=ADDRESS:PORT - redirects HTTP requests to a proxy (only supported if compiled with libcurl) [2019.01.07-08.42.34:119][ 0]LogInit: -reuseconn - allow libcurl to reuse HTTP connections (only matters if compiled with libcurl) [2019.01.07-08.42.34:119][ 0]LogInit: -virtmemkb=NUMBER - sets process virtual memory (address space) limit (overrides VirtualMemoryLimitInKB value from .ini) [2019.01.07-08.42.34:119][ 0]LogInit: - Physical RAM available (not considering process quota): 79 GB (80432 MB, 82363356 KB, 84340076544 bytes) [2019.01.07-08.42.34:122][ 0]LogUObjectArray: 149 objects as part of root set at end of initial load. [2019.01.07-08.42.34:122][ 0]LogUObjectAllocator: 22184 out of 0 bytes used by permanent object pool. [2019.01.07-08.42.34:122][ 0]LogUObjectArray: CloseDisregardForGC: 0/0 objects in disregard for GC pool [2019.01.07-08.42.34:122][ 0]LogInit: Using OS detected language (). [2019.01.07-08.42.34:122][ 0]LogInit: Using OS detected locale (). [2019.01.07-08.42.34:122][ 0]LogPaths: Warning: No paths for game localization data were specifed in the game configuration. [2019.01.07-08.42.34:122][ 0]LogTextLocalizationManager: No localization for '' exists, so 'en' will be used for the language. [2019.01.07-08.42.34:122][ 0]LogTextLocalizationManager: No localization for '' exists, so 'en' will be used for the locale. [2019.01.07-08.42.34:122][ 0]LogInit: Warning: No paths for engine localization data were specifed in the engine configuration. [2019.01.07-08.42.34:127][ 0]CrashReportClientLog: CrashReportClientVersion=1.0 [2019.01.07-08.42.34:127][ 0]CrashReportClientLog: CrashReportReceiver disabled [2019.01.07-08.42.34:127][ 0]CrashReportClientLog: DataRouterUrl: https://datarouter.ol.epicgames.com/datarouter/api/v1/public/data [2019.01.07-08.42.34:129][ 0]CrashReportClientLog: Initial state = Unknown UploadState value [2019.01.07-08.42.34:129][ 0]CrashReportClientLog: Initial state = Unknown UploadState value [2019.01.07-08.42.34:130][ 0]LogCrashDebugHelper: DepotName: //UE4/Release-4.19 [2019.01.07-08.42.34:130][ 0]LogCrashDebugHelper: BuiltFromCL: 0 [2019.01.07-08.42.34:130][ 0]LogCrashDebugHelper: EngineVersion: 4.19.2-0+++UE4+Release-4.19 [2019.01.07-08.42.34:130][ 0]LogCrashDebugHelper: BuildVersion: ++UE4+Release-4.19-CL-0 [2019.01.07-08.42.34:130][ 0]LogCrashDebugHelper: Warning: CrashDebugHelperConfig invalid [2019.01.07-08.42.34:130][ 0]LogCrashDebugHelper: Warning: PDB Cache disabled [2019.01.07-08.42.35:100][ 0]CrashReportClientLog: Got 5 pending files to upload from 'crashinfo-CarlaUE4-pid-6648-00035CB622011007002A003B7448A7A5' [2019.01.07-08.42.35:100][ 0]CrashReportClientLog: State change from Ready to SendingFiles [2019.01.07-08.42.35:100][ 0]CrashReportClientLog: CompressAndSendData have 5 pending files [2019.01.07-08.42.35:100][ 0]CrashReportClientLog: CompressAndSendData compressing 4643 bytes ('/home/tanglianrui/roadstar/0.9.1-10-fast-two-maps/LinuxNoEditor/CarlaUE4/Saved/Crashes/crashinfo-CarlaUE4-pid-6648-00035CB622011007002A003B7448A7A5/Diagnostics.txt') [2019.01.07-08.42.35:100][ 0]CrashReportClientLog: CompressAndSendData compressing 3436 bytes ('/home/tanglianrui/roadstar/0.9.1-10-fast-two-maps/LinuxNoEditor/CarlaUE4/Saved/Crashes/crashinfo-CarlaUE4-pid-6648-00035CB622011007002A003B7448A7A5/CrashContext.runtime-xml') [2019.01.07-08.42.35:100][ 0]CrashReportClientLog: CompressAndSendData compressing 4 bytes ('/home/tanglianrui/roadstar/0.9.1-10-fast-two-maps/LinuxNoEditor/CarlaUE4/Saved/Crashes/crashinfo-CarlaUE4-pid-6648-00035CB622011007002A003B7448A7A5/minidump.dmp') [2019.01.07-08.42.35:100][ 0]CrashReportClientLog: CompressAndSendData compressing 108 bytes ('/home/tanglianrui/roadstar/0.9.1-10-fast-two-maps/LinuxNoEditor/CarlaUE4/Saved/Crashes/crashinfo-CarlaUE4-pid-6648-00035CB622011007002A003B7448A7A5/CrashReportClient.ini') [2019.01.07-08.42.35:101][ 0]CrashReportClientLog: CompressAndSendData compressing 14008 bytes ('/home/tanglianrui/roadstar/0.9.1-10-fast-two-maps/LinuxNoEditor/CarlaUE4/Saved/Crashes/crashinfo-CarlaUE4-pid-6648-00035CB622011007002A003B7448A7A5/CarlaUE4.log') [2019.01.07-08.42.35:104][ 0]LogFileManager: Warning: ReadFile failed: Count=0 Length=4096 Error=errno=21 (Is a directory) for file [2019.01.07-08.42.35:107][ 0]LogInit: Using libcurl 7.57.0 [2019.01.07-08.42.35:107][ 0]LogInit: - built for x86_64-pc-linux-gnu [2019.01.07-08.42.35:107][ 0]LogInit: - supports SSL with OpenSSL/1.0.2h [2019.01.07-08.42.35:107][ 0]LogInit: - supports HTTP deflate (compression) using libz 1.2.8 [2019.01.07-08.42.35:107][ 0]LogInit: - other features: [2019.01.07-08.42.35:107][ 0]LogInit: CURL_VERSION_SSL [2019.01.07-08.42.35:107][ 0]LogInit: CURL_VERSION_LIBZ [2019.01.07-08.42.35:107][ 0]LogInit: CURL_VERSION_IPV6 [2019.01.07-08.42.35:107][ 0]LogInit: CURL_VERSION_ASYNCHDNS [2019.01.07-08.42.35:107][ 0]LogInit: CURL_VERSION_LARGEFILE [2019.01.07-08.42.35:107][ 0]LogInit: CURL_VERSION_TLSAUTH_SRP [2019.01.07-08.42.35:107][ 0]LogInit: Libcurl: checking if '/etc/pki/tls/certs/ca-bundle.crt' exists [2019.01.07-08.42.35:107][ 0]LogInit: Libcurl: checking if '/etc/ssl/certs/ca-certificates.crt' exists [2019.01.07-08.42.35:107][ 0]LogInit: CurlRequestOptions (configurable via config and command line): [2019.01.07-08.42.35:107][ 0]LogInit: - bVerifyPeer = true - Libcurl will verify peer certificate [2019.01.07-08.42.35:107][ 0]LogInit: - bUseHttpProxy = false - Libcurl will NOT use HTTP proxy [2019.01.07-08.42.35:108][ 0]LogInit: - bDontReuseConnections = false - Libcurl will reuse connections [2019.01.07-08.42.35:108][ 0]LogInit: - CertBundlePath = /etc/ssl/certs/ca-certificates.crt - Libcurl will set CURLOPT_CAINFO to it [2019.01.07-08.42.35:108][ 0]LogInit: - MaxHostConnections = 16 - Libcurl will limit the number of connections to a host [2019.01.07-08.42.35:108][ 0]LogInit: - LocalHostAddr = Default [2019.01.07-08.42.35:108][ 0]CrashReportClientLog: Sending HTTP request: https://datarouter.ol.epicgames.com/datarouter/api/v1/public/data?AppID=CrashReporter&AppVersion=4.19.2-0%2B%2B%2BUE4%2BRelease-4.19&AppEnvironment=Release&UploadType=crashreports&UserID=0002a8b825010d07003b03112d9280bf%7C%7C [2019.01.07-08.42.36:570][ 0]CrashReportClientLog: OnProcessRequestComplete(), State=SendingFiles bSucceeded=1 [2019.01.07-08.42.36:570][ 0]CrashReportClientLog: State change from SendingFiles to SendingFiles [2019.01.07-08.42.36:570][ 0]CrashReportClientLog: All uploads done [2019.01.07-08.42.36:570][ 0]CrashReportClientLog: State change from SendingFiles to Finished [2019.01.07-08.42.37:105][ 0]LogLinux: FLinuxPlatformMisc::RequestExit(0) [2019.01.07-08.42.37:105][ 0]LogGenericPlatformMisc: FPlatformMisc::RequestExit(0) [2019.01.07-08.42.37:138][ 0]CrashReportClientLog: Final state (Receiver) = Finished [2019.01.07-08.42.37:138][ 0]CrashReportClientLog: Final state (Receiver) = Unknown UploadState value [2019.01.07-08.42.37:138][ 0]LogExit: Preparing to exit. [2019.01.07-08.42.37:139][ 0]LogExit: Object subsystem successfully closed. [2019.01.07-08.42.37:141][ 0]LogModuleManager: Shutting down and abandoning module HTTP (10) [2019.01.07-08.42.37:159][ 0]LogModuleManager: Shutting down and abandoning module SSL (9) [2019.01.07-08.42.37:159][ 0]LogModuleManager: Shutting down and abandoning module CrashDebugHelper (6) [2019.01.07-08.42.37:159][ 0]LogModuleManager: Shutting down and abandoning module CoreUObject (4) [2019.01.07-08.42.37:159][ 0]LogModuleManager: Shutting down and abandoning module SandboxFile (2) [2019.01.07-08.42.37:160][ 0]LogExit: Exiting. Engine crash handling finished; re-raising signal 11 for the default handler. Good bye. Segmentation fault

pziecina commented 5 years ago

Error Linux_PlatformCreateDummyGLWindow is often related with inproper run on headless machines.

Your start command ($DISPLAY= ./CarlaUE4.sh) seems to not follow documentation.

tanglrHello commented 5 years ago

@pawel-ziecina Thank you for your reply! In fact I was following the documentation here: https://carla.readthedocs.io/en/latest/configuring_the_simulation/#running-off-screen

Is there a big difference between the two methods? To be honest, I was a little confused when I saw the two different instructions. But as the one I posted seems to be simpler for me to achieve my purpose, I followed it without manually installing anything mentioned in https://carla.readthedocs.io/en/latest/carla_headless/

By the way, I'd like to know whether headless exactly means running without display? Or headless is something more than that?

Besides, I have a local ubuntu 16.04 desktop, and the carla server can be run successfully with $DISPLAY= ./CarlaUE4.sh. And I didn't install the packages on this machine manually. And I have a remote server which is also of ubuntu 16.04, but I can't start carla in it in this way. The error looks like the same as in a ubuntu 14.04 server. With uname -a, both of them show "Linux local 4.15.0-43-generic # 46~16.04.1-Ubuntu SMP Fri Dec 7 13:31:08 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux".

pziecina commented 5 years ago

Ah - you are right, just checked this on 16.04 and your method worked.

I've observed same error (with opengl initialization) while trying to run carla in docker on GKE, so thought that could be the same issue. Cause of my problems was lack of nvidia egl dynamic library in LD_LIBRARY_PATH. You can check it with:

I understand headless workstation as computer without X server. But not sure if my understanding is correct :)

tanglrHello commented 5 years ago

@pawel-ziecina Maybe this is the problem for me ^_^ The server which I can't run carla on seems not to have a valid egl. There is even not /usr/share/glvnd directory. And I checked my local machine, it has the directory for egl.

And with ldconfig, I got the following infomation on the wrong machine:

/sbin/ldconfig.real: Path /lib/x86_64-linux-gnu' given more than once /sbin/ldconfig.real: Path/usr/lib/x86_64-linux-gnu' given more than once /sbin/ldconfig.real: /lib/x86_64-linux-gnu/ld-2.23.so is the dynamic linker, ignoring

/sbin/ldconfig.real: Cannot stat /usr/lib/x86_64-linux-gnu/libxlutil.so: No such file or directory libwayland-egl.so.1 -> libwayland-egl.so.1.0.0 libQt5EglDeviceIntegration.so.5 -> libQt5EglDeviceIntegration.so.5.5.1 libhybris-eglplatformcommon.so.1 -> libhybris-eglplatformcommon.so.1.0.0 /sbin/ldconfig.real: /lib32/ld-2.23.so is the dynamic linker, ignoring

/usr/lib/x86_64-linux-gnu/mesa-egl: libEGL.so.1 -> libEGL.so.1.0.0 /sbin/ldconfig.real: Cannot stat /usr/lib/libopen-rte.so: No such file or directory /sbin/ldconfig.real: Cannot stat /usr/lib/liboshmem.so: No such file or directory /sbin/ldconfig.real: Cannot stat /usr/lib/libmca_common_sm.so: No such file or directory /sbin/ldconfig.real: Cannot stat /usr/lib/libopen-pal.so: No such file or directory /sbin/ldconfig.real: Can't create temporary cache file /etc/ld.so.cache~: Permission denied

But with command 'locate', I find some egl related .so files somewhere else: /usr/lib/x86_64-linux-gnu/libhybris-egl/libEGL.so.1 /usr/lib/x86_64-linux-gnu/libhybris-egl/libEGL.so.1.0.0 /usr/lib/x86_64-linux-gnu/mesa-egl/libEGL.so.1 /usr/lib/x86_64-linux-gnu/mesa-egl/libEGL.so.1.0.0 /var/lib/nvidia-docker/volumes/nvidia_driver/390.59/lib64/libEGL.so.1 /var/lib/nvidia-docker/volumes/nvidia_driver/390.59/lib64/libEGL.so.1.1.0 /var/lib/nvidia-docker/volumes/nvidia_driver/390.59/lib64/libEGL_nvidia.so.0 /var/lib/nvidia-docker/volumes/nvidia_driver/390.59/lib64/libEGL_nvidia.so.390.59

So should I add add the path in last line into LD_LIBRARY_PATH? Or add the installation for egl into Dockerfile? Or install everything mentioned in https://carla.readthedocs.io/en/latest/carla_headless/ into the docker image? How did you solve it? Hope for some shortcut to the solution :)

pziecina commented 5 years ago

Switching to newer drivers might help - not sure if using those from /var/lib/nvidia-docker is good idea. I think EGL was added in some version of nvidia drivers - not sure which.

In my case I've added required libraries to LD_LIBRARY_PATH with:

sudo echo /usr/local/nvidia/lib64 >> /etc/ld.so.conf.d/glvnd.conf
sudo ldconfig
tanglrHello commented 5 years ago

The nvidia driver is newer on the server than that on my local system. The driver version for local system is 384.130, and for the server is 390.59. But I can't find libEGL.so.390.59 on the server. It seems the nvidia driver was installed in some unusual way. Thank you so much anyway for your patient help :) @pawel-ziecina

tanglrHello commented 5 years ago

I switched to a different headless server, on which I can run CarlaUE4 without signal 11 caught. Maybe the problem is about the driver installation but I'm not sure. The only difference I found between this headless server and the one I used before is that, on this server there is a /usr/lib/nvidia-xxx directory storing the related dynamic librarys, but on the the other server there is no such directory(only /var/lib/nvidia_docker/...). By the way, this headless server is of ubuntu 16.04, not sure about the result on ubuntu14.04.

I came across several other problems and just record it here in case it would be helpful for someone. 1. Stuck when initializing carla Though the segment fault disappeared, the CarlaUE4 seems to stuck after Initializing movie player. The next log is expected to be: [2019.01.11-03.06.14:787][ 0]LogUObjectArray: 32687 objects as part of root set at end of initial load. [2019.01.11-03.06.14:787][ 0]LogUObjectAllocator: 5984496 out of 0 bytes used by permanent object pool. [2019.01.11-03.06.14:787][ 0]LogUObjectArray: CloseDisregardForGC: 0/0 objects in disregard for GC pool [2019.01.11-03.06.14:787][ 0]LogEngine: Initializing Engine... But it just got stuck. The graphic card on the headless server is Geforce gtx 1080Ti and driver version is 396.44. Till now the carla server has not been set up successfully and can't see port 2000 be occupied by CarlaUE4. With nvidia-smi, I can see CarlaUE4 is running with GPU0.

I installed VNC as documented.. Later I read the document again and found an important hint for installing VNC: WARNING: Take care on which VNC you install as it may not be compatible with Unreal. The one above was the only one that worked for me. The vnc version I used was the newest 2.2.1. I uninstalled it with 'dpkg -r' and reinstall a 2.1.1 version. Kill the old process for vnc and restart a new vncserver with "/opt/TurboVNC/bin/vncserver :8". Then run CarlaUE4.sh again and it can be setup successfully.

But later I found that carla server can be started successfully even without vgl and vnc installed. And the pure command "./CarlaUE4.sh" can start it without error.

2. port is listening but not available for a remote client Remember to allow the carla port if firewall is on if you want to connect to it from a remote client.

3. Black client window without camera image Using manual_control.py to connect to the carla server, I got a black picture in pygame, seems nothing rendered on the server.

Then I run the official docker image on the headless server: docker run --runtime=nvidia -p 2000-2002:2000-2002 -e NVIDIA_VISIBLE_DEVICES=0 -e DISPLAY=unix$DISPLAY -i -d carlasim/carla:0.9.1 /bin/bash Then manual_control.py can show the image normally.

I also tried my own image built with the default Dockerfile in carla project. Clients can also show images as expected. So maybe there is still something not properly installed on the headless server.

stale[bot] commented 5 years ago

This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.