Show pageOld revisionsBacklinksExport to PDFBack to top This page is read only. You can view the source, but not change it. Ask your administrator if you think this is wrong. ~~NOTOC~~ ====== User Software :: CR-Tools :: Development ======= - [[#Organization of the source code]] - [[#Creating a new application]] ==== Organization of the source code ==== After the check-out -- which will take a while -- you will be left with a new directory tree organized as follows: <file> lofarsoft |-- CMakeLists.txt |-- build |-- data |-- devel_common |-- doc |-- external |-- release | |-- bin | |-- include | `-- lib `-- src |-- CR-Tools | |-- CMakeLists.txt | |-- apps | |-- doc | |-- implement | |-- scripts | `-- test `-- DAL </file> In this we have: * **usg** is the root of the User Software code tree -- go there if you want to synchronize your local version against the repository. * **build** is used for building individual packages in the code distribution; using a separate directory for this purpose makes it easy to simply erase all compile and link attempts and start again from a clean plate. * **devel_common** hold common tools for development; this includes e.g. the find scripts for CMake or file templates for creating new C++ classes. Unless you consider collaborating on the framework, you will not need to touch this (but you will need it). * **doc** contains a local version of the Doxygen-based source code documentation; just go in there, fire up Doxygen and get an up-to-date version of the source code documentation. * **external** hosts the various external packages which will be required to build parts of the LOFAR User Software; the main change her w.r.t. to old LOPES-Tools is, that critical components are distributed along with the stuff we are writing ourselves. This directory also contains **casacore**, a collection of the core libraries of the **CASA** system. ==== Creating a new application ==== __Note:__ At the time being there is no automated manner by which to handle the creation of a new application. - Create a **new source file** in the applications directory <code> lofarsoft `-- src `-- CR-Tools |-- apps <-- new application goes here | `-- CMakeLists.txt |-- implement `-- test </code> - Add an entry to the ''CMakeLists.txt'' in the applications directory: <code cmake> ## ------------------------------------------------------------------- ## simStationBeam if (HAVE_CASACORE) add_executable (simStationBeam simStationBeam.cc) ## linker instructions target_link_libraries (simStationBeam cr) ## installation instructions install (TARGETS simStationBeam RUNTIME DESTINATION bin LIBRARY DESTINATION lib ARCHIVE DESTINATION lib ) endif (HAVE_CASACORE) </code> \\ ---- <- [[public:user software:User Software]] • [[public:user software:CR-Tools]] CKG Edit Last modified: 2017-03-08 15:27by 127.0.0.1 Log In