Project Home
Project Home
Documents
Documents
Wiki
Wiki
Discussion Forums
Discussions
Project Information
Project Info
Forum Topic - QNX - Please update the 'tr' command-line program!: (2 Items)
   
QNX - Please update the 'tr' command-line program!  
I've been busy porting several open source packages onto the QNX platform. Several of these packages are autoconf/
automake based which means you run a 'configure' script to generate your Makefiles.

While trying to build the latest glib library for QNX, I ran across this "bug" in the 'tr' command. Apparently, the QNX 
version of 'tr' does not support these common character escape codes:

     \character
                A backslash followed by certain special characters maps to
                special values.

                \a    <alert character>
                \b    <backspace>
                \f    <form-feed>
                \n    <newline>
                \r    <carriage return>
                \t    <tab>
                \v    <vertical tab>

So, when the configure script tries to replace newlines (\n) with a space using a command like

> cat somefile | tr '\n' ' '

it will instead replace every 'n' with a space (' '). This is unexpected and is a source of many errors in automake/
autoconf configure scripts that are used to build open source packages. Whether this is a "bug" or not, most packages 
(certainly commonly built under Linux) expect 'tr' to support these escape codes. Would QNX consider supporting this 
behavior in a future release?
Re: QNX - Please update the 'tr' command-line program!  
On Wed, Nov 05, 2008 at 01:41:22PM -0500, Glenn Schmottlach wrote:
> I've been busy porting several open source packages onto the QNX platform. Several of these packages are autoconf/
automake based which means you run a 'configure' script to generate your Makefiles.
> 
> While trying to build the latest glib library for QNX, I ran across this "bug" in the 'tr' command. Apparently, the 
QNX version of 'tr' does not support these common character escape codes:
> 
>      \character
>                 A backslash followed by certain special characters maps to
>                 special values.
> 
>                 \a    <alert character>
>                 \b    <backspace>
>                 \f    <form-feed>
>                 \n    <newline>
>                 \r    <carriage return>
>                 \t    <tab>
>                 \v    <vertical tab>
> 
> So, when the configure script tries to replace newlines (\n) with a space using a command like
> 
> > cat somefile | tr '\n' ' '
> 
> it will instead replace every 'n' with a space (' '). This is unexpected and is a source of many errors in automake/
autoconf configure scripts that are used to build open source packages. Whether this is a "bug" or not, most packages 
(certainly commonly built under Linux) expect 'tr' to support these escape codes. Would QNX consider supporting this 
behavior in a future release?

This is fixed in 6.4.

-seanb