Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • World
  • Users
  • Groups
Skins
  • Light
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse
Code Project
  1. Home
  2. The Lounge
  3. Build Systems

Build Systems

Scheduled Pinned Locked Moved The Lounge
question
30 Posts 17 Posters 0 Views 1 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • R RichardS

    Hi All, I am evaluating different build mechanisms as our products require an number of programmes to be run. Do any of you use builds systems like Ant, Bake, Jam, make, etc.? Are they better than a simple .bat file? Which ones would you recommend? thanks, Rich

    "Programming today is a race between software engineers striving to build bigger and better idiot-proof programs, and the Universe trying to produce bigger and better idiots. So far the Universe is winning." -- Rich Cook

    L Offline
    L Offline
    Lost User
    wrote on last edited by
    #16

    Make, planning to indtroduce auto dependancy which was used at my last place.

    The tigress is here :-D

    R 1 Reply Last reply
    0
    • R RichardS

      Hi All, I am evaluating different build mechanisms as our products require an number of programmes to be run. Do any of you use builds systems like Ant, Bake, Jam, make, etc.? Are they better than a simple .bat file? Which ones would you recommend? thanks, Rich

      "Programming today is a race between software engineers striving to build bigger and better idiot-proof programs, and the Universe trying to produce bigger and better idiots. So far the Universe is winning." -- Rich Cook

      S Offline
      S Offline
      Shuqian Ying
      wrote on last edited by
      #17

      Try x-script generator. It can be used to generator NAnt scripts using GUI, which allows you to invoke all exiting build tools (like compiler, linker, etc.). In addition, if there is a need to have more control over the build process that is not *standard*, like code insertion, code protection, code image manipulation (e.g. code protection, ...), etc. You can write your own extension assemblies or use other existing ones that can easily be plugged into the x-script generator system (and NAnt extension ports) and to have it run at a particular step you want in the build process. The user side of the "learning" curve for it is very smooth and the script generation is half automated so that its very easy.

      E 1 Reply Last reply
      0
      • L Lost User

        Make, planning to indtroduce auto dependancy which was used at my last place.

        The tigress is here :-D

        R Offline
        R Offline
        Rage
        wrote on last edited by
        #18

        Trollslayer wrote:

        auto dependancy

        What is auto dependency ? target finding their dependencies automatically, like in visual ?

        ~RaGE();

        I think words like 'destiny' are a way of trying to find order where none exists. - Christian Graus

        L 1 Reply Last reply
        0
        • S Sceptic Mole

          Mike Dimmick wrote:

          A lot of the stuff I do is currently oriented around Visual Studio projects and workspaces/solutions. Particularly for Windows CE/Windows Mobile projects, it's really hard to set up a command line environment where you can actually use nmake effectively. So my technique is to just get VS/eVC to do the build. All versions of Visual Studio support building from the command line. For VC 6: msdev myprj.dsp /make "ALL - RELEASE" /rebuild

          I did the same some time ago in a VC++ 6.0 project. BTW, how can you use VC 8.0 from the command line? -- modified at 8:08 Monday 30th October, 2006 Got it:

          Command line builds:
          devenv solutionfile.sln /build solutionconfig [ /project projectnameorfile [ /projectconfig name ] ]
          Available command line switches:

          /Edit Opens the specified files in a running instance of this
          application. If there are no running instances, it will
          start a new instance with a simplified window layout.
          /Log Logs IDE activity to the specified file for troubleshooting.
          /ResetSettings Restores the IDE's default settings, optionally resets to
          the specified VSSettings file.
          /SafeMode Launches the IDE in safe mode loading minimal windows.

          devenv.exe is not included in VCExpress.

          D Offline
          D Offline
          Daniel Grunwald
          wrote on last edited by
          #19

          You can build VS 2005 solutions on the command line using msbuild.exe (installed with the framework, not even the SDK is required).

          S 1 Reply Last reply
          0
          • D Daniel Grunwald

            You can build VS 2005 solutions on the command line using msbuild.exe (installed with the framework, not even the SDK is required).

            S Offline
            S Offline
            Shog9 0
            wrote on last edited by
            #20

            Not C++...

            every night, i kneel at the foot of my bed and thank the Great Overseeing Politicians for protecting my freedoms by reducing their number, as if they were deer in a state park. -- Chris Losinger, Online Poker Players?

            D 1 Reply Last reply
            0
            • S Shog9 0

              Not C++...

              every night, i kneel at the foot of my bed and thank the Great Overseeing Politicians for protecting my freedoms by reducing their number, as if they were deer in a state park. -- Chris Losinger, Online Poker Players?

              D Offline
              D Offline
              Daniel Grunwald
              wrote on last edited by
              #21

              I'm sure I saw special code in MSBuild that handles C++ projects (which still have the old file format) last time I was looking at the .NET Framework using Reflector. Of course Visual Studio must be installed, the C++ compiler is not part of the framework.

              1 Reply Last reply
              0
              • P peterchen

                I recently converted my batch build file to MS PowerShell (formerly known as Monad). It is quirky and weird and takes some trickery to get started and some time to get used to - but boy you can do all these things! * push the stdout of a program in a string, and search for tokens, e.g. to display "(N) errors" summary * search & replace in a plain text file * access & modify XML files * Use all the .NET goodies * Access COM / Automation interfaces * Error Handling is way better than in batch files (though it could still improve) * Functions! Howly cow! It has functions! With Name! And Parameters! (this bulleted list was specifically designed for Shog9oth' pleasure) Dedicated build systems might be better for a particular task (e.g. nant for .NET stuff), but I have no experience with them. -- modified at 8:15 Monday 30th October, 2006


                We are a big screwed up dysfunctional psychotic happy family - some more screwed up, others more happy, but everybody's psychotic joint venture definition of CP
                Linkify! || Fold With Us! || sighist

                S Offline
                S Offline
                Shog9 0
                wrote on last edited by
                #22

                peterchen wrote:

                (this bulleted list was specifically designed for Shog9oth' pleasure)

                :rolleyes: Seven bullets... must give monadad a try...

                every night, i kneel at the foot of my bed and thank the Great Overseeing Politicians for protecting my freedoms by reducing their number, as if they were deer in a state park. -- Chris Losinger, Online Poker Players?

                P 1 Reply Last reply
                0
                • R RichardS

                  Hi All, I am evaluating different build mechanisms as our products require an number of programmes to be run. Do any of you use builds systems like Ant, Bake, Jam, make, etc.? Are they better than a simple .bat file? Which ones would you recommend? thanks, Rich

                  "Programming today is a race between software engineers striving to build bigger and better idiot-proof programs, and the Universe trying to produce bigger and better idiots. So far the Universe is winning." -- Rich Cook

                  S Offline
                  S Offline
                  Scott Dorman
                  wrote on last edited by
                  #23

                  We currently use CruiseControl.NET to handle the automation of the builds. The projects trigger every 15 - 30 minutes and build only if changes have been checked in to source control. The CCNET projects simply call NAnt build scripts that take care of actually building the projects. The build scripts are really where we hide most of the complexity of the build process. I have used Jam before to build some third-party libraries, and found it to be very cumbersome, but that could have just been the implementation. If you're not running on a Windows platform, CruiseControl and Ant would be my recommendations. They are the Linux/Unix originals of CruiseControl.NET and NAnt.

                  1 Reply Last reply
                  0
                  • R Rage

                    Trollslayer wrote:

                    auto dependancy

                    What is auto dependency ? target finding their dependencies automatically, like in visual ?

                    ~RaGE();

                    I think words like 'destiny' are a way of trying to find order where none exists. - Christian Graus

                    L Offline
                    L Offline
                    Lost User
                    wrote on last edited by
                    #24

                    Yes, use the GCC compiler to generate a list of dependancies (-M option) then include the resulting .dep files in the make files.

                    The tigress is here :-D

                    1 Reply Last reply
                    0
                    • M Mike Dimmick

                      A lot of the stuff I do is currently oriented around Visual Studio projects and workspaces/solutions. Particularly for Windows CE/Windows Mobile projects, it's really hard to set up a command line environment where you can actually use nmake effectively. So my technique is to just get VS/eVC to do the build. All versions of Visual Studio support building from the command line. For VC 6:

                      msdev myprj.dsp /make "ALL - RELEASE" /rebuild

                      eVC:

                      evc myprj.vcp /make "ALL - RELEASE" /CEConfig="Pocket PC 2003" /rebuild

                      VS 2003, 2005:

                      devenv solution.sln /rebuild Release

                      I put the appropriate sequence of commands into a batch file. Tools like nmake, NAnt, MSBuild etc really only offer additional dependency management. For a testing or final release build I normally rebuild everything anyway, which nullifies the benefit of dependency management (that is, only rebuilding things that have changed). They're helpful on a developer's workstation for tools that don't have their own dependency management, but VS does (admittedly, sometimes it doesn't get it right). To assist with eVC builds I wrote a program which looks at the workspace to determine the right version of eVC to use (3.0 or 4.0), then looks in the registry to work out where eVC was installed to, so I don't need eVC in my path or installed to a fixed location.

                      Stability. What an interesting concept. -- Chris Maunder

                      C Offline
                      C Offline
                      Chris S Kaiser
                      wrote on last edited by
                      #25

                      We use NAnt for our build system here and most of my work is done in the CompactFramework. It works great! We use it to produce our release and qa builds.

                      This statement is false.

                      1 Reply Last reply
                      0
                      • R RichardS

                        Hi All, I am evaluating different build mechanisms as our products require an number of programmes to be run. Do any of you use builds systems like Ant, Bake, Jam, make, etc.? Are they better than a simple .bat file? Which ones would you recommend? thanks, Rich

                        "Programming today is a race between software engineers striving to build bigger and better idiot-proof programs, and the Universe trying to produce bigger and better idiots. So far the Universe is winning." -- Rich Cook

                        C Offline
                        C Offline
                        Chris S Kaiser
                        wrote on last edited by
                        #26

                        I would recommend NAnt. We're using it with success. Mostly ASP.NET and CompactFramework apps though.

                        This statement is false.

                        1 Reply Last reply
                        0
                        • S Shog9 0

                          peterchen wrote:

                          (this bulleted list was specifically designed for Shog9oth' pleasure)

                          :rolleyes: Seven bullets... must give monadad a try...

                          every night, i kneel at the foot of my bed and thank the Great Overseeing Politicians for protecting my freedoms by reducing their number, as if they were deer in a state park. -- Chris Losinger, Online Poker Players?

                          P Offline
                          P Offline
                          peterchen
                          wrote on last edited by
                          #27

                          You must admit it's an improvement from seven separate bulleted lists! ;)


                          We are a big screwed up dysfunctional psychotic happy family - some more screwed up, others more happy, but everybody's psychotic joint venture definition of CP
                          Linkify! || Fold With Us! || sighist

                          1 Reply Last reply
                          0
                          • R RichardS

                            Hi All, I am evaluating different build mechanisms as our products require an number of programmes to be run. Do any of you use builds systems like Ant, Bake, Jam, make, etc.? Are they better than a simple .bat file? Which ones would you recommend? thanks, Rich

                            "Programming today is a race between software engineers striving to build bigger and better idiot-proof programs, and the Universe trying to produce bigger and better idiots. So far the Universe is winning." -- Rich Cook

                            P Offline
                            P Offline
                            Phillip Martin
                            wrote on last edited by
                            #28

                            I would also highly recommand SCons. It is a remarkable piece of software. It uses python as the basis for its build definitions, and it produces a nice mix of declarative and procedural way of defining your build process. It abstracts really nicely many platform specific concepts, such as shared libraries, static libraries, and compilers. It has build in C++ parsing to have #include dependencies, and it optionally works off md5 checksums of all inputs, intermediate, and outputs to see if anything needs rebuilding. I am really impressed with it. - Phil

                            1 Reply Last reply
                            0
                            • S Shuqian Ying

                              Try x-script generator. It can be used to generator NAnt scripts using GUI, which allows you to invoke all exiting build tools (like compiler, linker, etc.). In addition, if there is a need to have more control over the build process that is not *standard*, like code insertion, code protection, code image manipulation (e.g. code protection, ...), etc. You can write your own extension assemblies or use other existing ones that can easily be plugged into the x-script generator system (and NAnt extension ports) and to have it run at a particular step you want in the build process. The user side of the "learning" curve for it is very smooth and the script generation is half automated so that its very easy.

                              E Offline
                              E Offline
                              Ed K
                              wrote on last edited by
                              #29

                              Link?

                              ed ~"Watch your thoughts; they become your words. Watch your words they become your actions. Watch your actions; they become your habits. Watch your habits; they become your character. Watch your character; it becomes your destiny." -Frank Outlaw.

                              S 1 Reply Last reply
                              0
                              • E Ed K

                                Link?

                                ed ~"Watch your thoughts; they become your words. Watch your words they become your actions. Watch your actions; they become your habits. Watch your habits; they become your character. Watch your character; it becomes your destiny." -Frank Outlaw.

                                S Offline
                                S Offline
                                Shuqian Ying
                                wrote on last edited by
                                #30

                                The product link is here[^]. The online document link is here[^].

                                1 Reply Last reply
                                0
                                Reply
                                • Reply as topic
                                Log in to reply
                                • Oldest to Newest
                                • Newest to Oldest
                                • Most Votes


                                • Login

                                • Don't have an account? Register

                                • Login or register to search.
                                • First post
                                  Last post
                                0
                                • Categories
                                • Recent
                                • Tags
                                • Popular
                                • World
                                • Users
                                • Groups