⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 yolinux tutorial - software development on linux.mht

📁 linux下c++编程的好文章
💻 MHT
📖 第 1 页 / 共 5 页
字号:
            <TD><A=20
              =
href=3D"http://www.togethersoft.com/">Togethersoft</A><BR>(Recently=20
              purchased by Borland)</TD>
            <TD>Full IDE. Cross platform. Code and UML development in =
one IDE.=20
              JAVA, C++, IDL, ...</TD></TR>
          <TR>
            <TD>Metrowerks: <A=20
              href=3D"http://www.metrowerks.com/">CodeWarrior</A></TD>
            <TD>Code navigation, compile and compare (cross platform), =
GNU C++=20
              and JAVA</TD></TR>
          <TR>
            <TD><A href=3D"http://www.borland.com/">Borland: C++ Builder =

5</A></TD>
            <TD>Full IDE. Cross platform desktop apps. </TD></TR>
          <TR>
            <TD><A href=3D"http://www.borland.com/kylix/">Borland: =
Kylix</A></TD>
            <TD>Rapid Application Development (RAD) environment. Develop =
for=20
              Apache, Databases (Oracle, DB2, Interbase and MySQL), =
Cross=20
              platform desktop apps. Visual Basic like Language: CLX =
(Delphi=20
              compatable)</TD></TR>
          <TR>
            <TD><A href=3D"http://www.trolltech.com/">TrollTech: =
Qt</A></TD>
            <TD>Cross platform and multi-language application =
development=20
              framework for C++</TD></TR>
          <TR>
            <TD>New Planet Software: <A=20
              href=3D"http://www.newplanetsoftware.com/medic/">Code =
Medic</A></TD>
            <TD>Works with <A=20
              href=3D"http://www.newplanetsoftware.com/jcc/">Code =
Crusader</A>=20
              (strong C++) development environment and JX (X-window C++=20
              application framework).</TD></TR>
          <TR>
            <TD><A href=3D"http://www.codeforge.com/">C-Forge</A></TD>
            <TD>Project management and complete edit/compile/debug cycle =

              support. Supports CVS, SCCS, RCS, ETAGS, C/C++ and =
FORTRAN, Querix=20
              4gl and eRuby, Qt Designer, WxWindows and your wheel =
mouse.</TD></TR>
          <TR>
            <TD><A href=3D"http://www.viosoft.com/">Arriba</A></TD>
            <TD>Embedded Software IDE. MS/Visual C++ like IDE for =
Linux.</TD></TR>
          <TR>
            <TD>WindRiver: <A=20
              =
