CodexLabsLLC / Colosseum

Open source simulator for autonomous robotics built on Unreal Engine with support for Unity
https://codexlabsllc.github.io/Colosseum/
Other
335 stars 105 forks source link

Unable to run AirSim binaries on Ubuntu 20.04 #77

Closed crose72 closed 5 days ago

crose72 commented 5 months ago

Bug report

What's the issue you encountered?

I followed the instructions at https://ardupilot.org/dev/docs/sitl-with-airsim.html#sitl-with-airsim-copter-sitl to setup AirSim. Initially I'm just trying to use the binaries found here https://github.com/microsoft/AirSim/releases. I'm using the AirSimNH v1.8.1 Linux binary. I downloaded and unzipped the folder and ran AirSimNH.sh and then I get a segmentation fault crash and I see a bunch of red error messages on the command line terminal. For the record I can compile and run AirSim/Colosseum on windows 10/11, and run the binaries as well, so I'm not sure why this isn't working. I also receive the same error with other pre compiled binaries. How do I resolve this? I even tried with Ubuntu 22.04 and got the same exact error, so I downgraded to try again.

Settings

{
  "SeeDocsAt": "https://github.com/Microsoft/AirSim/blob/main/docs/settings.md",
  "SettingsVersion": 1.2,
  "LogMessagesVisible": true,
  "SimMode": "Multirotor",
  "OriginGeopoint": {
    "Latitude": -35.363261,
    "Longitude": 149.165230,
    "Altitude": 583
  },
  "Vehicles": {
    "Copter": {
      "VehicleType": "ArduCopter",
      "UseSerial": false,
      "LocalHostIp": "127.0.0.1",
      "UdpIp": "127.0.0.1",
      "UdpPort": 9003,
      "ControlPort": 9002
    }
  }
}

How can the issue be reproduced?

  1. Download AirSimNH v1.81 Linux airsim binary from https://github.com/microsoft/AirSim/releases
  2. Unzip the folder
  3. cd AirSimNH/LinuxNoEditor
  4. ./AirSimNH.sh

Include full error message in text form

