Language Selection

English French German Italian Portuguese Spanish

Using Cscope and SilentBob to analyze source code

Filed under
HowTos

When you start learning the source code of an unfamiliar project, you don't have the knowledge of its structure or the meaning of specific functions, classes, and units in the project. You can use tags to browse for definitions, but it's hard to get an overall picture by just looking through every definition one by one. Cscope and SilentBob are two tools that can help you analyze unfamiliar source code. They help you find symbol definitions, determine where specific functions are used, determine which functions are called by other given functions, and search for strings and patterns throughout the code base. With them, you can save time by doing fast, targeted searches instead of grepping through source files by hand.

Using Cscope

Cscope is a popular utility, and most modern distributions include it. Although Cscope was originally intended only for use with C code, it actually works well with languages like C++ and Java. Cscope comes with an ncurses-based GUI, but it also supports a command-line interface to communicate with other application that can be used as front ends, including major editors such as Emacs and Vim.

SilentBob

SilentBob is another new tool for analyzing source code. It currently supports C/C++, Perl, and Python, but its plugin framework (which is not documented at the moment) enables users to add support for new languages and other features easily.

Full Story.

More in Tux Machines

Tizen News

Mozilla Firefox Quantum

  • Can the new Firefox Quantum regain its web browser market share?
    When Firefox was introduced in 2004, it was designed to be a lean and optimized web browser, based on the bloated code from the Mozilla Suite. Between 2004 and 2009, many considered Firefox to be the best web browser, since it was faster, more secure, offered tabbed browsing and was more customizable through extensions than Microsoft’s Internet Explorer. When Chrome was introduced in 2008, it took many of Firefox’s best ideas and improved on them. Since 2010, Chrome has eaten away at Firefox’s market share, relegating Firefox to a tiny niche of free software enthusiasts and tinkerers who like the customization of its XUL extensions. According to StatCounter, Firefox’s market share of web browsers has fallen from 31.8% in December 2009 to just 6.1% today. Firefox can take comfort in the fact that it is now virtually tied with its former arch-nemesis, Internet Explorer and its variants. All of Microsoft’s browsers only account for 6.2% of current web browsing according to StatCounter. Microsoft has largely been replaced by Google, whose web browsers now controls 56.5% of the market. Even worse, is the fact that the WebKit engine used by Google now represents over 83% of web browsing, so web sites are increasingly focusing on compatibility with just one web engine. While Google and Apple are more supportive of W3C and open standards than Microsoft was in the late 90s, the web is increasingly being monopolized by one web engine and two companies, whose business models are not always based on the best interests of users or their rights.
  • Firefox Nightly Adds CSD Option
    I’ve said it before and I’ll say it again: Firefox 57 is awesome — so awesome that I’m finally using it as my default browser again. But there is one thing it the Linux version of Firefox sorely needs: client-side decoration.

First Renesas based Raspberry Pi clone runs Linux

iWave’s “iW-RainboW-G23S” SBC runs Linux on a Renesas RZ/G1C, and offers -20 to 85°C support and expansion headers including a RPi-compatible 40-pin link. iWave’s iW-RainboW-G23S is the first board we’ve seen to tap the Renesas RZ/G1C SoC, which debuted earlier this year. It’s also the first Renesas based SBC we’ve seen that features the increasingly ubiquitous Raspberry Pi 85 x 56mm footprint, layout, and RPi-compatible 40-pin expansion connector. The board is also notable for providing -20 to 85°C temperature support. Read more Also: GameShell Is An Open Source And Linux-powered Retro Game Console That You’ll Love

Games: SuperTuxKart, Tannenberg, Observer