x

Search in
Sort by:

Question Status:

Search help

  • Simple searches use one or more words. Separate the words with spaces (cat dog) to search cat,dog or both. Separate the words with plus signs (cat +dog) to search for items that may contain cat but must contain dog.
  • You can further refine your search on the search results page, where you can search by keywords, author, topic. These can be combined with each other. Examples
    • cat dog --matches anything with cat,dog or both
    • cat +dog --searches for cat +dog where dog is a mandatory term
    • cat -dog -- searches for cat excluding any result containing dog
    • [cats] —will restrict your search to results with topic named "cats"
    • [cats] [dogs] —will restrict your search to results with both topics, "cats", and "dogs"

Crash when using Steam on Mac

I want to use Steam in my project. It works on Windows, but on Mac the application crashes when trying to load Steam after I copy the sdk/redistributable_bin/osx32/libsteam_api.dylib from steamworks_sdk_132.zip to /Users/Shared/UnrealEngine/4.14/Engine/Binaries/Mac/UE4Editor.app/Contents/MacOS:

 TRAP_BRKPT at 0x7fff64b97075
 
 Unknown() Address = 0x12b2db570 (filename not found) [in ???]
 FOnlineSubsystemSteam::Init() Address = 0x12b243dad [/Users/build/Build/++UE4+Release-4.14+Compile/Sync/Engine/Plugins/Online/OnlineSubsystemSteam/Source/Private/OnlineSubsystemSteam.cpp, line 322] [in UE4Editor-OnlineSubsystemSteam.dylib]
 FOnlineFactorySteam::CreateSubsystem(FName) Address = 0x12b281ed9 [/Users/build/Build/++UE4+Release-4.14+Compile/Sync/Engine/Plugins/Online/OnlineSubsystemSteam/Source/Private/OnlineSubsystemModuleSteam.cpp, line 47] [in UE4Editor-OnlineSubsystemSteam.dylib]
 FOnlineSubsystemModule::GetOnlineSubsystem(FName) Address = 0x12b14d648 [/Users/build/Build/++UE4+Release-4.14+Compile/Sync/Engine/Plugins/Online/OnlineSubsystem/Source/Private/OnlineSubsystemModule.cpp, line 234] [in UE4Editor-OnlineSubsystem.dylib]
 FOnlineSubsystemModule::LoadDefaultSubsystem() Address = 0x12b14bac7 [/Users/build/Build/++UE4+Release-4.14+Compile/Sync/Engine/Plugins/Online/OnlineSubsystem/Source/Private/OnlineSubsystemModule.cpp, line 91] [in UE4Editor-OnlineSubsystem.dylib]
 FModuleManager::LoadModuleWithFailureReason(FName, EModuleLoadResult&, bool) Address = 0x10366225b [/Users/build/Build/++UE4+Release-4.14+Compile/Sync/Engine/Source/Runtime/Core/Private/Modules/ModuleManager.cpp, line 485] [in UE4Editor-Core.dylib]
 FModuleDescriptor::LoadModulesForPhase(ELoadingPhase::Type, TArray<FModuleDescriptor, FDefaultAllocator> const&, TMap<FName, EModuleLoadResult, FDefaultSetAllocator, TDefaultMapKeyFuncs<FName, EModuleLoadResult, false> >&) Address = 0x10944d308 [/Users/build/Build/++UE4+Release-4.14+Compile/Sync/Engine/Source/Runtime/Projects/Private/ModuleDescriptor.cpp, line 410] [in UE4Editor-Projects.dylib]
 FPluginManager::LoadModulesForEnabledPlugins(ELoadingPhase::Type) Address = 0x10945c7f7 [/Users/build/Build/++UE4+Release-4.14+Compile/Sync/Engine/Source/Runtime/Projects/Private/PluginManager.cpp, line 592] [in UE4Editor-Projects.dylib]
 FEngineLoop::AppInit() Address = 0x1032a3815 (filename not found) [in UE4Editor]
 FEngineLoop::PreInit(wchar_t const*) Address = 0x103289710 (filename not found) [in UE4Editor]
 GuardedMain(wchar_t const*) Address = 0x10329d8a1 (filename not found) [in UE4Editor]
 -[UE4AppDelegate runGameThread:] Address = 0x1032ab16c (filename not found) [in UE4Editor]
 -[FCocoaGameThread main] Address = 0x1034c5526 [/Users/build/Build/++UE4+Release-4.14+Compile/Sync/Engine/Source/Runtime/Core/Private/Mac/CocoaThread.cpp, line 375] [in UE4Editor-Core.dylib]
 __NSThread__start__ Address = 0x7fff8e93ae64 (filename not found) [in Foundation]
 _pthread_body Address = 0x7fffa011799d (filename not found) [in libsystem_pthread.dylib]
 _pthread_body Address = 0x7fffa011791a (filename not found) [in libsystem_pthread.dylib]
 thread_start Address = 0x7fffa0115351 (filename not found) [in libsystem_pthread.dylib]
Product Version: UE 4.14
Tags:
more ▼

asked Nov 27 '16 at 06:12 PM in Bug Reports

avatar image

