libicu not found in ubuntu 12.04

Hi, i try to install the libicu in ubuntu 12.04 and i receive the following error;

condor1212:~# apt-get install libicu52
Reading package lists… Done
Building dependency tree
Reading state information… Done
E: Unable to locate package libicu52
condor1212:~#

please help

I believe Ubuntu 12.04 has version 4.8 of ICU available, so it’d be something like:

sudo apt-get install libicu48:i386

On one of our servers (a virtual server with Ubuntu 10.04) I do have ibicu42 available. But I guess that is a 64bit version and installing 32bit fails.

[quote]root@lvps176-28-22-139:~# apt-cache search libicu
libicu4j-java - Library for unicode support and internalisation
libicu-dev - Entwicklungsdateien für Internationale Komponenten für Unicode
libicu42 - Internationale Bestandteile für Unicode
libicu42-dbg - Internationale Bestandteile für Unicode
root@lvps176-28-22-139:~# sudo apt-get install libicu42:i386
Paketlisten werden gelesen… Fertig
Abhängigkeitsbaum wird aufgebaut
Status-Informationen einlesen… Fertig
E: Paket libicu42:i386 konnte nicht gefunden werden
root@lvps176-28-22-139:~# [/quote]

So, whatever webapp I rebuild with 2015r2, won’t run any longer on that machine.

Now I really wonder: who has asked for getting “smaller executables” for Linux webapps? When I see how many threads on icu have opened now and how many people have problems now to get there webapps up and running, then I wonder: WHY THE HECK ARE YOU CHANGING RUNNING SYSTEMS?!

Can you not just rollback this change and do it as it was before? Are there not enough 32bit libraries install hassles on Linux?!

By using the system supported library instead of shipping our own version, we don’t have to include a copy with every copy of every app- and any security or other updates are managed by the system itself. It’s the proper way to do it for system provided libraries.

Ubuntu 10.04 is older and does not have the :i386 add on for 32 bit packages. But assuming you have ia32-libs installed on that machine, it should be as easy as:

sudo apt-get install lib32icu42

[quote=181269:@Travis Hill]By using the system supported library instead of shipping our own version, we don’t have to include a copy with every copy of every app- and any security or other updates are managed by the system itself. It’s the proper way to do it for system provided libraries.

Ubuntu 10.04 is older and does not have the :i386 add on for 32 bit packages. But assuming you have ia32-libs installed on that machine, it should be as easy as:

sudo apt-get install lib32icu42[/quote]

Thanks, this install seems to work. I still have to test the webapps…

However, I do not agree when you say that the new way to do it would be “the propper” way.

Why?

  1. Space is not an issue and very cheap today
  2. Upload speed is not an issue nowadays
  3. Installation of libraries on various Linux distros and versions IS A BIG issue

So: keep it simple. And i mean simple from the perspective of those who must install and maintain webapps, and not from your own perspective.

I think this decision Xojo made is complicating things and is one more step away from easy distribution of webapps.

Well, if I build a webapp with Xojo 2014r3.2 then it runs well on that vServer with Ubuntu 10.04.

If I build the same webapp with Xojo 2015r2 then it will just fail. I have not yet found anything in the log files, related to that webapp, which would help me to find out why it fails.

I installed lib32icu42 as Travis wrote above and this installed fine. When I run it again, then it says this:

[quote]sudo apt-get install lib32icu42
Paketlisten werden gelesen… Fertig
Abhngigkeitsbaum wird aufgebaut
Status-Informationen einlesen… Fertig
lib32icu42 ist schon die neueste Version.
0 aktualisiert, 0 neu installiert, 0 zu entfernen und 0 nicht aktualisiert.[/quote]

So now I will have to find out, why the very same webapp is no longer running when built with the latest Xojo.

This is the reason for my feedback request for many years ago:

<https://xojo.com/issue/1464>

An oldie but a goodie …

[quote=181272:@Oliver Osswald]I installed lib32icu42 as Travis wrote above and this installed fine. When I run it again, then it says this:
== clip ==
So now I will have to find out, why the very same webapp is no longer running when built with the latest Xojo.[/quote]
If the compiler suite is installed (GCC/G++), you can always build your own library and install it.

See ICU Project source code access

[quote=181277:@Tim Jones]This is the reason for my feedback request for many years ago:

<https://xojo.com/issue/1464>

An oldie but a goodie …[/quote]

Yes, makes sense and would help a lot with distribution of webapps.

Just added it to “My Top Cases” in Feedback. (Go do the same!)

