Download Shareware and Freeware Software for Windows, Linux, Macintosh, PDA

line Home  |  About Us  |  Link To Us  |  FAQ  |  Contact

Serving Software Downloads in 976 Categories, Downloaded 31.588.472 Times

Cppmake 0.5

  Date Added: March 18, 2010  |  Visits: 619


Report Broken Link
Printer Friendly Version

Product Homepage
Download (72 downloads)

Cppmake application is a front-end to make that builds C++ programs with less effort than writing makefiles manually. Building a C++ program with cppmake is similar to compiling a Java program. The idea is that you specify a classpath and cppmake will automatically find all the classes needed by your program. Once found, all of the classes are compiled and linked into an executable or library. The benefits of using cppmake to build C++ programs include - You dont have to write a makefile when you start a new project - You dont have to maintain a makefile as your project evolves - Header file dependencies are automatically kept up to date - You can switch from one implementation of a group of classes to another on the fly by simply changing the classpath Lets begin with an example. Suppose you want to build a program called joe and the main function is in joe.cpp. Your programs classes live in the current directory, ../../common, and /usr/src/base. The only thing you need to do is set the classpath (just like a java program) to ".:../../common:/usr/src/base" (unix/cygwin) or ".;....common;C:usrsrcbase" (windows). This tells cppmake to first search for classes in the current directory, then in ../../common and finally in /usr/src/base. You simply run cppmake on joe.cpp to build the executable. $ cppmake --classpath ".:../../common:/usr/src/base" joe.cpp The result of this command is an executable called joe. Cppmake figures out which classes on the classpath need to be included in the executable and defers the work of actually compiling and linking the executable to the make command. Therefore the next time you run cppmake, only files that need to be recompiled are recompiled. Now lets do a more complicated example. Suppose you want to build the same program as in the previous example, but this time you want more control over the build. You want to explicitly name the executable joe.exe, you want output files to go in a directory called build, you want to specify the compiler as g++, you want to pass the -Wall -g compiler flags, and you want to link with the pthread library. $ cppmake --classpath ".:../../common:/usr/src/base" -o joe.exe -d build -x g++ -f "-Wall -g" -l "-lpthread" joe.cpp Most of these options can be given through environment variables as well as the command line. The following is equivalent to the previous example using bash. $ export CLASSPATH=".:../../common:/usr/src/base" $ export OUTPUT=joe.exe $ export DIRECTORY=build $ export CXX=g++ $ export CXXFLAGS="-Wall -g" $ export LDFLAGS="-lpthread" $ export CPPFILES="joe.cpp" $ cppmake When an option is given by both an environment variable and the command line, the command line option takes precedence. One exception to this rule is that C++ files can be given with the CPPFILES environment variable and the command line at the same time. Cppmake can also be used to build libraries. The difference between building a library and an executable is that when building an executable you only want classes that are needed by the executable, but when you build a library you want all the C++ files on the classpath. The --library option tells cppmake to include every C++ file found on the classpath in the build. You also have to pass your compiler specific linker options to build a library, cppmake will not know to give those options automatically because they are compiler specific. The following example creates a library on linux assuming CLASSPATH has already been set as in the previous example. $ cppmake --library -o -l"-shared -Wl-soname," The --clean option tells cppmake to remove all the object files and the output. The --help option prints a summary of all the options and exits..

Requirements: No special requirements
Platforms: Linux
Keyword: Build C++ Classes Classpath Command Line Compilers Cppmake Executable Export Programming To Make Want To Writing Makefiles You Want To
Users rating: 0/10