[2024.03.22-22.18.19:511][  0]LogOutputDevice: Error: === Handled ensure: ===
[2024.03.22-22.18.19:511][  0]LogOutputDevice: Error: 
[2024.03.22-22.18.19:511][  0]LogOutputDevice: Error: Ensure condition failed: (ImageCreateInfo.usage & VK_IMAGE_USAGE_SAMPLED_BIT) == 0 [File:/datadrive/ue_427/Engine/Source/Runtime/VulkanRHI/Private/VulkanTexture.cpp] [Line: 427]
[2024.03.22-22.18.19:511][  0]LogOutputDevice: Error: 
[2024.03.22-22.18.19:511][  0]LogOutputDevice: Error: Stack: 
[2024.03.22-22.18.19:511][  0]LogOutputDevice: Error: [Callstack] 0x00000000068af47b AirSimNH!FVulkanSurface::GenerateImageCreateInfo(FVulkanSurface::FImageCreateInfo&, FVulkanDevice&, VkImageViewType, EPixelFormat, unsigned int, unsigned int, unsigned int, unsigned int, unsigned int, unsigned int, ETextureCreateFlags, VkFormat*, VkFormat*, bool) [/datadrive/ue_427/Engine/Source/Runtime/VulkanRHI/Private/VulkanTexture.cpp:427]
[2024.03.22-22.18.19:511][  0]LogOutputDevice: Error: [Callstack] 0x00000000068b6ca5 AirSimNH!FindOrCalculateTexturePlatformSize(FVulkanDevice*, VkImageViewType, unsigned int, unsigned int, unsigned int, unsigned char, unsigned int, unsigned int, ETextureCreateFlags) [/datadrive/ue_427/Engine/Source/Runtime/VulkanRHI/Private/VulkanTexture.cpp:2605]
[2024.03.22-22.18.19:511][  0]LogOutputDevice: Error: [Callstack] 0x00000000068b6adb AirSimNH!FVulkanDynamicRHI::RHICalcTexture2DPlatformSize(unsigned int, unsigned int, unsigned char, unsigned int, unsigned int, ETextureCreateFlags, FRHIResourceCreateInfo const&, unsigned int&) [/datadrive/ue_427/Engine/Source/Runtime/VulkanRHI/Private/VulkanTexture.cpp:2626]
[2024.03.22-22.18.19:511][  0]LogOutputDevice: Error: [Callstack] 0x0000000007e22a9b AirSimNH!FTexture2DResource::CalcRequestedMipsSize() [/datadrive/ue_427/Engine/Source/Runtime/Engine/Private/Rendering/Texture2DResource.cpp:164]
[2024.03.22-22.18.19:511][  0]LogOutputDevice: Error: [Callstack] 0x0000000007e1d07e AirSimNH!FStreamableTextureResource::InitRHI() [/datadrive/ue_427/Engine/Source/Runtime/Engine/Private/Rendering/StreamableTextureResource.cpp:158]
[2024.03.22-22.18.19:511][  0]LogOutputDevice: Error: [Callstack] 0x0000000006ab2253 AirSimNH!FRenderResource::InitResource() [/datadrive/ue_427/Engine/Source/Runtime/RenderCore/Private/RenderResource.cpp:112]
[2024.03.22-22.18.19:511][  0]LogOutputDevice: Error: [Callstack] 0x00000000080ae243 AirSimNH!UTexture::UpdateResource() [/datadrive/ue_427/Engine/Source/Runtime/Engine/Private/Texture.cpp:212]
[2024.03.22-22.18.19:511][  0]LogOutputDevice: Error: [Callstack] 0x00000000080b07bb AirSimNH!UTexture2D::UpdateResource() [/datadrive/ue_427/Engine/Source/Runtime/Engine/Private/Texture2D.cpp:440]
[2024.03.22-22.18.19:511][  0]LogOutputDevice: Error: [Callstack] 0x000000000481a2b9 AirSimNH!UObject::ConditionalPostLoad() [/datadrive/ue_427/Engine/Source/Runtime/CoreUObject/Private/UObject/Obj.cpp:1092]
[2024.03.22-22.18.19:511][  0]LogOutputDevice: Error: [Callstack] 0x00000000046b343d AirSimNH!FAsyncPackage::PostLoadObjects() [/datadrive/ue_427/Engine/Source/Runtime/CoreUObject/Private/Serialization/AsyncLoading.cpp:6424]
[2024.03.22-22.18.19:511][  0]LogOutputDevice: Error: [Callstack] 0x00000000046a3847 AirSimNH!FAsyncPackage::TickAsyncPackage(bool, bool, float&, FFlushTree*) [/datadrive/ue_427/Engine/Source/Runtime/CoreUObject/Private/Serialization/AsyncLoading.cpp:5590]
[2024.03.22-22.18.19:511][  0]LogOutputDevice: Error: [Callstack] 0x00000000046a1c6d AirSimNH!FAsyncLoadingThread::ProcessAsyncLoading(int&, bool, bool, float, FFlushTree*) [/datadrive/ue_427/Engine/Source/Runtime/CoreUObject/Private/Serialization/AsyncLoading.cpp:4098]
[2024.03.22-22.18.19:511][  0]LogOutputDevice: Error: [Callstack] 0x00000000046a9be6 AirSimNH!FAsyncLoadingThread::TickAsyncThread(bool, bool, float, bool&, FFlushTree*) [/datadrive/ue_427/Engine/Source/Runtime/CoreUObject/Private/Serialization/AsyncLoading.cpp:4856]
[2024.03.22-22.18.19:511][  0]LogOutputDevice: Error: [Callstack] 0x00000000046a9175 AirSimNH!FAsyncLoadingThread::TickAsyncLoading(bool, bool, float, FFlushTree*) [/datadrive/ue_427/Engine/Source/Runtime/CoreUObject/Private/Serialization/AsyncLoading.cpp:4556]
[2024.03.22-22.18.19:511][  0]LogOutputDevice: Error: [Callstack] 0x00000000046b8341 AirSimNH!FAsyncLoadingThread::FlushLoading(int) [/datadrive/ue_427/Engine/Source/Runtime/CoreUObject/Private/Serialization/AsyncLoading.cpp:7022]
[2024.03.22-22.18.19:511][  0]LogOutputDevice: Error: [Callstack] 0x000000000470591a AirSimNH!FlushAsyncLoading(int) [/datadrive/ue_427/Engine/Source/Runtime/CoreUObject/Private/Serialization/AsyncPackageLoader.cpp:643]
[2024.03.22-22.18.19:511][  0]LogOutputDevice: Error: [Callstack] 0x00000000048d70da AirSimNH!LoadPackageInternal(UPackage*, char16_t const*, unsigned int, FLinkerLoad*, FArchive*, FLinkerInstancingContext const*) [/datadrive/ue_427/Engine/Source/Runtime/CoreUObject/Private/UObject/UObjectGlobals.cpp:1144]
[2024.03.22-22.18.19:511][  0]LogOutputDevice: Error: [Callstack] 0x00000000048d503d AirSimNH!LoadPackage(UPackage*, char16_t const*, unsigned int, FArchive*, FLinkerInstancingContext const*) [/datadrive/ue_427/Engine/Source/Runtime/CoreUObject/Private/UObject/UObjectGlobals.cpp:1469]
[2024.03.22-22.18.19:511][  0]LogOutputDevice: Error: [Callstack] 0x00000000048d2f91 AirSimNH!ResolveName(UObject*&, FString&, bool, bool, unsigned int, FLinkerInstancingContext const*) [/datadrive/ue_427/Engine/Source/Runtime/CoreUObject/Private/UObject/UObjectGlobals.cpp:791]
[2024.03.22-22.18.19:511][  0]LogOutputDevice: Error: [Callstack] 0x00000000048d5436 AirSimNH!StaticLoadObjectInternal(UClass*, UObject*, char16_t const*, char16_t const*, unsigned int, UPackageMap*, bool, FLinkerInstancingContext const*) [/datadrive/ue_427/Engine/Source/Runtime/CoreUObject/Private/UObject/UObjectGlobals.cpp:852]
[2024.03.22-22.18.19:511][  0]LogOutputDevice: Error: [Callstack] 0x00000000048bbdeb AirSimNH!StaticLoadObject(UClass*, UObject*, char16_t const*, char16_t const*, unsigned int, UPackageMap*, bool, FLinkerInstancingContext const*) [/datadrive/ue_427/Engine/Source/Runtime/CoreUObject/Private/UObject/UObjectGlobals.cpp:928]
[2024.03.22-22.18.19:511][  0]LogOutputDevice: Error: [Callstack] 0x00000000048d5e1c AirSimNH!StaticLoadClass(UClass*, UObject*, char16_t const*, char16_t const*, unsigned int, UPackageMap*) [/datadrive/ue_427/Engine/Source/Runtime/CoreUObject/Private/UObject/UObjectGlobals.cpp:961]
[2024.03.22-22.18.19:511][  0]LogOutputDevice: Error: [Callstack] 0x00000000033ce9d8 AirSimNH!ConstructorHelpersInternal::FindOrLoadClass(FString&, UClass*) [/datadrive/ue_427/Engine/Source/Runtime/CoreUObject/Public/UObject/ConstructorHelpers.h:87]
[2024.03.22-22.18.19:511][  0]LogOutputDevice: Error: [Callstack] 0x0000000003325c25 AirSimNH!ConstructorHelpers::FClassFinder<AActor>::FClassFinder(char16_t const*) [/datadrive/ue_427/Engine/Source/Runtime/CoreUObject/Public/UObject/ConstructorHelpers.h:188]
[2024.03.22-22.18.19:511][  0]LogOutputDevice: Error: [Callstack] 0x000000000332526c AirSimNH!ASimModeBase::ASimModeBase() [/datadrive/UnrealEnvironments/AirSimEnvNH/Plugins/AirSim/Source/SimMode/SimModeBase.cpp:57]
[2024.03.22-22.18.19:511][  0]LogOutputDevice: Error: [Callstack] 0x00000000047251a2 AirSimNH!UClass::CreateDefaultObject() [/datadrive/ue_427/Engine/Source/Runtime/CoreUObject/Private/UObject/Class.cpp:3791]
[2024.03.22-22.18.19:511][  0]LogOutputDevice: Error: [Callstack] 0x00000000048c583d AirSimNH!ProcessNewlyLoadedUObjects(FName, bool) [/datadrive/ue_427/Engine/Source/Runtime/CoreUObject/Private/UObject/UObjectBase.cpp:1002]
[2024.03.22-22.18.19:512][  0]LogOutputDevice: Error: [Callstack] 0x00000000032e1b73 AirSimNH!FEngineLoop::PreInitPostStartupScreen(char16_t const*) [/datadrive/ue_427/Engine/Source/Runtime/Launch/Private/LaunchEngineLoop.cpp:3078]
[2024.03.22-22.18.19:512][  0]LogOutputDevice: Error: [Callstack] 0x00000000032d76ca AirSimNH!GuardedMain(char16_t const*) [/datadrive/ue_427/Engine/Source/Runtime/Launch/Private/Launch.cpp:132]
[2024.03.22-22.18.19:512][  0]LogOutputDevice: Error: [Callstack] 0x0000000008aebfd9 AirSimNH!CommonUnixMain(int, char**, int (*)(char16_t const*), void (*)()) [/datadrive/ue_427/Engine/Source/Runtime/Unix/UnixCommonStartup/Private/UnixCommonStartup.cpp:264]
[2024.03.22-22.18.19:512][  0]LogOutputDevice: Error: [Callstack] 0x00007f598fa61083 libc.so.6!__libc_start_main(+0xf2)
[2024.03.22-22.18.19:512][  0]LogOutputDevice: Error: [Callstack] 0x00000000032c84a9 AirSimNH!_start()
[2024.03.22-22.18.19:512][  0]LogOutputDevice: Error: 