Oliver, I had already submitted a request to reverse this iculib decision (<https://xojo.com/issue/38754>) but the case has been closed. Less work for Xojo and more work for us! Even a checkbox to include/not include would be nice!

@Oliver Osswald - Travis also closed the static compile request with some invalid assumptions about the way GPL licensing and system updates work :(. I’ve posted counterpoint based on 21 years of delivering both dynamic and statically compiled applications on Linux, but I don’t expect any change from their end…

We’ve commented on other similar requests.
Static linking would mean that we dictate what versions of what compilers plugin authors can use.
They are not a standard file format. They are compiler and version specific formats.
Other cases requesting static linking have also been closed as “won’t implement” for similar reasons.
See 2852.
See https://msdn.microsoft.com/en-us/library/bb531344.aspx where MS says To avoid run-time errors that are difficult to detect and diagnose, we recommend that you never statically link to binaries that were compiled by using different versions of the compiler.

i try everythink and still have no instalation for the libicu:

condor1212:~# sudo apt-get install libicu48:i386
Reading package lists… Done
Building dependency tree
Reading state information… Done
Package libicu48:i386 is not available, but is referred to by another package.
This may mean that the package is missing, has been obsoleted, or
is only available from another source

E: Package ‘libicu48:i386’ has no installation candidate

condor1212:~# sudo apt-get install lib32icu42
Reading package lists… Done
Building dependency tree
Reading state information… Done
E: Unable to locate package lib32icu42
condor1212:~#

In the meantime, I found Philip Guo’s Ph.D presentation on CDE - Philip Guo’s CDE presentation. CDE will create a self-contained package that you can copy to any Linux x86 system and execute without concern for external library requirements. I’m running some tests on Xojo code and will report back.


@Norman Palardy - those comments assume that you’re (the developer) not in control of things. While this issue MAY - and that is emphasized on purpose - affect Windows builds, the issue doesn’t exist on Linux - otherwise, In order for us to ship our BRU products for Linux, we’d have to build with every possible version of GCC that has ever shipped since we have no idea of what compiler a give shared library was compiled with - we don’t and everything works just fine.

And, MS has a vested interest in keeping you using the latest and greatest version of Visual Studio so we should expect them to make statements like that. I use libraries compiled under VS 6 with VS10 and VS13 all the time with no ill effects; they really get annoyed when apps built with VS 6 still run on Windows 10 tech preview.

We’ve decided to not implement this request.
Thanks for respecting that decision.

To clarify, is this the 32-bit or 64-bit distribution of Ubuntu 12.04? Run ‘uname -a’ if you aren’t sure of your distribution details.

is 64 bit

I just verified that it’s available in a Ubuntu 12.04 64-bit install. Perhaps try doing a “sudo apt-get update” before the “sudo apt-get install libicu48:i386”

I try your commands and this is the screen display:

condor1212:~# sudo apt-get update
Ign http://autoinstall.plesk.com precise Release.gpg
Ign http://autoinstall.plesk.com all Release.gpg
Ign http://autoinstall.plesk.com all Release.gpg
Ign http://autoinstall.plesk.com precise Release
Ign http://autoinstall.plesk.com all Release
Ign http://autoinstall.plesk.com all Release
Ign http://autoinstall.plesk.com precise/all amd64 Packages/DiffIndex
Ign http://autoinstall.plesk.com precise/all i386 Packages/DiffIndex
Ign http://autoinstall.plesk.com precise/all TranslationIndex
Ign http://autoinstall.plesk.com all/all amd64 Packages/DiffIndex
Ign http://autoinstall.plesk.com all/all i386 Packages/DiffIndex
Ign http://autoinstall.plesk.com all/all TranslationIndex
Ign http://autoinstall.plesk.com all/all amd64 Packages/DiffIndex
Ign http://autoinstall.plesk.com all/all i386 Packages/DiffIndex
Ign http://autoinstall.plesk.com all/all TranslationIndex
Hit http://autoinstall.plesk.com precise/all amd64 Packages
Hit http://autoinstall.plesk.com precise/all i386 Packages
Hit http://autoinstall.plesk.com all/all amd64 Packages
Hit http://autoinstall.plesk.com all/all i386 Packages
Hit http://autoinstall.plesk.com all/all amd64 Packages
Hit http://autoinstall.plesk.com all/all i386 Packages
Ign http://autoinstall.plesk.com precise/all Translation-en_US
Ign http://autoinstall.plesk.com precise/all Translation-en
Ign http://autoinstall.plesk.com all/all Translation-en_US
Ign http://autoinstall.plesk.com all/all Translation-en
Ign http://autoinstall.plesk.com all/all Translation-en_US
Ign http://autoinstall.plesk.com all/all Translation-en
Reading package lists… Done
condor1212:~# sudo apt-get install libicu48:i386
Reading package lists… Done
Building dependency tree
Reading state information… Done
Package libicu48:i386 is not available, but is referred to by another package.
This may mean that the package is missing, has been obsoleted, or
is only available from another source

E: Package ‘libicu48:i386’ has no installation candidate
condor1212:~#

When I search for libicu on my Ubuntu 12.04 machine this is the result:

So I guess apt-get install libicu should work?

PS. I don’t have the latest Xojo so I can’t try it out…