Team:USTC Software/projectResources
From 2010.igem.org
(New page: ==Overview== We use [http://en.wikipedia.org/wiki/C%2B%2B C++] as our programming language, [http://www.cmake.org/ cmake] to manage our project, [http://git-scm.com/ git] to [http://en.w...) |
|||
Line 1: | Line 1: | ||
- | == | + | =Resources= |
- | We use [http://en.wikipedia.org/wiki/C%2B%2B C++] as our programming language, [http://www.cmake.org/ cmake] to manage our project, [http://git-scm.com/ git] to [http://en.wikipedia.org/wiki/Revision_control reversion control], [http://dinosaur.compilertools.net/ yacc and lex] to build our model file input assistant tool, [http://qt.nokia.com/ Qt4] to build the GUI, [http://sourceforge.net/projects/dbxml-core/ Oracle dbxml] as our Database manager system. Other wise, several 3-rd party open source software or tools are used in our iGame source code. [http://sbml.org/Software/libSBML Libsbml] is used to deal with sbml file operations. Qwt and Qwtplot3D are used for simulation data visual system. At the early stage of our project [http://www.tbi.univie.ac.at/~raim/odeSolver/ SBML Ode Solver] and [https://computation.llnl.gov/casc/sundials/main.html Sundials] were our main ode solver to produce the simulation data from our sbml model file, because the latest [http://www.tbi.univie.ac.at/~raim/odeSolver/ SBML Ode Solver] is 1.6.0, developed in 2005, which is out date and fail to support the newest sbml Level 2 Version 4 standard. We succeed in updating the SBML Ode Solver 1.6.0 to support SBML L2V4, but some unfixed bugs was found, so we turn to a better ode solver [http://www.copasi.org/tiki-view_articles.php copasi], which moreover can flexibly display the ode solver output data and modify parameter to adjust the simulation output data curve. Obviously, those open source library and tools convenient to our design and implementation and help us to focus on our core working. | + | On this page we provide the information of downloading the executable files and source files of our project, and the documentation to introduce the source code build steps and system prerequisites. |
+ | ==Downloads== | ||
+ | <p> | ||
+ | Executable files can be download at [https://sourceforge.net/projects/ustc-igame/files/ SourcForge] <br/> | ||
+ | Project source code is available at [http://github.com/jkdirac/igame gitHub] | ||
+ | </p> | ||
+ | |||
+ | ==Source Code OverView== | ||
+ | We use [http://en.wikipedia.org/wiki/C%2B%2B C++] as our programming language, [http://www.cmake.org/ cmake] to manage our project, [http://git-scm.com/ git] to [http://en.wikipedia.org/wiki/Revision_control reversion control], [http://dinosaur.compilertools.net/ yacc and lex] to build our model file input assistant tool, [http://qt.nokia.com/ Qt4] to build the GUI, [http://sourceforge.net/projects/dbxml-core/ Oracle dbxml] as our Database manager system. Other wise, several 3-rd party open source software or tools are used in our iGame source code. [http://sbml.org/Software/libSBML Libsbml] is used to deal with sbml file operations. Qwt and Qwtplot3D are used for simulation data visual system. At the early stage of our project [http://www.tbi.univie.ac.at/~raim/odeSolver/ SBML Ode Solver] and [https://computation.llnl.gov/casc/sundials/main.html Sundials] were our main ode solver to produce the simulation data from our sbml model file, because the latest [http://www.tbi.univie.ac.at/~raim/odeSolver/ SBML Ode Solver] is 1.6.0, developed in 2005, which is out of date and fail to support the newest sbml Level 2 Version 4 standard. We succeed in updating the SBML Ode Solver 1.6.0 to support SBML L2V4, but some unfixed bugs was found, so we turn to a better ode solver [http://www.copasi.org/tiki-view_articles.php copasi], which moreover can flexibly display the ode solver output data and modify parameter to adjust the simulation output data curve. Obviously, those open source library and tools convenient to our design and implementation and help us to focus on our core working. | ||
- | === | + | ==Build instruction== |
+ | ===Prerequisites=== | ||
<p> | <p> | ||
- | To sum up, | + | To sum up, iGame should be complied and run in computers with following tools and libraries: |
* '''C++ development environment'''. In Linux should be GNU C++ Tool Chain And in windows MingW Tool Chain. | * '''C++ development environment'''. In Linux should be GNU C++ Tool Chain And in windows MingW Tool Chain. | ||
* '''Qt4''' develop and run-time environment. '''Qt4.7''' is requirement. Editor or IDE like QtCreator or Vim is also needed. | * '''Qt4''' develop and run-time environment. '''Qt4.7''' is requirement. Editor or IDE like QtCreator or Vim is also needed. | ||
Line 11: | Line 20: | ||
* '''dbxml''', The Berkeley xml native database, is available at [http://sourceforge.net/projects/dbxml-core/ http://sourceforge.net/projects/dbxml-core/] | * '''dbxml''', The Berkeley xml native database, is available at [http://sourceforge.net/projects/dbxml-core/ http://sourceforge.net/projects/dbxml-core/] | ||
* '''copasi''', copasi 4.6 is a requirement. the source code and executable binary file can be downloaded at [http://www.copasi.org/tiki-index.php?page=download http://www.copasi.org/tiki-index.php?page=download], and one can follow [http://www.copasi.org/tiki-index.php?page_ref_id=115 those instruction] to build it from source code. What should be noticed is that '''copasi''' also has prerequisites, including '''LAPACK'''/'''CLAPACK''' for Maths, '''Qwt''' and '''Qwtplot3D''' for plotting, '''expat''' to parser xml, '''raptor''' The latest version of this RDF parsing library, and libsbml for deal with SBML operations. | * '''copasi''', copasi 4.6 is a requirement. the source code and executable binary file can be downloaded at [http://www.copasi.org/tiki-index.php?page=download http://www.copasi.org/tiki-index.php?page=download], and one can follow [http://www.copasi.org/tiki-index.php?page_ref_id=115 those instruction] to build it from source code. What should be noticed is that '''copasi''' also has prerequisites, including '''LAPACK'''/'''CLAPACK''' for Maths, '''Qwt''' and '''Qwtplot3D''' for plotting, '''expat''' to parser xml, '''raptor''' The latest version of this RDF parsing library, and libsbml for deal with SBML operations. | ||
- | * '''libsbml''', Version 3.4.1 is | + | * '''libsbml''', Version 3.4.1 is required. Not only it is the dependence of '''copasi''', but also the dependence of igame core code. |
+ | And libsbml should be built with configure option "./configure --enable-layout=yes --enable-compression=no --with-expat" | ||
+ | * '''Bison & Flex''' | ||
+ | To compile our code, bison and flex is required. They are used to build a expression parser in igame/core/str_cacu path. To get the those software and more detailed information, please visit [http://www.gnu.org/software/bison/ Bison site] and [http://flex.sourceforge.net/ Flex site]. | ||
</p> | </p> | ||
<p> | <p> | ||
- | + | * '''git''', to download our source code by command our source code can be downloaded in [http://github.com/jkdirac/igame github], '''git''' is helpful to download. | |
- | + | *git clone git://github.com/jkdirac/igame.git | |
- | + | ||
</p> | </p> | ||
- | + | ===Build=== | |
- | + | We use cmake to manage the build progress, cmake can generate cross-platform Makefile, we intend to make our project could be built in different operating system. Until now, only Linux operating system is tested. Windows and Mac should be supported soon. | |
- | + | Download all source code, run cmake-gui to configure the project. Pay attention to the configure information.There should be "missing ***" messages when Cmake fail to find the dependent libraries. To fix those messages, one need to assign the path of related libraries by Cmake GUI. When Makefiles are successfully generated, execute the '''Make''' command to build. | |
+ | |||
+ | <!--> | ||
==Libraries== | ==Libraries== | ||
+ | Our source code is developed in Linux environment, cross platform is also under consideration. Our project source code can be build in windows with mingw environment. There are many troubles when building in windows, the following article may be helpful. | ||
===copasi=== | ===copasi=== | ||
Line 36: | Line 50: | ||
===Qwtplot3D=== | ===Qwtplot3D=== | ||
+ | <--> | ||
- | ==Tools== | + | <!--> ==Tools== |
===dbparser=== | ===dbparser=== | ||
+ | <p> | ||
+ | When create a new model file, a simple tool named [http://github.com/jkdirac/igame/tree/master/src/tools/dbparser/ dbparser] may be helpful, It's simple and easy to use, and hope you have fun! More information can be got from it's README.txt file. | ||
+ | </p> | ||
Any question please mail jiangkun1@gmail.com | Any question please mail jiangkun1@gmail.com | ||
*Configure | *Configure | ||
Line 61: | Line 79: | ||
#math: [a+b];<br/>Define a math expression a+b, and it will be transferred to MathML Node. | #math: [a+b];<br/>Define a math expression a+b, and it will be transferred to MathML Node. | ||
The synatx is simple, have fun! | The synatx is simple, have fun! | ||
- | + | <--> | |
+ | <!--> | ||
===git=== | ===git=== | ||
===yacc&lex=== | ===yacc&lex=== | ||
Line 67: | Line 86: | ||
'''Cmake''' is a cross platform tool, which can control the compile process, configure file and generate native Makefile. '''CMake''' have a GUI version, it is easy to use, so we prefer '''CMake''' to [http://www.gnu.org/software/automake/ '''AutoMake''']. More information about '''CMake''' is available at [http://www.cmake.org/ http://www.cmake.org/] | '''Cmake''' is a cross platform tool, which can control the compile process, configure file and generate native Makefile. '''CMake''' have a GUI version, it is easy to use, so we prefer '''CMake''' to [http://www.gnu.org/software/automake/ '''AutoMake''']. More information about '''CMake''' is available at [http://www.cmake.org/ http://www.cmake.org/] | ||
- | |||
===SBML Ode Solver=== | ===SBML Ode Solver=== | ||
===Sundials=== | ===Sundials=== | ||
<--> | <--> |
Latest revision as of 18:50, 27 October 2010
Contents |
Resources
On this page we provide the information of downloading the executable files and source files of our project, and the documentation to introduce the source code build steps and system prerequisites.
Downloads
Executable files can be download at SourcForge
Project source code is available at [http://github.com/jkdirac/igame gitHub]
Source Code OverView
We use [http://en.wikipedia.org/wiki/C%2B%2B C++] as our programming language, [http://www.cmake.org/ cmake] to manage our project, [http://git-scm.com/ git] to [http://en.wikipedia.org/wiki/Revision_control reversion control], [http://dinosaur.compilertools.net/ yacc and lex] to build our model file input assistant tool, [http://qt.nokia.com/ Qt4] to build the GUI, [http://sourceforge.net/projects/dbxml-core/ Oracle dbxml] as our Database manager system. Other wise, several 3-rd party open source software or tools are used in our iGame source code. [http://sbml.org/Software/libSBML Libsbml] is used to deal with sbml file operations. Qwt and Qwtplot3D are used for simulation data visual system. At the early stage of our project [http://www.tbi.univie.ac.at/~raim/odeSolver/ SBML Ode Solver] and Sundials were our main ode solver to produce the simulation data from our sbml model file, because the latest [http://www.tbi.univie.ac.at/~raim/odeSolver/ SBML Ode Solver] is 1.6.0, developed in 2005, which is out of date and fail to support the newest sbml Level 2 Version 4 standard. We succeed in updating the SBML Ode Solver 1.6.0 to support SBML L2V4, but some unfixed bugs was found, so we turn to a better ode solver [http://www.copasi.org/tiki-view_articles.php copasi], which moreover can flexibly display the ode solver output data and modify parameter to adjust the simulation output data curve. Obviously, those open source library and tools convenient to our design and implementation and help us to focus on our core working.
Build instruction
Prerequisites
To sum up, iGame should be complied and run in computers with following tools and libraries:
- C++ development environment. In Linux should be GNU C++ Tool Chain And in windows MingW Tool Chain.
- Qt4 develop and run-time environment. Qt4.7 is requirement. Editor or IDE like QtCreator or Vim is also needed.
- CMake, to configure the project and generate the Makefile. CMake 2.8 or later version is a requirement
- dbxml, The Berkeley xml native database, is available at [http://sourceforge.net/projects/dbxml-core/ http://sourceforge.net/projects/dbxml-core/]
- copasi, copasi 4.6 is a requirement. the source code and executable binary file can be downloaded at [http://www.copasi.org/tiki-index.php?page=download http://www.copasi.org/tiki-index.php?page=download], and one can follow [http://www.copasi.org/tiki-index.php?page_ref_id=115 those instruction] to build it from source code. What should be noticed is that copasi also has prerequisites, including LAPACK/CLAPACK for Maths, Qwt and Qwtplot3D for plotting, expat to parser xml, raptor The latest version of this RDF parsing library, and libsbml for deal with SBML operations.
- libsbml, Version 3.4.1 is required. Not only it is the dependence of copasi, but also the dependence of igame core code.
- Bison & Flex
- git, to download our source code by command our source code can be downloaded in [http://github.com/jkdirac/igame github], git is helpful to download.
- git clone git://github.com/jkdirac/igame.git
Build
We use cmake to manage the build progress, cmake can generate cross-platform Makefile, we intend to make our project could be built in different operating system. Until now, only Linux operating system is tested. Windows and Mac should be supported soon. Download all source code, run cmake-gui to configure the project. Pay attention to the configure information.There should be "missing ***" messages when Cmake fail to find the dependent libraries. To fix those messages, one need to assign the path of related libraries by Cmake GUI. When Makefiles are successfully generated, execute the Make command to build.