This project is read-only.

Compilation Errors

Mar 23, 2010 at 12:51 PM

Hi There!

Sorry if the solution to this is obvious, but I'm new to C# programming...

I get 10 errors when building the Testbed for the X360, note the Windows test bed was fine as were the libraries.

The errors are actually contradictory, 5 say that the DebugDraw override methods are not required (DrawPolygon etc. 'no suitable method found to override') and the other 5 say the opposite! (DrawPolygon etc. '... does not implement inherited abstract member ...').

Is this a known issue? I've tried several variations of google search and found nothing, which would typically point the finger at my doing something wrong.

I've tried this on 4 different pcs, using both the express and pro versions of VS 2008, and XNA 3.1.

Any (helpful) tips would be appreciated.

AlphaQ

Mar 23, 2010 at 2:19 PM

Ah! Slight update to this, I've just tried again on a Windows 7 machine - new installs of VS2008 Express and XNA 3.1, and everything compiles and deploys just fine.

Looks like a linker issue with Visual Studio 2008 (Pro/Express) under XP and Vista?

This is a slight pain, as my development machine is still Vista based.

Would be nice if anyone else could confirm having this issue before I submit it somewhere as a bug.

AlphaQ

Mar 23, 2010 at 5:29 PM

Sorry for spamming your discussion area, but I thought someone might find the solution helpful.

The frameworks referenced by the 360 build of the Box2D.XNA library were refering to the 3.0.0.0 versions of the frameworks, and not the 3.1.0.0 versions.

Not sure if this is a fault with Visual Studio trying to fill in blanks, or the conversion process from PC to 360?

Deleting the previous framework references and replacing them (Microsoft.Xna.Framwork, mscorlib, System & System.Core) with the correct versions resolved the compilation error.

The references in the 360 test bed were all correct.

An interesting learning experience!

Sorry again for talking to myself on your space!

AlphaQ

Mar 25, 2010 at 7:17 AM

Thanks for posting the solution, others may benfit from having it here.

I only have Win7 machines currently and my check-outs seem to be building fine.  I'd be surprised if it were really a difference between Win7 and other versions of Windows, maybe something to do with having XNA 3.0 on the system or not (when it should be using XNA 3.1)?

Mar 26, 2010 at 10:54 AM

Possibly, XNA 3.0 was uninstalled on a few of the machines prior to installing 3.1, but I'm sure one of them only had 2.0 on previously...

Could you check the versions of the frameworks references in your Windows 7 check-out of the Box2D.XNA project? (Box2D.XNA/References/Microsoft.Xna.Framework/Version property - was 3.0.0.0 before I deleted and replaced the ref with the 3.1.0.0 version). (The test beds both refer to 3.1.0.0)
Would be interesting to see if you're seeing 3.0.0.0, but on Windows 7 but no error is produced.
(I could do this myself next time I'm at the Windows 7 machine I previous tested on).

I've found the XNA conversion from 3.0 to 3.1 doesn't seem to work very well in many cases.

Mar 27, 2010 at 9:59 PM

They are all 3.1.0.0 for me (on Windows 7).

Oct 13, 2010 at 6:21 AM

Just wanted to also say thanks for posting the solution.  I had the same issue trying to build this in Game Studio 3.1 and spent a couple hours on it until finding this post.  I had upgraded from Game Studio 3.0 some time ago, and am running VS2008 and Win7 (although I don't think the OS makes a difference).  The 360 build of Box2D.XNA was referring to the 3.0 versions of Microsoft.Xna.Framework, and was also referring to the PC versions of System and System.Core (as opposed to the 360 versions).   Fixing those references solve the problem. 

Nov 3, 2010 at 10:25 PM

Same problem guys. Thanks to you, I've fixed it in few minutes. Removed Microsoft.Xna.Framwork, mscorlib, System, System.Core from Box2D.XNA(360) and replaced with the correct libraries.

Thanks.