I have downloaded 2017.2.0f3 to try a colleague’s unity project. When I open simple projects, everything I tried works fine. But with this particular project it crash with a segmentation fault after being a time loading.
Attached is the Editor.log
Running with strace I observe that the last things it does before crashing are
access(“PATHTOPROJECT/Library/unused/e2aa99cbc394241c7b0eb5c625588c16”, F_OK) = -1 ENOENT (No such file or directory)
open(“/usr/share/X11/XKeysymDB”, O_RDONLY) = -1 ENOENT (No such file or directory)
Creating the XKeysymDB file does not help; most likely is a different thing.
I tried deleting the Plugins folder as suggested in Unity 2017.2 Import Issue (Segfault) and the project got loaded. However, there were multitude of errors. One of them being a missing lzip module (since it was in the deleted Plugins folder), so I commented code using it. After that, the segfaults returned. There is no longer a Plugins folder to delete.
Following those steps, more errors appear but there is no segfault.
I am running Gentoo.
However, I have realized that instead of images there are pointers to git lfs. Surely, this is causing some issues. Although it would be nice if unity would detect it and inform of it, it is understandable that it may cause a segfault. It is remarkable that the fault occurred exactly in the moment when all C# scripts were fixed.
I will try to get all the actual files (I am having some git+lfs access problem) and then I will tell if I continue having these problems.
Finally got the remaining files from the lfs. But I still have the same problems as before. The only appreciable differences are
longer import times
and less errors on the console.
In its current state, there is not segfault and it has several C# errors. All of them related to a missing TextMeshProUGUI. I removed its dll, so it makes sense. There is a folder “Assets/3rdparty/TextMesh Pro/Plugins”, to which the dlls belonged. If I return the dlls to their place the segfault returns.
To save you some pain down the line, stay away from LFS. It’s unstable. Git 2.15 is much faster now in general, in magnatude of 10-100 times faster. git reset --hard now takes 2 seconds, before it would take 4-5 minutes to complete on my i5.
I had major issues with LFS and while it sounds like ‘i need this’ it causes real problems when using it. If you need lots of large files, I would recommend investigating stuff which works well with it. Unfortunately, I remained with GIT without LFS for our game. because the binaries don’t really change for our art assets it’s OK.
GitHub make no statements about the stability of LFS but when you look into it and use it in production save yourself the pain.
Now you can do one of two things to avoid problems. Git repo for your unity project then make a git for your art repo.
Git submodules are okay but still don’t really work well when you make changes, but I’ve noticed normal git repo’s inside git repo’s don’t interact too poorly.
You are having the same problems I had, where you checkout your project and LFS breaks in some way. This was a very common occurrence for our team too. I literally got lucky because we had a separate backup to git which runs daily if we had not had the backup we would have lost lots of artwork and changes.
Stop using the unity asset store to download it, as it provides outdated version
so this works well on the linux editor too with fedora so test on your platform and report back here.
Import it and the segfault probably won’t happen, if it does just delete the text mesh pro folder then import.
note: you will have to reconfigure all the text in your game if you delete then reinstall it
I noticed my editor was much more functional after installing that on windows, linux and mac. Speedups of the editor start-up on windows were insane; I’m surprised nobody noticed.
if you’re running windows put the mono compiler in your path variable.
in a terminal you can run
mono --version to make sure it’s installed but make sure to reboot after installing mono.
However it seems I am out of luck. I have tried the version of the Text Mesh Pro in forum and the crash continues to happen. I think it is a “red herring”, since a simple project with that asset works fine. The crash must be because something else that only executes after all C# errors are corrected (hence, when I import the text mesh pro asset, the C# errors disappear, and it crashes). So, what things do run without pressing the play button?
About using lfs. As I said in the original post the project is from a colleague. I will suggest him to stop using lfs, but I do not know if he has some specific reason to use it.
Good to hear about the new mono. Generally I try to avoid utilizing code in alpha stage. And it is not yet in portage, thereby complicating things a bit. In fact, the latest stable mono in portage is yet 4.4.1.0, which is rather old (and the lack of current versions is very weird). My idea was to try first to explore other things, but I gonna try to see why is not yet in portage.
Currently, I do not have a windows machine easily accessible. Once I have one I will also test it.
I found the problem by successively deleting assets. It is on AssetBundleManager. That is used to manage some images. After removing that asset and commenting out a few lines I can load the project without crashing. I can also build the binary without any problems.
Personally, I can live without those images, even if a bit annoying. I have enough to debug and to add features.
If anyone has a solution for the AssetBundleManager it would be nice anyway.
Well, darn. I just checked and it seems the Bug Reporter isn’t being launched for some reason. I’ll get on this as a priority as I think this would be beneficial for everyone involved.