Bienvenido! - Willkommen! - Welcome!

Bitácora Técnica de Tux&Cía., Santa Cruz de la Sierra, BO
Bitácora Central: Tux&Cía.
Bitácora de Información Avanzada: Tux&Cía.-Información
May the source be with you!

Tuesday, October 5, 2010

SQLyog Job Agent (SJA)

Cannot Use It!
Introduction to the 'SQLyog Job Agent' (SJA)
SQLyog is a Windows program.
Windows programs do not have man pages! It does however run on Wine and is fully documented here

ID #1177
Failed dependency for error
This error occurs because a C++ shared library that SJA requires is not available.
When writing applications supposed to run on more different Linux versions there are various ways to handle this. The solution that we use in SJA is to link against older versions, so that SJA will run on any Linux version from when this C/C++ version was first introduced and up. Since version 8.13 we link 'dynamically' what means that the C++ shared library code that SJA needs is not compiled into SJA itself. SJA will need to find the code on the system where it runs. The shared library file is "" what is part of the GCC 3.2 runtime (introduced with RedHat 9 and other Linux distributions released at about the same time).
With very recent Linux distributions (based on GCC 4.x runtimes) you may not have this shared library installed.  With some distro's it is an optional install.  To install just use whatever package manager system is available with your distribution.  For instance:

* On Red Hat Enterprise and Fedora, the command to install the compatibility package is: "yum install compat-libstdc++-33"
* On Ubuntu the command to install the compatibility package is: "sudo apt-get install libstdc++5"
* On SuSE you may use the Yast 'Software Management' GUI and find the package by searching with 'libstdc'. The packet required is named "compat-libstdc++" (and the RPM file is named compat-libstdc++-5.0.7-121.1.i586.rpm on 32 bit systems). To install from a console on SuSE do (as root) "yast -i compat-libstdc++"

Before version 8.13 SJA the '' library was linked statically (ie: SJA itself included the code).  But as Linux now has been available for production use for around 10 years it is not possible anymore to link statically and ensure that it will work with all - old as well as recent - distro's available. Specifically we changed this with 8.13 because before SJA would sometimes fail with very recent distributions (Ubuntu was affected).
Also note that SJA is available as a 32 bit binary only.  There is no need for providing a 64 bit binary as SJA will never use more memory than what can be addressed by a 32 bit binary.  However as a consequence you will have to have 32-bit compability installed.  This is not a problem with pre-compiled and pre-packaged distributions - only if you build the OS yourself or if you use a installation method with very selective installation options (like some network installation methods available) 32 bit compability packages must be included. 
For me:
Tecnically simple and clear KISS
The standard C++ library, needed for dynamically linked C++ programs
Version : 3.3.3
Release : 22.1
in the 32 bit version is needed for the use of SJA on SuSE Linux x64

Installation and upgrading
SQLyog is distributed with an automatic installer script. Just save it to your desktop and doubleclick the installation file. You will have an option to choose which folder on your system to install to.
To preserve settings etc. when upgrading just install over the old version. However if you want to keep your old version installed for a while (could be relevant when installing a beta-version!) then choose a new folder for the new version. You can then copy the sqlyog.ini file and all subfolders from the old installation folder to the new one.
When upgrading then please take the time to read the "version history" here or in the help file.
You may also need to replace your HTTP-tunneling file at your ISP(s). But SQLyog will display an error message if program version and tunneling file versions do not match.
Use SQLyog with the WINE Windows emulator on LINUX SAJ

No comments: