By Forrest Cook
April 21, 2009
The Gnu Compiler Collection
(GCC) is likely the most popular
compiler that runs under Linux:
"The GNU Compiler Collection includes front ends for C, C++, Objective-C, Fortran, Java, and Ada, as well as libraries for these languages (libstdc++, libgcj,...)."
The GCC project has
announced
the release of GCC version 4.4.0.
"This release is a major release, containing new features (as well as many other improvements) relative to GCC 4.3.x."
It also marks the first version in the GCC 4.4 release series.
The changes
document details the many modifications that have been made for this
new branch.
Some of the broader changes in version 4.4.0 include a number of
improvements to the optimizer, the following new
command line switches have been added:
- -findirect-inlining: makes inliner inline indirect calls that have known targets.
- -ftree-switch-conversion: if possible, turns simple initializations of scalar variables in switch statements into static array initializations.
- -ftree-builtin-call-dce: eliminates unnecessary calls to some builtin functions when the return value is not used.
- -fconserve-stack: minimizes stack usage even at the expense of slower code.
- -fno-dwarf2-cfi-asm: tells the assembler to ignore .cfi directives.
Also, the
Graphite
branch has been merged. Graphite (Gimple Represented as Polyhedra) is a framework for high-level loop optimizations that uses the
polyhedral model.
GCC now includes C, C++, and Fortran support for version 3.0 of
OpenMP,
an API specification for parallel programming.
New warning command line options include
- -Wframe-larger-than=NUMBER: warn if any stack frame is larger than NUMBER bytes.
- -Wno-mudflap: disable warnings about constructs which can not be instrumented when using -fmudflap.
C language improvements include:
- a new optimize attribute allows setting the optimize level
on a per-function basis.
- uninitialized warnings now work without enabling optimizations.
- -Wparentheses can now warn about expressions such as (!x | y).
- -Wsequence-points can now warn within if, while, do while and for blocks.
- The new -dU option allows preprocessor macro definitions to be dumped.
C++ language improvements include:
-
experimental ISO C++0x standard support has been added.
- -fdiagnostics-show-option reports errors that can be downgraded to warnings via -fpermissive.
- -Wconversion has improved warnings for invalid enumeral types.
- -Wuninitialized has improved warnings for non-static reference and const
ants for classes without constructors.
- value-initialization has been improved for objects with an empty initializer.
FORTRAN language improvements include:
- The libcpp preprocessor is now built-in and available by default.
- The new -Warray-temporaries option is available for warning about array temporaries.
- The new -fcheck-array-temporaries option notifies when an array temporary had to be created.
- The DWARF debugging model symbol generation has been improved.
- Intrinsics now default to external declarations.
- The new -falign-commons flag is available for aligning variables in COMMON blocks.
- Fortran 2003 support has been extended.
- Fortran 2008 support has been added.
libstdc++ Runtime Library improvements include:
- experimental support has been added for non-standard pointer types in containers.
- libstdc++ bug 30928 (add casts to libc overloads) has been fixed for targets running glibc 2.10 or later.
- Many other bugs have been fixed, especially in <locale>.
Target-specific improvements include:
- ARM: support is added for three new processors as well as other improvements.
- AVR: support has been added for 25 new devices.
- IA-32/x86-64: support has been added for more built-in functions, better optimization and float128.
- M68K/ColdFire: adds instruction scheduling support and more.
- MIPS: includes efficiency improvements, new options, and support for several new processors.
- picochip: an initial C-only language port has been done.
- Power Architecture and PowerPC: support for several new processors has been added.
- S/390, zSeries and System z9/z10: includes support for a new processor.
The GCC project continues to keep up with the changing processor
landscape and new language standards as they evolve.
Meanwhile, GCC progress marches on, as documented in the
GCC 4.4.1 and
GCC 4.5.0
status reports.
Comments (9 posted)
System Applications
Database Software
Version 5.1.34 of MySQL Community Server has been announced.
"
MySQL Community Server 5.1.34, a new version of the popular Open
Source Database Management System, has been released. MySQL 5.1.34 is
recommended for use on production systems.
MySQL 5.1.34 will be the final release of MySQL 5.1 for AIX 5.2, which
will be EOL'd from 30th April 2009."
Full Story (comments: none)
The April 19, 2009 edition of the PostgreSQL Weekly News
is online with the latest PostgreSQL DBMS articles and resources.
Full Story (comments: none)
Filesystem Utilities
Version 6.11 of TestDisk and PhotoRec, utilities for recovering data
from damaged disks, have been announced.
"
Both utilities are faster than previous versions.
TestDisk 6.11 can undelete files from NTFS partition
and recover deleted exFAT.
Over 50 file types have been added to PhotoRec."
Full Story (comments: none)
Interoperability
Maintenance release 3.2.11 of Samba has been
announced.
"
This is the latest bug fix release for Samba 3.2 and is the version recommended for all production Samba servers running this release series."
Comments (none posted)
Package Management
Version 4.7.0 of RPM has been announced.
"
We're pleased to announce the availability of RPM release 4.7.0. Download instructions and more detailed information are available from:
http://rpm.org/wiki/Releases/4.7.0"
Full Story (comments: none)
Printing
Version 1.3.10 of CUPS has been
announced.
"
The new release fixes 3 minor security issues as well as several printing and web interface bug fixes."
Comments (none posted)
Web Site Development
Version 9.03.0 RC2 of the Midgard2 web framework
has been announced.
"
In this release we provide Content Repository API bindings for the
following programming languages: C, Python, PHP and Objective-C.
D-Bus signals are used to inform different Midgard2 applications about
things happening in the repository, enabling for example a PHP website
and a Python background process to communicate with each other."
Full Story (comments: none)
Miscellaneous
Version 0.9.9.2 of Octopussy has been
announced.
"
Logs Analyzer, Alerter & Reporter with a Web Interface.
* Better reports with Open Flash Chart !
* RRD taxonomy bug fixed (ID: 2659959)
* Minor Bugfixes/Improvements"
Comments (none posted)
The initial release of skpd has been announced.
"
I just developed a tool for dump a running process, to an executable ELF
file. This tool works on GNU/Linux, and has been tested on systems like
U[b]untu 8.10, Gentoo, Debian lenny, Debian etch, etc.
Fell free to send me bugs, comments, and patches."
Full Story (comments: 3)
Desktop Applications
Audio Applications
Version 2.0-alpha1 of the
Audacious
media player has been announced.
"
Audacious is an advanced audio player. It is free, lightweight, based on GTK2, runs on Linux and many other *nix platforms and is focused on audio quality and supporting a wide range of audio codecs.
Its advanced audio playback engine is considerably more powerful than GStreamer. Audacious is a fork of Beep Media Player (BMP), which itself forked from XMMS."
Comments (none posted)
CAD
Version 0.99.55 of Wings 3D has been
announced.
"
Wings 3D is a subdivision modeller with an user interface that is easy to use for both beginners and advanced users (inspired by Nendo and Mirai from Izware).
More Magnet Mask tools to further improve usability including the ability to Invert masked and unmasked areas and toggle the mask on/off. Some important bug fixes are included in this release, so upgrading is recommended."
Comments (none posted)
Desktop Environments
The following new GNOME software has been announced this week:
You can find more new GNOME software releases at
gnomefiles.org.
Comments (none posted)
The following new KDE software has been announced this week:
You can find more new KDE software releases at
kde-apps.org.
Comments (none posted)
Version 4.6.1 of Xfce, a lightweight desktop environment, has been
announced.
"
The first bugfix-release of xfce 4.6 has been released.
Thanks to all the people who have been using xfce 4.6 and took the time and effort to submit bugreports for stuff that wasn't quite working the way it is supposed to. We have been able to fix several issues during the past few weeks."
Comments (none posted)
The following new Xorg software has been announced this week:
More information can be found on the
X.Org Foundation wiki.
Comments (none posted)
Multimedia
Version 0.5.36 of Elisa Media Center has been announced.
"
This release is a lightweight release, meaning it is pushed through
our automatic plugin update system. Additionally a windows installer is
available for download on our website. This installer fixes various
crashers."
Full Story (comments: none)
Music Applications
A call for developers has gone out for
jMax Phoenix, a
visual programming environment for real-time music and multimedia.
"
The reports of the jMax death have been greatly exaggerated. Free
software never dies, it just sleeps for some time. Almost nine years
after the release of the project under a free license, and six years
after the end of the developments by the institution that created it,
some of the original project developers decided to revive it from its
ashes: jMax Phoenix was born."
Full Story (comments: none)
Web Browsers
Firefox 3.0.9 is out. The
release
notes contain the details; as might be expected, the real reason
for this release is to fix
yet
another pile of security problems.
Full Story (comments: 19)
Miscellaneous
Version 3.0 of JavaTerminal has been
announced.
"
This version is a "hard coded" TELNETBBS/ANSIBBS terminal client. Programmable extensibility has been removed and replaced by final method invocations to increase performance. The future of this project is uncertain, this may be the final version."
Comments (none posted)
Languages and Tools
C
The April 21, 2009 edition of the GCC 4.4.0 Status Report
has been published.
"
GCC 4.4.0 has been built and uploaded today and 4.4 branch is open
under release branch rules for regression and documentation fixes
leading to the 4.4.1 release; the release will be announced once time
has been allowed for mirrors to pick up the files. It is likely that
4.4.1 will be released in about two months' time."
Full Story (comments: none)
The April 21, 2009 edition of the GCC 4.5.0 Status Report
has been published.
"
Trunk is in Stage 1. It is expected that Stage 1 will last at least
four months (so ending no earlier than 27 July) and will be followed
by Stage 3 (bug-fix-only mode); whether it ends on 27 July may depend
on whether there remain unmerged features at that date that we wish to
merge for 4.5 and that seem sufficiently close to being ready to merge
to make it worth delaying the end of Stage 1."
Full Story (comments: none)
Caml
The April 21, 2009 edition of the Caml Weekly News
is out with new articles about the Caml language.
Full Story (comments: none)
Python
Version 0.60.0 of itools has been announced.
"
itools is a Python library, it groups a number of packages into a single
meta-package for easier development and deployment.
The itools.vfs package has been rewritten to use gio, the virtual file
system from the glib project. The web server (itools.web) now uses
the glib event loop.
Extracting text from office formats is in general much faster. Command
line utilities have been replaced by libraries; for instance, now we
use 'xlrd' instead of 'xlhtml' to extract text from Excel files."
Full Story (comments: none)
Release 8 of PyMite has been announced.
"
The Python-on-a-chip Project is pleased to announce
the eighth release of PyMite.
PyMite is a flyweight Python VM written from scratch
to execute on 8-bit and larger microcontrollers with
resources as limited as 64 KB of program memory (flash)
and 4 KB of RAM. PyMite supports a subset of the
Python 2.5 syntax and can execute a subset of the
Python 2.5 bytecodes. PyMite can also be compiled,
tested and executed on a desktop computer."
Full Story (comments: none)
Version 1.5.2 of pyparsing, a pure-Python class library for developing
recursive-descent parsers, has been announced.
"
Well, it has been about 6 months since the release of pyparsing 1.5.1,
and there have been no new functional enhancements to pyparsing. I
take
this as a further sign that pyparsing is reaching a development/
maturity
plateau.
With the help of the pyparsing community, there are some
compatibility
upgrades, and few bug fixes."
Full Story (comments: none)
Version 2.6.2 of Python has been announced.
"
This is the latest production-ready
version in the Python 2.6 series. Dozens of issues have been fixed
since Python 2.6.1 was released back in December."
Full Story (comments: none)
The April 16, 2009 edition of the Python-URL! is online with
a new collection of Python article links.
Full Story (comments: none)
Version 0.5.1 of relatorio has been announced, it includes some new features
and bug fixes.
"
Relatorio is a templating library which provides a way to easily
output several kinds of files (odt, ods, png, svg, ...). Support for
more filetypes can be easily added by creating plugins for them.
Relatorio also provides a report repository allowing you to link
python objects and report together, find reports by
mimetype/name/python object."
Full Story (comments: none)
XML
Version 0.2r of pyxser has been announced, it includes a number of bug fixes.
"
I'm pleased to announce pyxser-0.2r, a Python-Object to XML
serializer and deserializer. This package it's complet[e]ly
written in C and licensed under LGPLv3."
Full Story (comments: none)
Libraries
Ulrich Drepper has posted
a list of some of the
changes which will appear in glibc 2.10. "
The new malloc_info
function therefore does not export a structure. Instead it exports the
information in a self-describing data structure. Nowadays the preferred way
to do this is via XML. The format can change over time (it's versioned),
some fields will stay the same, other will change. No breakage. The reader
just cannot assume that all the information will forever be available in
the same form. There is no reader in glibc. This isn't necessary, it's easy
enough to write outside glibc using one of the many XML libraries."
Comments (50 posted)
The glibc library has been ported to Google Native Client.
"
Some background: Native Client (NaCl for short) is a sandboxing system
for running a subset of x86 code on Linux, Windows and Mac OS X. It
is proposed as a way of running native code inside web apps.
Native Client is a hack to get around the lack of sandboxing
facilities on these OSes. It uses x86 segmentation to constrain
memory accesses, and it has a verifier for x86 code which disallows
instructions that would be unsafe, such as syscalls."
Full Story (comments: none)
Test Suites
Version 0.5.0 of Mock has been announced.
"
mock provides a core mock.Mock class that is intended to reduce the need to create a host of trivial stubs throughout your test suite. After performing an action, you can make assertions about which methods / attributes were used and arguments they were called with. You can also specify return values and set specific attributes in the normal way."
Full Story (comments: 3)
Version Control
Version 1.6.2.4 of the GIT distributed version control system
has been announced.
"
This contains bunch of fixes that have already been merged to the master
branch in preparation for 1.6.3."
Full Story (comments: none)
Miscellaneous
Version 1.3 of Jason has been
announced.
"
Jason is a fully-fledged interpreter for an extended version of AgentSpeak, a BDI agent-oriented logic programming language, and is implemented in Java. Using SACI or JADE, a multi-agent system can be distributed over a network effortlessly.
This version fixes some bugs in the previous version, adds new examples, and has the following main new features: performance improvements and plan as terms."
Comments (none posted)
Page editor: Forrest Cook
Next page: Linux in the news>>