On Mon, May 18, 2015 at 12:00 PM, Sunjit Tara <sunjit_tara_at_yahoo.com> wrote:
> Hi,
> We ship SVN with our product, it was compiled in RHEL 5 and the
> binary is shipped along with the product where it can be installed on RHEL
> 5, 6 or 7. Recently we found a problem specific to using Non Latin
> characters in the file name, it works fine if you are on RHEL 5 but on RHEL
> 6/7 we get errors.
Unicode is one of the banes of modern computing. And you compiled
statically "for portability", didn't you? Well, this is what you get.
The relevant libraries change significantly with the release of the
operating system, and if you're using static libraries, you're not
loading the newer, compatible libraries.
> On the other hand, if we compile the source code in RHEL 6 and use that
> binary on RHEL 6 and 7 -- Non Latin character file names work fine
> (add/update/delete). But it is not backward compatible with RHEL 5, so just
> for RHEL 5 we have to ship the binary compiled on RHEL 5.
Why are you shipping Subversion binaries? Why aren't you using the
system binaries? Even RHEL 5 has Subversion 1.5 available. If you need
to upgrade from there, please consider collaborating with one of the
commercial Subversion providers to use their packages, and avoid
having to spend your own time building your own.
If you *do* feel the need to build your own, you're certainly welcome
to my SRPM building toolkigs over at https://github.com/nkadel/ But I
admit, I'm giving up on RHEL 5 these days.
> Has anyone seen this or aware of this limitation? I understand the common
> behavior is to compile and run the package on the same OS level but for
> products that embed SVN and ship for RHEL, how do you tackle this limitation
> for Non Latin languages?
>
> Thanks in Advance!
Well, for one thing, I tend to insiste that people use POSIX language
compatible file names to avoid exactly these issues, and mandate it in
the pre-commit hooks. No punctuation because inevitably someone will
use a punction that screws up shell scripts and other commands, such
as ",'" or ":" or ";" or "[", no non-7-bit ASCII characters, and *no
spaces!!!!* And ideally no mixed case, because the file
"ServiceName.h" and "Servicename.h" can't both exist on the same NTFS
or other case insensitive file system.
Received on 2015-05-19 13:39:16 CEST