and then at the bottom

Malloc Size=65538 LargeMemoryPoolOffset=65554 
CommonUnixCrashHandler: Signal=11
[2024.03.22-22.18.38:184][  0]LogCore: === Critical error: ===
Unhandled Exception: SIGSEGV: invalid attempt to write memory at address 0x0000000000000003

[2024.03.22-22.18.38:184][  0]LogCore: Assertion failed: bSuccess [File:/datadrive/ue_427/Engine/Source/Runtime/VulkanRHI/Private/VulkanCommandBuffer.cpp] [Line: 474] 

0x00000000041c71ce AirSimNH!FGenericPlatformMisc::RaiseException(unsigned int) [/datadrive/ue_427/Engine/Source/Runtime/Core/Private/GenericPlatform/GenericPlatformMisc.cpp:472]
0x000000000438ed4b AirSimNH!FOutputDevice::LogfImpl(char16_t const*, ...) [/datadrive/ue_427/Engine/Source/Runtime/Core/Private/Misc/OutputDevice.cpp:61]
0x00000000043371f4 AirSimNH!AssertFailedImplV(char const*, char const*, int, char16_t const*, __va_list_tag*) [/datadrive/ue_427/Engine/Source/Runtime/Core/Private/Misc/AssertionMacros.cpp:104]
0x000000000433709b AirSimNH!FDebug::CheckVerifyFailedImpl(char const*, char const*, int, char16_t const*, ...) [/datadrive/ue_427/Engine/Source/Runtime/Core/Private/Misc/AssertionMacros.cpp:458]
0x0000000006820d77 AirSimNH!FVulkanCommandBufferManager::WaitForCmdBuffer(FVulkanCmdBuffer*, float) [/datadrive/ue_427/Engine/Source/Runtime/VulkanRHI/Private/VulkanCommandBuffer.cpp:474]
0x000000000687c6d8 AirSimNH!FVulkanDynamicRHI::RHIGetRenderQueryResult(FRHIRenderQuery*, unsigned long long&, bool, unsigned int) [/datadrive/ue_427/Engine/Source/Runtime/VulkanRHI/Private/VulkanQuery.cpp:524]
0x0000000006a44a3f AirSimNH!MeasureLongGPUTaskExecutionTime(FRHICommandListImmediate&) [/datadrive/ue_427/Engine/Source/Runtime/RenderCore/Private/LongGPUTask.cpp:89]
0x00000000032f2c0d AirSimNH!TEnqueueUniqueRenderCommandType<FEngineLoop::Tick()::MeasureLongGPUTaskExecutionTimeCmdName, FEngineLoop::Tick()::$_69>::DoTask(ENamedThreads::Type, TRefCountPtr<FGraphEvent> const&) [/datadrive/ue_427/Engine/Source/Runtime/RenderCore/Public/RenderingThread.h:183]
0x00000000032f2f02 AirSimNH!TGraphTask<TEnqueueUniqueRenderCommandType<FEngineLoop::Tick()::MeasureLongGPUTaskExecutionTimeCmdName, FEngineLoop::Tick()::$_69> >::ExecuteTask(TArray<FBaseGraphTask*, TSizedDefaultAllocator<32> >&, ENamedThreads::Type) [/datadrive/ue_427/Engine/Source/Runtime/Core/Public/Async/TaskGraphInterfaces.h:886]
0x000000000418dc7b AirSimNH!FNamedTaskThread::ProcessTasksNamedThread(int, bool) [/datadrive/ue_427/Engine/Source/Runtime/Core/Private/Async/TaskGraph.cpp:710]
0x000000000418c7ce AirSimNH!FNamedTaskThread::ProcessTasksUntilQuit(int) [/datadrive/ue_427/Engine/Source/Runtime/Core/Private/Async/TaskGraph.cpp:601]
0x0000000006a7527f AirSimNH!RenderingThreadMain(FEvent*) [/datadrive/ue_427/Engine/Source/Runtime/RenderCore/Private/RenderingThread.cpp:372]
0x0000000006a83372 AirSimNH!FRenderingThread::Run() [/datadrive/ue_427/Engine/Source/Runtime/RenderCore/Private/RenderingThread.cpp:526]
0x0000000004246b17 AirSimNH!FRunnableThreadPThread::Run() [/datadrive/ue_427/Engine/Source/Runtime/Core/Private/HAL/PThreadRunnableThread.cpp:25]
0x000000000420ab8c AirSimNH!FRunnableThreadPThread::_ThreadProc(void*) [/datadrive/ue_427/Engine/Source/Runtime/Core/Private/HAL/PThreadRunnableThread.h:185]
0x00007f5990501609 libpthread.so.0!UnknownFunction(0x8608)
0x00007f598fb5c353 libc.so.6!clone(+0x42)

[2024.03.22-22.18.38:196][  0]LogExit: Executing StaticShutdownAfterError
Malloc Size=131160 LargeMemoryPoolOffset=196744 
Malloc Size=131160 LargeMemoryPoolOffset=327928 
Malloc Size=93299 LargeMemoryPoolOffset=421251 
Engine crash handling finished; re-raising signal 11 for the default handler. Good bye.
Segmentation fault (core dumped)

What's better than filing an issue? Filing a pull request :).

xxEoD2242 commented 5 days ago

Those compiled binaries are for UE 4.27, not UE 5. Regular AirSim is not supported anymore unfortunately. Recommend upgrading to 5.