📄 yolinux tutorial - software development on linux.mht
字号:
tool=20
<LI><A href=3D"http://www.graphviz.org/">GraphViz</A> - ATT =
Graph=20
Visualization for graph layout. Used by dOxygen for class =
diagram=20
annotation. <BR>See <A=20
=
href=3D"http://www.yolinux.com/TUTORIALS/LinuxTutorialC++CodingStyle.html=
#AUTODOCUMENTATION">YoLinux=20
C++ dOxygen tutorial</A>=20
<LI><A href=3D"http://uml.sourceforge.net/index.php">Umbrello =
UML=20
Modeller</A>=20
<LI><A =
href=3D"http://www.ideogramic.com/products/uml/">IDeogramic</A> -=20
UML modeling tool. (Commercial product)=20
<LI><A href=3D"http://www.lysator.liu.se/~alla/dia/">DIA</A>: =
[<A=20
=
href=3D"http://www.lysator.liu.se/~alla/dia/umltut/index.html">DIA UML=20
tutorial</A>]=20
<LI><A =
href=3D"http://www.lysator.liu.se/~alla/dia/links.html">DIA=20
links/tools</A>=20
<LI><A href=3D"http://www.gentleware.com/">Poseidon</A> - =
Written in JAVA=20
to support all platforms including Linux. Eclipse plugin =
support.=20
<LI><A href=3D"http://medoosa.sourceforge.net/">Medoosa</A> - <A =
href=3D"http://cpp2dia.sourceforge.net/">cpp2dia</A> - C++ to =
UML=20
<LI><A href=3D"http://www.aonix.com/ameos.html">Ameos</A> - =
Native Linux=20
UML and MDA design tool.=20
<LI><A href=3D"http://bouml.free.fr/">BOUML</A> - Reverse =
engineering.=20
</LI></UL>
<P><B>Commercial Design Tools:</B>=20
<UL>
<LI><A href=3D"http://www.magicdraw.com/">MagicDraw</A>=20
<LI><A=20
=
href=3D"http://www.borland.com/us/products/together/index.html">Borland=20
Together</A> [<A=20
=
href=3D"http://www.borland.com/together/controlcenter/index.html">Control=
=20
Center</A>]=20
<LI><A=20
=
href=3D"http://www-306.ibm.com/software/awdtools/developer/rose/index.htm=
l">IBM/Rational=20
Rose</A>=20
<LI><A =
href=3D"http://www.visual-paradigm.com/">Visual-Paradigm.com</A>:=20
UML amd Visual Architect <BR>[<A=20
=
href=3D"http://www.softplatz.com/Soft/Development/Compilers-Interpreters/=
Visual-Paradigm-for-UML-Professional-Edition-for-Linux.html">Linux=20
community edition</A>] </LI></UL>
<P><A name=3DCMTOOLS></A>
<HR>
<TABLE cellSpacing=3D0 cellPadding=3D2 width=3D"100%" border=3D0>
<TBODY>
<TR bgColor=3D#ffcc33>
<TD><B><BIG>CM: Software Change Management and Configuration=20
Management:</BIG></B></TD></TR></TBODY></TABLE>
<P>
<UL>
<LI><B>Change Management (CM) Versioning systems and =
control:</B>=20
<TABLE cellSpacing=3D2 cellPadding=3D2 border=3D1>
<TBODY>
<TR>
<TD vAlign=3Dtop><A=20
=
href=3D"http://www.yolinux.com/TUTORIALS/LinuxSubversionAndTracServer.htm=
l"><B>Subversion=20
/ Trac</B></A> (YoLinux tutorial)</TD>
<TD>Subversion is a version control CVS replacement. <BR>[<A =
=
href=3D"http://www.yolinux.com/TUTORIALS/Subversion.html"><B>YoLinux=20
Subversion user TUTORIAL</B></A>]</TD></TR>
<TR>
<TD vAlign=3Dtop><A=20
=
href=3D"http://www.rational.com/products/clearcase/index.jsp">IBM/Rationa=
l:=20
Clearcase</A></TD>
<TD vAlign=3Dtop>Commercial product.<BR>YoLinux Tutorials:
<UL>
<LI><A=20
=
href=3D"http://www.yolinux.com/TUTORIALS/ClearcaseCommands.html">Clearcas=
e=20
commands</A>=20
<LI><A=20
=
href=3D"http://www.yolinux.com/TUTORIALS/LinuxClearcaseClient.html">Clear=
case=20
client installation</A>=20
<LI><A=20
=
href=3D"http://www.yolinux.com/TUTORIALS/LinuxClearcaseServerInstallation=
.html">Clearcase=20
server installation</A></LI></UL></TD></TR>
<TR>
<TD><A=20
=
href=3D"http://www.yolinux.com/TUTORIALS/LinuxTutorialRCSinto.html">RCS</=
A></TD>
<TD>Revision Control System. <A=20
=
href=3D"http://www.yolinux.com/TUTORIALS/LinuxTutorialRCSinto.html">YoLin=
ux=20
Tutorial</A></TD></TR>
<TR>
<TD><A=20
=
href=3D"http://www.yolinux.com/TUTORIALS/LinuxTutorialCVSintro.html">CVS<=
/A></TD>
<TD>Concurrent Versions System. <A=20
=
href=3D"http://www.yolinux.com/TUTORIALS/LinuxTutorialCVSintro.html">YoLi=
nux=20
Tutorial</A></TD></TR>
<TR>
<TD><A =
href=3D"http://www.mozilla.org/bonsai.html">Bonsai</A>/<A=20
href=3D"http://lxr.linux.no/">LXR</A>/<A=20
href=3D"http://glimpse.cs.arizona.edu/">Glimpse</A></TD>
<TD>Web front-end CVS browsing and indexing engine for =
CVS</TD></TR>
<TR>
<TD><A=20
=
href=3D"http://www.ximian.com/products/ximian_red_carpet/">Ximian=20
Red Carpet</A></TD>
<TD>Automated Software Maintenance and Version =
Management</TD></TR>
<TR>
<TD><A=20
=
href=3D"http://www.netcraft.com.au/geoffrey/katie/">Katie</A></TD>
<TD>Rational Clearcase style of filesystem browsing of =
source code=20
repository. Uses PostgreSQL database.</TD></TR>
<TR>
<TD><A href=3D"http://www.mks.com/products/sie/">MKS: Source =
Integrity</A></TD>
<TD>Commercial product</TD></TR>
<TR>
<TD><A=20
=
href=3D"http://www.merant.com/pvcs/products/version_manager/index.html">P=
VCS:=20
Version Manager</A></TD>
<TD>Commercial product</TD></TR>
<TR>
<TD><A href=3D"http://www.bitkeeper.com/">BitKeeper</A></TD>
<TD>Commercial product</TD></TR>
<TR>
<TD><A href=3D"http://www.serena.com/">Serena: Change =
management=20
software. Source code, web content, ...</A></TD>
<TD vAlign=3Dtop>Commercial product</TD></TR>
<TR>
<TD><A href=3D"http://www.aldon.com/lm/">Alodon Lifecycle=20
Manager</A></TD>
<TD>Enterprise Software Configuration, Change Management,=20
deployment</TD></TR>
<TR>
<TD><A=20
=
href=3D"http://sourceforge.net/projects/sourcepuller/">SourcePuller</A></=
TD>
<TD>Bitkeeper compatable source code management=20
client.</TD></TR></TBODY></TABLE></LI></UL>
<P><A name=3DBUILD></A>
<HR>
<TABLE cellSpacing=3D0 cellPadding=3D2 width=3D"100%" border=3D0>
<TBODY>
<TR bgColor=3D#ffcc33>
<TD><B><BIG>Build Systems:</BIG></B></TD></TR></TBODY></TABLE>
<P>
<LI><B>Build systems:</B>=20
<UL>
<LI><A href=3D"http://www.gnu.org/software/make/">GNU =
gmake/make</A>: GNU=20
make is a build system based on the original UNIX "make" build =
system=20
but with more features. Install RPM package: <TT>make</TT> =
<BR><A=20
=
href=3D"http://www.gnu.org/software/make/manual/html_chapter/make_toc.htm=
l">GNU=20
make manual</A>=20
<LI><A href=3D"http://www.scons.org/">scons</A>: Newer python =
based, cross=20
platform build system. Great for cross platform development =
(i.e.=20
MS/Windows and Linux/Unix) </LI></UL>
<P><A name=3DMAKECROSSPLATFORM></A>
<P>
<HR>
<TABLE cellSpacing=3D0 cellPadding=3D2 width=3D"100%" border=3D0>
<TBODY>
<TR bgColor=3D#ffcc33>
<TD><B><BIG>GNU Makefile for cross platform=20
deployment:</BIG></B></TD></TR></TBODY></TABLE>
<P>
<H4>GNU Makefile OS dependencies:</H4>Makefiles can use defined OS =
variables. Cygwin sets <TT>$OS</TT> to "MS/Windows-Cygwin". This =
does not=20
seem to be set for other OS's but can be set in the system profile =
or it=20
can be explicitly set as in the example below.=20
<DL>
<DD>
<TABLE cellSpacing=3D1 cellPadding=3D4 width=3D"100%" =
bgColor=3D#000000=20
border=3D1>
<TBODY>
<TR bgColor=3D#c0c0c0>
<TD><PRE>OS =3D $(shell uname -s)
ifeq "$(OS)" "CYGWIN_NT-5.0"
OS_DIR =3D win-i32
CC =3D /usr/bin/g++
CPPFLAGS =3D -g -mms-bitfields -mno-cygwin -mwindows
LDFLAGS =3D -g -mms-bitfields -mno-cygwin -mwindows
AR =3D /usr/bin/ar
CP =3D /usr/bin/cp
MKDIR =3D /usr/bin/mkdir
RM =3D /usr/bin/rm
ECHO =3D /usr/bin/echo
TOUCH =3D /usr/bin/touch
endif
ifeq "$(OS)" "Linux"
OS_DIR =3D linux-i32
CC =3D /usr/bin/g++
CPPFLAGS =3D -g
LDFLAGS =3D -g
AR =3D /usr/bin/ar
CP =3D /bin/cp
MKDIR =3D /bin/mkdir
RM =3D /bin/rm
ECHO =3D /bin/echo
TOUCH =3D /bin/touch
endif
ifeq "$(OS)" "SunOS"
OS_DIR =3D sun-sparc
CC =3D /usr/local/bin/g++
CPPFLAGS =3D -g
LDFLAGS =3D -g
AR =3D /usr/ccs/bin/ar
CP =3D /bin/cp
MKDIR =3D /bin/mkdir
RM =3D /bin/rm
ECHO =3D /bin/echo
TOUCH =3D /bin/touch
endif
ifeq "$(OS)" "IRIX64"
# SGI
OS_DIR=3Dsgi-mips
CC=3D/usr/bin/CC
CPPFLAGS =3D -g -c -LANG:std -n32 -ptused
LDFLAGS =3D -v -g -LANG:std -n32 -ptused
AR =3D /usr/bin/ar
CP =3D /usr/bin/cp
MKDIR =3D /sbin/mkdir
RM =3D /sbin/rm
ECHO =3D /sbin/echo
TOUCH =3D /sbin/touch
endif
...
help:
@-$(ECHO) "make all - builds executable/library"
@-$(ECHO) "make install - installs components"
@-$(ECHO) "make clean - removes object files and =
executable/library"
@-$(ECHO) "make clean_all - removes all object files, all =
object dirs, executable/library"
...
</PRE></TD></TR></TBODY></TABLE></DD></DL>
<P>Also see <A=20
=
href=3D"http://www.yolinux.com/TUTORIALS/LinuxTutorialC++.html#CPPCROSSPL=
ATFORM">YoLinux=20
C/C++ gcc/g++ cross platform tips</A>=20
<P><A name=3DAUTOCONF></A>
<HR>
<TABLE cellSpacing=3D0 cellPadding=3D2 width=3D"100%" border=3D0>
<TBODY>
<TR bgColor=3D#ffcc33>
<TD><B><BIG>Autoconf:</BIG></B></TD></TR></TBODY></TABLE>
<P>
<UL>
<LI>GNU:=20
<UL>
<LI><A =
href=3D"http://developers.sun.com/solaris/articles/gnu.html">Sun:=20
configure tutorial</A>=20
<LI><A =
href=3D"http://www.gnu.org/software/autoconf/">Autoconf</A> - <A=20
=
href=3D"http://www.gnu.org/software/autoconf/manual/autoconf-2.57/html_no=
de/autoconf_toc.html">manual</A>=20
<LI><A=20
=
href=3D"http://www.gnu.org/software/automake/automake.html">Automake</A> =
- <A=20
=
href=3D"http://www.gnu.org/software/automake/manual/html_node/index.html"=
>manual</A>=20
<LI><A=20
=
href=3D"http://www.gnu.org/software/libtool/libtool.html">Libtool</A> -=20
<A =
href=3D"http://www.gnu.org/software/libtool/manual.html">manual</A>=20
</LI></UL>
<LI><A=20
=
href=3D"http://wilma.vub.ac.be/~se5/tutorials/Autotools.html">Autoconf=20
Intro</A> - Peter Vrancx=20
<LI><A=20
=
href=3D"http://www.amath.washington.edu/~lf/codes/toolsmanual.html#SEC33"=
>Autoconf=20
example</A>=20
<LI><A href=3D"http://sources.redhat.com/autobook/">GNU =
Autoconf, Automake=20
and Libtool</A> - [<A=20
=
href=3D"http://sources.redhat.com/autobook/autobook/autobook_toc.html">On=
line=20
book</A>] [<A href=3D"http://sources.redhat.com/autoconf/">GNU=20
autoconf</A>] </LI></UL>
<P><A name=3DNIGHTLYBUILD></A>
<HR>
<TABLE cellSpacing=3D0 cellPadding=3D2 width=3D"100%" border=3D0>
<TBODY>
<TR bgColor=3D#ffcc33>
<TD><B><BIG>Automated Nightly / Continuous Build, Integration =
and=20
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -