Announcement

Collapse
No announcement yet.

WorldWind Compiling Guide Without Visual Studio

Collapse
This is a sticky topic.
X
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • WorldWind Compiling Guide Without Visual Studio

    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.s ourceforge.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\defaul t.build) containing the following:
    <?xml version="1.0"?>
    <project name="WorldWind" default="build">
    <property name="dotnetdir" value="C:&#092;WINDOWS&#092;Microsoft.NE T"/>
    <fileset id="assembly">
    <include name="&#036;{dotnetdir}&#092;Framework&# 092;v1.1.4322"/>
    <include name="&#036;{dotnetdir}&#092;Managed DirectX&#092;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 &#092;wwdev&#092;WorldWind)
    Type "c:&#092;nant-0.85-rc2&#092;bin&#092;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:&#092;Program Files&#092;NASA&#092;World Wind 1.3&#092;Data&#092;Earth" directory to "C:&#092;wwdev&#092;WorldWind&#092;bin&#0 92;Debug&#092;Data"

    Your newly built WorldWind should now be ready to go. Double click on "WorldWind.exe" in "C:&#092;wwdev&#092;WorldWind&#092;bin&#0 92;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.

  • #2
    Cool&#33;

    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

    Comment


    • #3
      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.

      Comment


      • #4
        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&#39;t manage to get it working. It seems to import the solution files ok but when you go to use them, WorldWind won&#39;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.

        Comment


        • #5
          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

          Comment


          • #6
            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&#39;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.

            Comment


            • #7
              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&#39;t compile WorldWind because the compiler doesn&#39;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

              Comment


              • #8
                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.

                Comment


                • #9
                  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&#39;s.

                  YMMV
                  Adam Hill - .NET and GIS Guy
                  Thregecy Inc. ::: TheBigPixel
                  Hack #24 - World Wind

                  Comment


                  • #10
                    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&#39;t be free anymore. Hopefully they won&#39;t lock up and makes the beta&#39;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.

                    Comment


                    • #11
                      I have successfully compiled worldwind thanks to this post... but... when I tryed to launch my newly created .exe, I had an unhandeld exception error...
                      :-(

                      more over, my .exe file is 812 Ko, while the exe provided with the 1.3 is only 808Ko

                      I have copied the data directory in the Debug folder, tried to reinstall .NET 1.1
                      but always the same error...

                      ok, moderator, you can remove this post...
                      I have just re-compiled, and this time it starts...
                      sorry...
                      My page about wordlwind (addons, programs, etc...)

                      Comment


                      • #12
                        Ok, some notes from when I compiled the latest CVS yesterday.. nant is really fast.. wow (Easily ammused )

                        Originally posted by rnielsen+Mar 7 2005, 08:05 PM--><div class='quotetop'>QUOTE(rnielsen &#064; Mar 7 2005, 08:05 PM)</div><div class='quotemain'>Install DirectX 9.0 SDK Update (February 2005) from http://www.microsoft.com/downloads/details...&displaylang=en
                        [/b]


                        Note that is this what caused all the DXHell before.. we had like 5 different versions of DX installed on different dev&#39;s coputers.... just a small warning


                        Originally posted by rnielsen@Mar 7 2005, 08:05 PM
                        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?)
                        Done. You don&#39;t have to make these changes in the latest CVS.. they are all updated.

                        <!--QuoteBegin-rnielsen
                        @Mar 7 2005, 08:05 PM
                        Open a Command Prompt and cd to your work directory (cd &#092;wwdev&#092;WorldWind)
                        Type "c:&#092;nant-0.85-rc2&#092;bin&#092;nant" (change the path to reflect where you installed Nant)
                        If all goes well, you should get BUILD SUCCEEDED in the end
                        [/quote]

                        I couldn&#39;t get it to build inside the wwdev&#092;WorldWind folder.. it couldn&#39;t find stuff.. I moved down to wwdev&#092; and ran nant and it compiled just fine and works.

                        Almost forgot..
                        WorldWind&#092;WorldWindow.sln seems to be MIA in the latest CVS.. at least the copy I got didn&#39;t have it.


                        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.

                        Comment


                        • #13
                          Is there a problem with the Worldwind repos. at the moment?

                          I&#39;ve been trying to checkout the source, but these last two hours i get
                          "cvs [checkout aborted]: unrecognized auth response from cvs.sourceforge.net: M PserverBackend::PserverBackend() Connect (Connection refused)"

                          Other sourceforge projects still checkout ok, so it&#39;s not the sourceforge cvs-server as such.

                          Comment


                          • #14
                            Hmm.. really? We were thinking it was an anon SF CVS issue..

                            Will pass this up the tree and see what the others think of it.


                            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.

                            Comment


                            • #15
                              Why WinCVS 1.3.20.3? The latest recommended release is 2.0.0.2.

                              Comment

                              Working...
                              X