License: Freeware Size: 13.31 KB
Libraries  -  C++ Command Line Library 0.3
C++ Command Line Library provides a framework for handling command line options and arguments. Either variables (of any type) are set to values given at the command line. Or user defined functions are called with arguments (of any type) read from...
849.92 KB  
Utilities  -  Command Line WRAPper 0.3.0
Command Line WRAPper is a tool that provides an easy way to build and run commands from input lines, avoiding the use of shell script. It is similar to xargs. clwrap can make great things with the locate command, and is low resource intensive....
43.01 KB  
Multimedia & Graphics  -  Perspolis Command-Line Calculator New
Perspolis Command-Line Calculator is, just like the name suggests a small, simple, command-line based application specially designed to help you with your basic math calculations. If you are looking for a tool that is both tiny and easy to use to...
Multimedia & Graphics  -  SignMyImage Command-Line 3.9
SignMyImage Command-Line is a small and easy to use application that allows you to sign your pictures. The sign is added directly to the image data. It doesn't use EXIF or stream file properties. The sign is invisible. The sign stays detectable...
Code Management Tools  -  Command Line Copy & Paste for Mac OS 1.0
This bundle of Mac OS X command line applications consists of two simple programs. maccopy and macpaste. These two programs copy or print the text currently from or to the Mac OS X pasteboard. Use these applications in your scripts or any other...
20.48 KB  
Compression Tools  -  No-Frills Command Line Unzipper 1.05
Based on the Delphi-Zip library and coded by Ccy for S2 Services, this simple command line unzipper offers the advantage of not requiring command switches. Commands are interpreted according to argument order. The first argument is the zip file,...
778.24 KB  
Utilities  -  Bluetooth Command Line Tools
Bluetooth Command Line Tools are a set of command line utilities for Windows XP, Vista or Windows 7 which allow you to configure bluetooth adapter, discover remote bluetooth devices and their services, push files to remote devices through OBEX....
3.08 MB  
Development Tools  -  Pyline: a command-line tool 1.2
This utility brings ad-hoc command-line piping sensibilities to the Python interpreter.
Development Tools  -  Generic command-line option parser 1.4
This class can be used to write code that will parse command line options for an application by invoking one of the standard Python library command argument parser modules optparse or getopt. The class first tries to use optparse. It it is not...
File Management  -  Handling of command line arguments 1.0
This script handles arguments for small scripts that need to:á - read some command line optionsá - read some command line positional argumentsá - iterate over all lines of some files given on the command line, or stdin if none given - give...
Linux Software  -  wpCache┬« WordPress HTTP Cache 1.9
wpCache® is a high-performance, distributed object, caching system application, generic in nature, but intended for use in speeding up dynamic web applications, by decreasing database load time. wpCache® decreases dramatically the page...
3.51 MB  
Linux Software  -  Polling Autodialer Software 3.4
ICTBroadcast Auto Dialer software has a survey campaign for telephone surveys and polls. This auto dialer software automatically dials a list of numbers and asks them a set of questions that they can respond to, by using their telephone keypad....
488 B  
Linux Software  -  Total Video Converter Mac Free 3.5.5
Total Video Converter Mac Free developed by EffectMatrix Ltd is the official legal version of Total Video Converter which was a globally recognized brand since 2006. Total Video Converter Mac Free is a free but powerful all-in-one video...
17.7 MB  
Linux Software  -  Skeith mod_log_sql Analyzer 2.10beta2
Skeith is a php based front end for analyzing logs for Apache using mod_log_sql.
47.5 KB  
Linux Software  -  SLAX 6.0+
Slax is a modern, portable, small and fast Linux operating system with a modular approach and outstanding design. Despite its small size, Slax provides a wide collection of pre-installed software for daily use, including a well organized graphical...
190 KB  
Programming  -  FLEX-db Digital Asset Manager 3.0.9
FLEX-db - an enterprise Digital Asset Manager (DAM). It ingests and links metadata with files, creates thumbnails, and processes files using business rules. FLEX-db has a JSP client, Java app server for file input and output and an EJB metadata...
21.57 MB  
Programming  -  Libicom 0.9.0
The libicom library is a character based dynamicly linked library for Linux. It is used to remotely control the Icom IC-R8500 wide band receiver via an RS232 link. All call and return parameters to the control functions are character string based....
20.48 KB  
Programming  -  dotdesktop 0.3
Dotdesktop library provides ability to parse desktop entry file and access the information in a convenient way. Desktop entry file format is defined by, it is used to describe information about an application such as the name and...
327.68 KB  
Programming  -  Cedalion for Linux 0.2.6
Cedalion is a programming language that allows its users to add new abstractions and define (and use) internal DSLs. Its innovation is in the fact that it uses projectional editing to allow the new abstractions to have no syntactic limitations.
471.04 KB  
Programming  -  libyasl 0.2
Libyasl is a C++ class library to easily realize TCP/UDP/Multicast clientsand servers in IPv4 and IPv6 environments under GNU/Linux systems.
143.36 KB