World Wind Forums

Go Back   World Wind Forums > WorldWind .Net Development > Developers' Corner

Developers' Corner General World Wind development.

Reply
 
Thread Tools Display Modes
Old 03-08-2005, 01:05 AM   #1
rnielsen
Junior Member
 
Join Date: Mar 2005
Posts: 2
rnielsen
Post

Here is a guide for getting set up developing WorldWind using only freely downloadable tools (ie no Visual Studio).

First you need to do some downloading (440mb all up). The version numbers shown are the versions I got at the time of writing.
You should be ok just getting the latest version available.

Install WorldWind 1.3 from http://worldwind.arc.nasa.gov/
Install WinCVS 1.3.20.3 from http://www.wincvs.org/
Install .NET Framework SDK 1.1 from http://www.microsoft.com/downloads/details...&displaylang=en
Install DirectX 9.0 SDK Update (February 2005) from http://www.microsoft.com/downloads/details...&displaylang=en
Install Nant 0.85-rc2 from http://nant.sourceforge.net/

Create a directory on your drive where you'd like to develop from (eg C:\wwdev)
Launch WinCVS
Select your directory in the directory pane on the left side
Right Click and choose "Checkout Module..."
Type "WorldWind" in "Module Name and path on the server"
Type "server;username=anonymous;hostname=cvs .sourceforge.net:/cvsroot/nasa-exp" in "CVSROOT"
Click OK. CVS Will now check out the source code for WorldWind in a "WorldWind" directory under your chosen one.
(A window may come up asking for your default directory. Just click OK)
Close WinCVS

Create a file called "default.build" in your WorldWind directory (eg C:\wwdev\WorldWind\default.build) containing the following:
Quote:
<?xml version="1.0"?>
<project name="WorldWind" default="build">
<property name="dotnetdir" value="C:\WINDOWS\Microsoft.NET"/>
<fileset id="assembly">
<include name="${dotnetdir}\Framework\v1.1.4322"/>
<include name="${dotnetdir}\Managed DirectX\v9.05.132"/>
</fileset>

<target name="build">
<solution configuration="debug" solutionfile="WorldWindow.sln">
<assemblyfolders refid="assembly"/>
</solution>

<solution configuration="debug" solutionfile="WorldWind.sln">
<assemblyfolders refid="assembly"/>
</solution>
</target>
</project>
Now, make some modifications to some files:
In "PluginSDK/RenderableObject.cs" remove the first "using System;" line.
In "PluginSDK/WorldWindSettings.cs" replace "public class WorldWindSettings : SettingsBase" with "public class WorldWindSettings : WorldWind.Serialization.SettingsBase"
In "WorldXmlDescriptor/WorldXmlDescriptor.csproj" replace 3DA89709-9AB5-4242-8211-99629839967C with 9EA1E65D-4558-E940-B594-E71BF740FA04
In "LayerSet/LayerSet.csproj" replace 9CE1A47D-2800-3F4D-B4F9-D8F8D4E16ABB with 66D4A736-2FE2-C64F-BA20-16B934D3B744
In "Worlds/Worlds.csproj" replace 7184D008-F944-3449-A973-0ECE4891AA3B with 434BAA16-5870-E145-8A88-1290510E78A9
In "NRL_Monterey/NRL_Monterey.csproj" replace 8D68A573-C0A5-AB45-831A-2DD011A4D5B6 with A6C7E938-BEDE-D84B-8440-61019C154AAC

(To the admins: Would it be possible to get these changes checked into CVS?)

Open a Command Prompt and cd to your work directory (cd \wwdev\WorldWind)
Type "c:\nant-0.85-rc2\bin\nant" (change the path to reflect where you installed Nant)
If all goes well, you should get BUILD SUCCEEDED in the end

Now copy the "C:\Program Files\NASA\World Wind 1.3\Data\Earth" directory to "C:\wwdev\WorldWind\bin\Debug\Data"

Your newly built WorldWind should now be ready to go. Double click on "WorldWind.exe" in "C:\wwdev\WorldWind\bin\Debug"
and it should start.

If you make changes to the source files that you would like to compile, just run the nant command again to recompile.

Happy hacking,
Rob.
rnielsen is offline   Reply With Quote
Old 03-08-2005, 01:25 AM   #2
adamhill
Senior Member
 
Join Date: Sep 2004
Posts: 147
adamhill
Default

Cool!

Now, my question is *why* are all these references problems and inheritance problems revealed only with Nant?

I was about to embark on getting Cruise Control all set up for the project.
__________________
Adam Hill - .NET and GIS Guy
Thregecy Inc. ::: TheBigPixel
Hack #24 - World Wind
adamhill is offline   Reply With Quote
Old 03-08-2005, 01:27 AM   #3
TomServo
God. Root. What is difference?
 
TomServo's Avatar
 
Join Date: Sep 2004
Location: Eastern Pennsylvania
Posts: 2,847
TomServo
Default

What about using SharpDevelop?

A nice free C# IDE.
__________________


Earth is Square blog

PUBLIC NOTICE AS REQUIRED BY LAW: Any use of this forum post, in any manner whatsoever, will increase the amount of disorder in the universe. Although no liability is implied herein, the consumer is warned that this process will ultimately lead to the heat death of the universe.
TomServo is offline   Reply With Quote
Old 03-08-2005, 02:44 AM   #4
rnielsen
Junior Member
 