href=3D"http://www.windriver.com/products/html/sniff.html">SNiF+</A></TD>=

            <TD>C, C++, Java, or ADA. Unix or Windows</TD></TR>
          <TR>
            <TD>Aligo: <A href=3D"http://www.aligo.com/">Omni Mobile=20
            Platform</A></TD>
            <TD>Mobile Java development (Cell phones/PDA's)</TD></TR>
          <TR>
            <TD><A href=3D"http://www.thekompany.com/products/ksg/">KDE =
Studio=20
              "Gold"</A></TD>
            <TD>C++ KDE IDE (Commercial Open =
Source)</TD></TR></TBODY></TABLE><BR><A=20
        href=3D"http://www.newplanetsoftware.com/jcc/compare.php">New =
Planet=20
        Software product comparison of IDE's.</A>=20
        <P></P></LI></UL><A name=3DMEMORYTOOLS></A>
      <P>
      <HR>

      <TABLE cellSpacing=3D0 cellPadding=3D2 width=3D"100%" border=3D0>
        <TBODY>
        <TR bgColor=3D#ffcc33>
          <TD><B><BIG>Memory Debugging Development=20
        Tools:</BIG></B></TD></TR></TBODY></TABLE>
      <UL>
        <LI><B>Memory Debugging:</B>=20
        <TABLE cellSpacing=3D2 cellPadding=3D2 border=3D1>
          <TBODY>
          <TR>
            <TD><A=20
              =
href=3D"http://www.inf.ethz.ch/personal/biere/projects/ccmalloc/">ccmallo=
c</A></TD>
            <TD>ETH Zurich: C/C++, Checks for illegal memory access and =
leaks.=20
              Cannot detect illegal memory reads. </TD></TR>
          <TR>
            <TD><A =
href=3D"http://www.gnu.org/software/checker/checker.html">GNU=20
              Checker</A></TD>
            <TD>Warns of using uninitialized variable or memory or =
unallocated=20
              memory. </TD></TR>
          <TR>
            <TD><A=20
              =
href=3D"http://dickey.his.com/dbmalloc/dbmalloc.html">dbmalloc</A></TD>
            <TD>C malloc, memory, string, and bstring </TD></TR>
          <TR>
            <TD><A=20
              =
href=3D"http://www.cs.bris.ac.uk/~mm7323/DbMalloc/">DbMalloc</A></TD>
            <TD>Another dbmalloc. Leak detector, multi-threaded. C =
malloc,=20
              calloc, realloc, strdup and free</TD></TR>
          <TR>
            <TD><A=20
href=3D"http://quorum.tamu.edu/jon/gnu/"><B>debauch</B></A></TD>
            <TD>Modified from XFree86 memleak. Detects leaks, corrupted=20
              memory. To be used with GDB.</TD></TR>
          <TR>
            <TD><A href=3D"http://dmalloc.com/">dmalloc</A></TD>
            <TD>C malloc, realloc, calloc, free. Memory-leak tracking,=20
              fence-post write detection, file/line number reporting =
</TD></TR>
          <TR>
            <TD><A =
href=3D"http://www.perens.com/FreeSoftware/"><B>Electric=20
              Fence</B></A></TD>
            <TD>malloc() debugger. Stops program on the instruction that =

              overruns or under-runs a malloc buffer. </TD></TR>
          <TR>
            <TD><A=20
              =
href=3D"http://packages.debian.org/unstable/devel/fda.html">fda</A></TD>
            <TD>FDA provides a toolkit for validating pointers, checking =
for=20
              leaks, gathering memory statistics, bounds checking... =
</TD></TR>
          <TR>
            <TD><A=20
              =
href=3D"http://sources.isc.org/devel/memleak/leak.txt">leak</A></TD>
            <TD>Logs all malloc/realloc/free calls to dbm files with =
filename=20
              and line number. Realloc integrity. </TD></TR>
          <TR>
            <TD><A href=3D"http://www.andreasen.org/LeakTracer/">Leak=20
            Tracer</A></TD>
            <TD>C++ program for checking memory leaks. </TD></TR>
          <TR>
            <TD><A =
href=3D"http://libcw.sourceforge.net/debugging/">libcw</A></TD>
            <TD>Full-featured debugging support library for C++ =
developers.=20
          </TD></TR>
          <TR>
            <TD><A=20
              =
href=3D"http://www.avayalabs.com/project/libsafe/index.html"><B>libsafe</=
B></A></TD>
            <TD>Detect and handle buffer overflow and format string=20
              vulnerabilities before the hackers do. (Middleware =
software, not=20
              compiled in)</TD></TR>
          <TR>
            <TD><A=20
              =
href=3D"http://www.cs.vu.nl/~rveldema/mcheck/mcheck.html">MCheck</A></TD>=

            <TD>C/C++ memory usage and malloc checker for x86/linux. =
Detects=20
              accesses to uninitialized variables, bad pointers, double =
frees=20
              and memory leaks. </TD></TR>
          <TR>
            <TD vAlign=3Dtop><A =
href=3D"http://valgrind.kde.org/"><B>Valgrind=20
              MemCheck</B></A></TD>
            <TD vAlign=3Dtop>Part of the KDE <B>Valgrind</B> toolset. =
C/C++=20
              memory supervision. Intercepts malloc/new/free/delete. =
Detects=20
              memory leaks, uninitialised memory, inappropriate =
read/write of=20
              stack and malloc'ed blocks, some pthread errors. <A=20
              =
href=3D"http://www.ibiblio.org/pub/Linux/docs/HOWTO/other-formats/html_si=
ngle/Valgrind-HOWTO.html">Valgrind=20
              HOWTO</A><BR>This tool is often rated the best Open Source =
memory=20
              debugging tools.</TD></TR>
          <TR>
            <TD><A=20
            =
href=3D"ftp://ftp.x.org/pub/R6.4/xc/util/memleak/">Memleak</A></TD>
            <TD>Part or X11R6.4 </TD></TR>
          <TR>
            <TD><A =
href=3D"http://bss.lu/Memdebug/Memdebug.html">Memdebug</A></TD>
            <TD><BR></TD></TR>
          <TR>
            <TD><A=20
              =
href=3D"http://people.redhat.com/otaylor/memprof/"><B>MemProf</B></A></TD=
>
            <TD>Red Hat GUI (Gtk/Gnome) tool for profiling and leak =
detection.=20
              Preloads it's own runtime library. Supports threaded and =
forked=20
              programs.</TD></TR>
          <TR>
            <TD><A =
href=3D"http://www.engelschall.com/sw/mm/">MM</A></TD>
            <TD>Shared memory abstraction layer library.</TD></TR>
          <TR>
            <TD><A=20
            =
href=3D"http://www.cbmamiga.demon.co.uk/mpatrol/">mpatrol</A></TD>
            <TD>Profile and log/trace malloc/free/new[]</TD></TR>
          <TR>
            <TD><A =
href=3D"http://freshmeat.net/projects/mpr/">mpr</A></TD>
            <TD>Log malloc/free calls</TD></TR>
          <TR>
            <TD><A =
href=3D"http://fscked.org/proj/njamd.shtml">NJAMD</A></TD>
            <TD>Replaces malloc. Looks for overflows,underflows, writes =
to=20
              freed memory, leaks. C/C++, thread safe.</TD></TR>
          <TR>
            <TD><A=20
              =
href=3D"http://www.geocities.com/ipsgvm/libyama/index.html">YaMa</A></TD>=

            <TD>Memory allocator with leak tracking and some anti-heap=20
              corruption facilities. malloc, calloc, realloc and =
free.</TD></TR>
          <TR>
            <TD><A =
href=3D"http://www3.hmc.edu/~neldredge/yamd/">YAMD</A></TD>
            <TD>Yet Another Malloc Debugger: C/C++ </TD></TR>
          <TR>
            <TD><A =
href=3D"http://web.inter.nl.net/hcc/Haj.Ten.Brugge/">gcc w/=20
              bounds checking</A></TD>
            <TD>GCC bounds checking compiler patch. Adds the=20
              <TT>-fbounds-checking</TT> flag to gcc. </TD></TR>
          <TR>
            <TD><A href=3D"http://www.cacheprof.org/">Cacheprof</A></TD>
            <TD>Profile/investigate cache effects in x86 programs. =
<BR>Works=20
              with gcc compiler: <TT>cacheprof gcc -O -o myprog =
myprog.c</TT>.=20
            </TD></TR></TBODY></TABLE>
        <P></P>
        <LI><B>Commercial Memory debugging tools:</B>=20
        <TABLE cellSpacing=3D2 cellPadding=3D2 border=3D1>
          <TBODY>
          <TR>
            <TD><A href=3D"http://www.aprobe.com/">Aprobe</A></TD>
            <TD>Memory and performance audits.</TD></TR>
          <TR>
            <TD><A href=3D"http://www.etnus.com/">Etnus</A> =
TotalView</TD>
            <TD>Memory leak detection including threaded =
software.</TD></TR>
          <TR>
            <TD><A =
href=3D"http://www.parasoft.com/products/insure/">Parasoft:=20
              Insure++</A></TD>
            <TD>Memory corruption and memory leak error detection.=20
          C/C++</TD></TR></TBODY></TABLE>
        <P></P>
        <LI><B>Parasoft Insure++ Notes/Example:</B>=20
        <DL>
          <DD><B>Configure Insure++:</B>=20
          <OL>
            <LI>Add to path in <TT>.bash_profile</TT>:=20
            <TT>/opt/parasoft/Insure++/bin.linux2/cpp/</TT>=20
            <LI>turn on graphical interface: <BR>Add to the file=20
            <TT>/opt/parasoft/Insure++/.psrc</TT>=20
            <DL>
              <DD>
              <TABLE>
                <TBODY>
                <TR bgColor=3D#c0c0c0>
                  <TD><PRE>Insure++.inuse on=20
        =
</PRE></TD></TR></TBODY></TABLE></DD></DL></LI></OL><B>Compile/run:</B>=20

          <OL>
            <LI>Test with example: <TT>cd=20
            /opt/parasoft/Insure++/examples/cpp/</TT>=20
            <LI>Compile: <TT>insure -g -o leak leak.C</TT>=20
            <LI>Run: <TT>./leak</TT> </LI></OL><BR><B>Output from =
run:</B>=20
          <TABLE width=3D"100%">
            <TBODY>
            <TR>
              <TD vAlign=3Dtop><IMG=20
                =
src=3D"http://www.yolinux.com/TUTORIALS/images/insureRunLeak.gif"></TD></=
TR>
            <TR>
              <TD vAlign=3Dtop><IMG=20
                =
src=3D"http://www.yolinux.com/TUTORIALS/images/insureRunLeakMemoryReport.=
gif"=20
                align=3Dright></TD></TR></TBODY></TABLE></DD></DL>
        <P></P>
        <LI><B>Alternate memory functions:</B>=20
        <TABLE cellSpacing=3D2 cellPadding=3D2 border=3D1>
          <TBODY>
          <TR>
            <TD><A =
href=3D"http://www.hpl.hp.com/personal/Hans_Boehm/gc/">Boem=20
              Garbage Collector</A></TD>
            <TD>A garbage collector for C and C++. Replaces =
malloc/new</TD></TR>
          <TR>
            <TD><A=20
              =
href=3D"ftp://ftp.cs.toronto.edu/pub/moraes/malloc.tar.gz">CSRI</A></TD>
            <TD>(tar download)</TD></TR>
          <TR>
            <TD><A=20
              =
href=3D"ftp://ftp.cs.colorado.edu/pub/misc/malloc-implementations/">GNU=20
              Malloc</A></TD>
            <TD>(tar download)</TD></TR>
          <TR>
            <TD><A=20
            =
href=3D"http://www.cs.utexas.edu/users/emery/hoard/">Hoard</A></TD>
            <TD>Memory allocator for multiprocessors. Improves =
multithreaded=20
              program performance on multiprocessor systems.</TD></TR>
          <TR>
            <TD><A href=3D"http://www.malloc.de/en/index.html">Ptmalloc =
(GNU C=20
              library)</A></TD>
            <TD>Malloc extended for SMP</TD></TR>
          <TR>
            <TD><A =
href=3D"ftp://ftp.cs.colorado.edu/pub/misc/qf.c">Quick Fix=20
              Malloc</A></TD>
            <TD>qf.c: Optimized for low memory use and optimal=20
          allignment.</TD></TR>
          <TR>
            <TD><A =
href=3D"http://www.research.att.com/sw/download/">vmalloc=20
              (Part of ast)</A></TD>
            <TD>AT&amp;T Labs </TD></TR></TBODY></TABLE></LI></UL>
      <P><A name=3DDESIGN></A>
      <HR>

      <TABLE cellSpacing=3D0 cellPadding=3D2 width=3D"100%" border=3D0>
        <TBODY>
        <TR bgColor=3D#ffcc33>
          <TD><B><BIG>Software =
Design:</BIG></B></TD></TR></TBODY></TABLE>
      <P>
      <UL>
        <LI><A href=3D"http://argouml.tigris.org/">Argo</A> - GUI UML =

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -