Internal compiler error with Unity 3

I’ve come across the following error frequently with one of my Unity projects after upgrading to Unity 3. There does not seem to be any pattern to it; it seems to happen with both an upgraded project and a new one. It also does not appear to be dependent on any specific code, as I’ve tried removing various types of scripts to try to get it to go reliably. The interesting part is that it may or may not happen on the same project - without modification. I can open it up, get the error, close it, and then open it again and it’s fine. Then I can modify a script and get it again, and sometimes not.

Internal compiler error. See the console log for more information. output was:BCE0011: An error 
occurred during the execution of the step 'Boo.Lang.Compiler.Steps.SaveAssembly': 'Sharing violation 
on path /Volumes/NO NAME/Projects/TestProject/Temp/f64498b28f64e47a98112184d11d0b0b.dll'.

The only thing I can think of is that it might be that the project is stored on a USB key, but I’ve always done that with Unity 2 without any problems. I’ll test that later when I have a chance, but I thought I should mention it either way.

I thought I should report it as a bug, but as I’ve never run across an obvious bug before, I don’t know where the bug reporting mechanism is.

Edit0: I should mention that even though it references Boo, I’m not using Boo. I’m using Mono. Also, does anyone know of a way to force Unity to recompile without restarting Unity? That may be a workaround.

Edit1: Just ran across something new on this. I created a new mono script, and immediately got the error. Then, I decided I didn’t need the script, so I deleted it, and the error went away. Not sure if this helps with finding the problem, but you never know.

Edit2: I looked up the console log, and got this:

(Filename:  Line: 0)

Updating assets/scripts/testscript.cs - GUID: f3151903eef5b4c36b95f4bed756bb0a...
Calculating changed assemblies
+++ Ignoring Assembly-CSharp.dll because it depends on Assembly-UnityScript-firstpass.dll
End Calculating changed assemblies
 done: hash - 379a390a763e1d43432ecb3907fefae5
Updating  - GUID: 00000000000000000000000000000000...
Updating assets/main.unity - GUID: 662df3cdbd9464960bf2bd01f6878818...
 done: hash - 01e4cf2c3e6e9339c52a34cdd2433e58
Updating  - GUID: 00000000000000000000000000000000...
Cleanup mono
Error: Can't assign requested address

Just in case that helps.


Update: I’ve found that this does not happen with MonoDevelop (only with Unitron). I like Unitron, but I’ve found that I like MonoDev better, so that’s what I’m going to stick with. It might not be a bad idea to look into why this is happening, but it’s no longer a pressing issue for me.

I just got this error today too, but it didnt seem to do anything with scripts for me. I also had my project on a flash drive. I transfered it to my laptop, and hope to learn the results.

Quick update seconds later:
It was indeed because it was on the usb. I still kept the temp files too, but they don’t seem to affect anything.

Good luck with this, once you see this error your project and your Unity installation is toast