Join Date: Mar 2005
Posts: 2
rnielsen
Default

Quote:
Originally posted by TomServo@Mar 8 2005, 11:27 AM
What about using SharpDevelop?

A nice free C# IDE.
I did try SharpDevelop first but didn't manage to get it working. It seems to import the solution files ok but when you go to use them, WorldWind won't even open - complains about resources and WorldWindow gives errors when building.

If anyone has gotten WorldWind compiling through SharpDevelop, I would be interested to hear what they did.
rnielsen is offline   Reply With Quote
Old 03-08-2005, 02:49 AM   #5
adamhill
Senior Member
 
Join Date: Sep 2004
Posts: 147
adamhill
Default

Quote:
Originally posted by TomServo@Mar 7 2005, 08:27 PM
What about using SharpDevelop?

A nice free C# IDE.
Thats just the IDE, you still need a compiler and such. SharpDevelop 1.0.3a loads the Nant modified files just fine.
__________________
Adam Hill - .NET and GIS Guy
Thregecy Inc. ::: TheBigPixel
Hack #24 - World Wind
adamhill is offline   Reply With Quote
Old 03-08-2005, 02:22 PM   #6
TomServo
God. Root. What is difference?
 
TomServo's Avatar
 
Join Date: Sep 2004
Location: Eastern Pennsylvania
Posts: 2,847
TomServo
Default

Quote:
Originally posted by adamhill@Mar 7 2005, 09:49 PM
Thats just the IDE, you still need a compiler and such. SharpDevelop 1.0.3a loads the Nant modified files just fine.

nant/mono would take care of that issue though wouldn't it?

Edit: Maybe I should look at the last part of your post :lol:

Ok.. I "should" be in business then... man am I rusty in the code department.
__________________


Earth is Square blog

PUBLIC NOTICE AS REQUIRED BY LAW: Any use of this forum post, in any manner whatsoever, will increase the amount of disorder in the universe. Although no liability is implied herein, the consumer is warned that this process will ultimately lead to the heat death of the universe.
TomServo is offline   Reply With Quote
Old 03-08-2005, 04:21 PM   #7
adamhill
Senior Member
 
Join Date: Sep 2004
Posts: 147
adamhill
Default

Clarification:

Mono has two ways it could help - compiling WW or running WW from a binary compiled with MS tools, but...

The Mono compiler (mcs.exe) can't compile WorldWind because the compiler doesn't know about COM Interop (Talking to DirectX).

The Mono runtime cant run WW (on Windows) because there is not an implementation of Microsoft.Windows.Forms.Screen.GetBounds () in the Mono libraries.

So you still need a real MS compiler for .NET to compile World Wind.
__________________
Adam Hill - .NET and GIS Guy
Thregecy Inc. ::: TheBigPixel
Hack #24 - World Wind
adamhill is offline   Reply With Quote
Old 03-09-2005, 03:12 PM   #8
ink_polaroid
Junior Member
 
ink_polaroid's Avatar
 
Join Date: Jan 2005
Location: SF Bay Area, CA
Posts: 10
ink_polaroid
Default

Quote:
Originally posted by adamhill@Mar 8 2005, 08:21 AM
So you still need a real MS compiler for .NET to compile World Wind.
Microsoft makes an "Visual C# Express Edition" freely available.
ink_polaroid is offline   Reply With Quote
Old 03-09-2005, 04:13 PM   #9
adamhill
Senior Member
 
Join Date: Sep 2004
Posts: 147
adamhill
Default

But that is .NET 2.0 Alpha, Alpha (CTP in MS speak), so be ready for some rough edges, though I did compile it back in the 1.2 days on 2.0, but not with any of the Express SKU's.

YMMV
__________________
Adam Hill - .NET and GIS Guy
Thregecy Inc. ::: TheBigPixel
Hack #24 - World Wind
adamhill is offline   Reply With Quote
Old 03-09-2005, 06:38 PM   #10
TomServo
God. Root. What is difference?
 
TomServo's Avatar
 
Join Date: Sep 2004
Location: Eastern Pennsylvania
Posts: 2,847
TomServo
Default

Quote:
Originally posted by ink_polaroid@Mar 9 2005, 10:12 AM
Microsoft makes an "Visual C# Express Edition" freely available.

Freely available while in testing stages mind you. Once it is final it won't be free anymore. Hopefully they won't lock up and makes the beta's unseable then.
__________________


Earth is Square blog

PUBLIC NOTICE AS REQUIRED BY LAW: Any use of this forum post, in any manner whatsoever, will increase the amount of disorder in the universe. Although no liability is implied herein, the consumer is warned that this process will ultimately lead to the heat death of the universe.
TomServo is offline   Reply With Quote
Reply


Currently Active Users Viewing This Thread: 1 (0 members and 1 guests)
 
Thread Tools
Display Modes

Posting Rules
You may post new threads
You may post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Forum Jump

Similar Threads
Thread Thread Starter Forum Replies Last Post
Visual Studio and Plugins mbeutjer Developers' Corner 5 12-19-2005 02:29 AM
Newbies guide to worldwind Llynix WorldWind General 14 12-25-2004 01:55 PM


All times are GMT +1. The time now is 04:28 AM.


Powered by vBulletin® Version 3.7.1
Copyright ©2000 - 2013, Jelsoft Enterprises Ltd.