dysplaced
105 10 13 19

avatar image Sean L ♦♦ STAFF Dec 01 '16 at 02:47 PM

Hey dysplaced,

Could you run me through the steps you've taken to set up Steam on your end? Did you add all of the proper information to your .ini file?

https://wiki.unrealengine.com/4_13%2B_Network_Guide#Steam

avatar image dysplaced Dec 01 '16 at 06:59 PM

Yes, all the information is present. I doubt that it is a project issue: the same project works fine on Windows, and I have now tried the ShooterGame example with the same result: it crashes when running as standalone with the same error. It happens no matter whether Steam is actually running or not.

So the only step I've taken on the Mac to set up Steam is what I described above, I copied the libsteam_api.dylib

avatar image zorfmorf Dec 02 '16 at 11:41 PM

I have the same problem after copying the dylib file and running my application

avatar image Sean L ♦♦ STAFF Dec 12 '16 at 04:21 PM

Did you guys ensure to have the Online Subsystem Steam plugin enabled in Edit->Plugins?

I haven't been able to reproduce the crash on my end at this time. If you add that information to your .ini, enable the plugin, and make the changes to include OSS if you're using a C++ project as detailed in the above guide, it should work.

Would you guys mind providing your Mac specs? At least the OS version would be great.

avatar image dysplaced Dec 12 '16 at 04:50 PM

The plugin is enabled. I've just tried again with 14.1, but the issue persists. I'm using El Capitan (10.11.6) on a ~1 year old MacBookPro 13 (2.7 GHz i5, 16 GB RAM, Iris 6100), let me know if more detailed specs would be useful.

Neither your replies nor the linked guide mention anything about having to copy a .dylib file. So just to be clear, is it expected that this step is necessary, and is the Steamworks SDK 132 from https://partner.steamgames.com/downloads/list the correct source for that file? I only gathered that I need to copy the file because of a log message if it is not present:

LogOnline:Display: STEAM: Loading Steam SDK 1.32 LogMac:Warning: dlopen failed: dlopen(/Users/Shared/UnrealEngine/4.14/Engine/Binaries/Mac/UE4Editor.app/Contents/MacOS/libsteam_api.dylib, 5): image not found LogOnline:Warning: STEAM: Steam SDK 1.32 libraries not present at or failed to load!

avatar image Sean L ♦♦ STAFF Dec 19 '16 at 04:32 PM

Sorry for the delay.

As far as I understand it, that file is only needed if you plan on using features such as achievements on Steam. What I'd like you to do for now is run through the basic setup process (i.e. adding the necessary information to your .ini file as detailed in the link I posted above and making sure the plugin is enabled). Try this in a clean project and let me know if you still experience the crash.

From there, we can figure out why you're getting issues when you're trying to copy over that file, and I'll continue to test on my end.

avatar image dysplaced Dec 20 '16 at 10:57 PM

Ok, I've created a new project, copied the .ini information and activated the steam plugin. Same result as before: when I don't copy the file, the game starts but but I get the error message I posted above and Steam doesn't work (I don't see myself as playing Spacewar). When I copy the file, I get the same crash.

avatar image Sean L ♦♦ STAFF Dec 22 '16 at 07:18 PM

Are you adding the game on Steam as a non-steam game?

Try navigating to the Steam client, and in the bottom-left of the window you'll see an + Add A Game button and click Add a Non Steam Game.

Then browse and find your .exe to run the game through steam and see if that makes a difference.

On mac, it's important to run the game this way.

(comments are locked)
10|2000 characters needed characters left
Viewable by all users

1 answer: sort voted first

Hi Sean,

thanks for your continued support! I thought that starting the game through Steam is only necessary for the Steam overlay (as stated at https://docs.unrealengine.com/latest/INT/Programming/Online/Steam/index.html#steamoverlayonmac).

I tried packaging the game and adding it as a Non Steam Game, with the same result as before: I did not have a Steam overlay, couldn't see or host sessions, and still had the error message in the logs that the libsteam_api.dylib could not be found, however this time with a path inside the built .app.

After copying the dylib from the Steam SDK to the path inside the .app, however, I did not get a crash and could finally join and host sessions! The Steam overlay still doesn't work but I can live with that for now.

I can create an answer from this and accept it, but I wonder whether this is really the correct (and only) way of getting Steam to work on OS X. In particular, it would be nice to be able to test Steam on Mac without always having to package the game, and to get rid of the manual file copy step.

more ▼

answered Dec 23 '16 at 01:03 PM

avatar image

dysplaced
105 10 13 19

avatar image Sean L ♦♦ STAFF Dec 29 '16 at 06:36 PM

I'm glad to hear that you've gotten it working for the most part now. As for the behavior you're describing, it does sound strange. I'll look into this soon and determine if there is a more efficient way to get this set up and if there is potentially even a bug that is interfering.

Thanks!

(comments are locked)
10|2000 characters needed characters left
Viewable by all users
Your answer
toggle preview:

Up to 5 attachments (including images) can be used with a maximum of 5.2 MB each and 5.2 MB total.

Follow this question

Once you sign in you will be able to subscribe for any updates here

Answers to this question