- Doxygen :
A documentation system for C++, C, Java and IDL. It generates Latex, HTML, RTF, Postscript and Unix man page outputs from a set of documented source files. [Open Source, GPL] - ccache :
Acts as a caching pre-processor to C/C++ compilers, which often results in a 5 to 10 times speedup in common compilations. [Open Source, GPL] - Doc-O-Matic :
Creates fully cross linked documentation systems and manuals in PDF, HTML, HTML Help, Windows Help and RTF from C/C++ or Delphi/Pascal source code. - Compilercache :
Caches compiled object files to dramaticly speed up compiles. More convenient than make, and speeds up builds (like RPM builds) that make doesn't. Obsoleted by ccache. - CodeColorizer :
Can convert source code in a number of languages to colorized HTML. - Code Crusader :
Designed to smoothly integrate the tasks of working with source files, compiling, and debugging, in short everything involved in developing code. (New Planet Software) . - C and C++ Validation Test Suites :
Suite++ includes both positive and negative tests for comparing compiler behavior to the ANSI/ISO C++ Standard. LibSuite++ tests the conformance of the C++ library. (Plum Hall, Inc.) - Imagix Corporation :
Provides software to aid in reverse engineering, program understanding, and code comprehension as well as documentation tools for legacy and complex C and C++ software systems. - UML2COM :
A Rational Rose add-in that generates code for Visual C++ or generic C++. By Arion Software. - XMDS: eXtensible Multi-Dimensional Simulator :
A code generator that integrates equations based at human readable form in an XML file, it goes away and writes and compiles a C++ program that integrates those equations as fast as it can possibly be done in selected hardware architecture. [Open source, GPL] - Open C++ :
C++ version with Metaobject Protocol; tool of source (code) to source translation for C++. Allows easily implementing varied kinds of translation, to define new: syntax, annotation, object behaviors; extensions, optimizations, runtime protocols. [Open Source] - VxDWriter :
A tool for developing Windows 95/98 Virtual Device Driver (VxD) quickly and efficiently in C/C++. (Techsoft) - GlowCode :
Complete diagnostic toolset for Win32 programmers. Helps programmers find performance bottlenecks, trace program execution, find unexecuted code, and detect memory and resource leaks. - SourceStyler C++ :
A tool for C/C++ developers that provides complete control over the formatting and layout of C/C++ source code. Provides over 75 individual formatting options and full ANSI C++ support. [Shareware] - Understand :
Analyzes any sized C or C++ project to help you document and understand it better. - Cantata++ :
Allows developers to efficiently perform unit and integration testing of C/C++ software. It has facilities for dynamic testing, coverage analysis and static analysis. - CodeWizard :
Helps developers prevent errors by automatically enforcing over 170 industry-accepted C++ coding standards. (ParaSoft) - DocVizor :
Lets see the class hierarchy of C++ projects. It quickly generates a complete printable hierarchy of classes, including classes from third party libraries. It can also generates html files from the class information. By UCanCode.Net Software. [Shareware] - Visual Code Browser for C/C++ :
Integrating code editor, analyzer and documentation generator with code flowcharting and visualization. [Shareware] - Computer Science Lab :
CPPIDE is a Windows program that wraps the Gnu C++ compiler and Gnu GDB debugger into an integrated development environment for the C and C++ languages. - Stack Spy :
It catch stack corruption, stack over run, stack overflow, get instant email notification of crash with line numbers and function names of last 100 calls that led to the crash. buffer overflow, memory overwrite, program crash. - SNIP from Cleanscape Software International :
An easy-to-use C++ development tool that bridges the gap between design and coding and saves hours of editing/debugging. It also allows developers to specify design patterns as object models, and automatically generates C++ classes from the object models. - C++2HTML :
Online/offline JavaScript program to convert C++ code to syntax highlighted HTML output. Free to use and easy to change. - CC-Rider :
A detailed analysis of your C or C++ program, allows easy navigation with Call Trees, Hierarchy Trees, generates Web Documentation. - Lazy C++ :
Lzz (Lazy C++) is a rapid development tool. Given a sequence of declarations Lzz will generate header and source files. - BVRDE :
A fully integrated development environment (IDE) designed for compiling and debugging on remote Linux/Unix servers using a Windows client. [Open source, GPL] - C/C++ Program Perfometer :
Enables to get performance of C/C++ program and separated pieces of code for any metrics (for instance : uclocks, rusage-metrics, metrics defined by user). The measurement results are represented in detailed/summary reports. [Common Public License] - CodeInspect :
A C++ code inspector that analyses source code and finds nonstandard, suspicious or simply plain wrong code. (Yokasoft) - s-mail project - Java to C++DOL :
A command line tool that translates Java sources into corresponding C++ sources. [Freeware] - SourcePublisher C++ :
Generates detailed HTML reports that offer quick, intuitive browsing of the source and information about the code. Class Inheritance Hierarchies, Call and CallBy Trees, Include and Include By Trees,HTML source browser. Windows 95/98/NT/2000, Linux, Solaris, and other Unix platforms. - Integrated Dynamic Design Models (IDDM) :
Tools for support Agile methodology software development for C++. Support Visual C++, C++ Builder compilers. - CppRefactory :
Tool to automate refactoring process for C++ projects. Description, links. [Open Source] - ClassModeler :
A freeware tool that help C++ developer to create, manipulate and generate documentation for classes in a logical way. - C to C++ converter :
A python program that convert all files of a C project to C++, by automatically creating classes, and replacing variables and function by attributes and methods. [Open Source] - WinA&D :
A UML modeling tool that generates C++, Java or Delphi code. WinTranslator reengineers C++, Java or Delphi code into WinA&D models.
2009年11月20日 星期五
Free C, C++ Tools - 温研的专栏 (探索OS内核的奥秘) - CSDN博客
2009年4月4日 星期六
2008年12月28日 星期日
使用warbler打包JRUBY ON RAIL成為war部屬於JAVA APPLICATION SERVER
首先是安装环境,不同的软件版本可能导致不同的安装结果.我使用的环境是:
JDK------------------1.6.0_06
TOMCAT--------------6.0.16
MYSQL---------------5.0.22
JRUBY---------------1,1
RAILS----------------2.0.2
WARBLER------------0.9.5
接下来开始安装,JDK,TOMCAT,MYSQL的安装就不说了,别忘了配置JAVA_HOME环境变量.
接下来解压JRUBY,将JRUBY_HOME指向解压后的文件路径,CLASSPATH指向该路径的LIB.接下来转到JRUBY的BIN路径下,开始以下的安装;
1,安装RAILS,运行:
jruby gem install rails -r -y --no-ri --no-rdoc
目前的版本是2.0.2.
2,安装Rails框架的数据库接口和MYSQL适配器,运行:
jruby gem install activerecord-jdbc-adapter -r -y --no-ri --no-rdoc
jruby gem install activerecord-jdbcmysql-adapter -r -y --no-ri --no-rdoc
这里要说明一下,有些资料说要安装ActiveRecord-JDBC,其实ActiveRecord-JDBC和activerecord- jdbc-adapter是同一种东西,只是名字换了,版本不同,ActiveRecord-JDBC的版本是0.5,activerecord- jdbc-adapter现在是0.8.另外因为安装了activerecord-jdbcmysql-adapter,所以java语言MySQL数据 库接口软件包就不用下载安装了.
以上的模块安装完毕就可以创建一个RAILS工程了,例如:jruby -S rails demo
随后修改config/database.yml,像是这样:
adapter: jdbcmysql
hostname: localhost
database: test
username: root
password:
(PS: classpath 加入 mysql jdbc driver 的jar file)
这里再补充一点,有的资料说要修改config/environment.rb,要添加
if RUBY_PLATFORM =~ /java/
require 'rubygems'
RAILS_CONNECTION_ADAPTERS = %w(jdbc)
end
其实这项修改是针对RAILS2.0以前的版本的,现在的2.0.2已经不用改了.这一点在activerecord-jdbc-adapter的文档有说明.
以上设置完毕就可以启动WEBrick运行RAILS程序了.下面再说说RAILS程序如何部署到TOMCAT中.Goldspike已经稍显陈旧了,现在我们可以使用更好的warbler.在JRUBY的BIN路径下运行:
jruby gem install warbler -r -y --no-ri --no-rdoc
这样warbler就安装好了,接下来如果在RAILS工程下打包,是可以生成.war文件的,但是放在TOMCAT下跑会有问题,原因是因为 warbler没有把数据库连接的内容打到包里去.其实这也不是warbler的BUG,warbler无法知道用户连接何种数据库以及用什么方式连接, 所以你需要自己配一下,修改jruby-1.1\lib\ruby\gems\1.8\gems\warbler-0.9.5\generators \warble\templates\warble.rb文件,在以下的位置:
# config.gems = ["activerecord-jdbc-adapter", "jruby-openssl"]
# config.gems << "tzinfo"
# config.gems["rails"] = "1.2.3"
加入:
%w{jdbc-mysql activerecord-jdbcmysql-adapter activerecord-jdbc-adapter}.each{|g| config.gems << g}
注意,上面的warble.rb其实并不是warbler打包的配置文件,它是一个生成配置文件的模板文件,要生成配置文件须要到RAILS工程路径下运行:
jruby -S warble config
这时你在工程路径下config文件夹会找到一个warble.rb,这才是warbler打包的配置文件.上面的添加内容你也可以不在模板文件中添加,而是直接在这里添加.这一步完成后就可以打包了,运行:
jruby -S warble war
把.war文件拷贝到TOMCAT的webapps下就可以运行了,但是会看到以下错误:
Rails Error: No :secret given to the #protect_from_forgery call. Set that or use a session store capable of generating its own keys (Cookie Session Store)
解决的对策是编辑该工程的web.xml文件,添加以下内容
jruby.session_store
db
以上的修改也可以在模板文件jruby-1.1\lib\ruby\gems\1.8\gems\warbler-0.9.5\web.xml.erb中进行,这样就不用每次都要修改工程的web.xml文件了.现在一切正常了.
JDK------------------1.6.0_06
TOMCAT--------------6.0.16
MYSQL---------------5.0.22
JRUBY---------------1,1
RAILS----------------2.0.2
WARBLER------------0.9.5
接下来开始安装,JDK,TOMCAT,MYSQL的安装就不说了,别忘了配置JAVA_HOME环境变量.
接下来解压JRUBY,将JRUBY_HOME指向解压后的文件路径,CLASSPATH指向该路径的LIB.接下来转到JRUBY的BIN路径下,开始以下的安装;
1,安装RAILS,运行:
jruby gem install rails -r -y --no-ri --no-rdoc
目前的版本是2.0.2.
2,安装Rails框架的数据库接口和MYSQL适配器,运行:
jruby gem install activerecord-jdbc-adapter -r -y --no-ri --no-rdoc
jruby gem install activerecord-jdbcmysql-adapter -r -y --no-ri --no-rdoc
这里要说明一下,有些资料说要安装ActiveRecord-JDBC,其实ActiveRecord-JDBC和activerecord- jdbc-adapter是同一种东西,只是名字换了,版本不同,ActiveRecord-JDBC的版本是0.5,activerecord- jdbc-adapter现在是0.8.另外因为安装了activerecord-jdbcmysql-adapter,所以java语言MySQL数据 库接口软件包就不用下载安装了.
以上的模块安装完毕就可以创建一个RAILS工程了,例如:jruby -S rails demo
随后修改config/database.yml,像是这样:
adapter: jdbcmysql
hostname: localhost
database: test
username: root
password:
(PS: classpath 加入 mysql jdbc driver 的jar file)
这里再补充一点,有的资料说要修改config/environment.rb,要添加
if RUBY_PLATFORM =~ /java/
require 'rubygems'
RAILS_CONNECTION_ADAPTERS = %w(jdbc)
end
其实这项修改是针对RAILS2.0以前的版本的,现在的2.0.2已经不用改了.这一点在activerecord-jdbc-adapter的文档有说明.
以上设置完毕就可以启动WEBrick运行RAILS程序了.下面再说说RAILS程序如何部署到TOMCAT中.Goldspike已经稍显陈旧了,现在我们可以使用更好的warbler.在JRUBY的BIN路径下运行:
jruby gem install warbler -r -y --no-ri --no-rdoc
这样warbler就安装好了,接下来如果在RAILS工程下打包,是可以生成.war文件的,但是放在TOMCAT下跑会有问题,原因是因为 warbler没有把数据库连接的内容打到包里去.其实这也不是warbler的BUG,warbler无法知道用户连接何种数据库以及用什么方式连接, 所以你需要自己配一下,修改jruby-1.1\lib\ruby\gems\1.8\gems\warbler-0.9.5\generators \warble\templates\warble.rb文件,在以下的位置:
# config.gems = ["activerecord-jdbc-adapter", "jruby-openssl"]
# config.gems << "tzinfo"
# config.gems["rails"] = "1.2.3"
加入:
%w{jdbc-mysql activerecord-jdbcmysql-adapter activerecord-jdbc-adapter}.each{|g| config.gems << g}
注意,上面的warble.rb其实并不是warbler打包的配置文件,它是一个生成配置文件的模板文件,要生成配置文件须要到RAILS工程路径下运行:
jruby -S warble config
这时你在工程路径下config文件夹会找到一个warble.rb,这才是warbler打包的配置文件.上面的添加内容你也可以不在模板文件中添加,而是直接在这里添加.这一步完成后就可以打包了,运行:
jruby -S warble war
把.war文件拷贝到TOMCAT的webapps下就可以运行了,但是会看到以下错误:
Rails Error: No :secret given to the #protect_from_forgery call. Set that or use a session store capable of generating its own keys (Cookie Session Store)
解决的对策是编辑该工程的web.xml文件,添加以下内容
以上的修改也可以在模板文件jruby-1.1\lib\ruby\gems\1.8\gems\warbler-0.9.5\web.xml.erb中进行,这样就不用每次都要修改工程的web.xml文件了.现在一切正常了.
2008年12月25日 星期四
訂閱:
文章 (Atom)