From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Message-ID: <000501c0abb3$7ca22270$0500000a@sasha> From: "Alexandre Redko" To: MIME-Version: 1.0 Content-Type: text/plain; charset="koi8-r" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2919.6700 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2919.6700 Subject: [mdk-re] Are you ready for Kylix? Sender: mandrake-russian-admin@linuxteam.iplabs.ru Errors-To: mandrake-russian-admin@linuxteam.iplabs.ru X-BeenThere: mandrake-russian@linuxteam.iplabs.ru X-Mailman-Version: 2.0 Precedence: bulk Reply-To: mandrake-russian@linuxteam.iplabs.ru List-Help: List-Post: List-Subscribe: , List-Id: Mandrake/RE discussion list List-Unsubscribe: , List-Archive: Date: Tue Mar 13 14:45:02 2001 X-Original-Date: Tue, 13 Mar 2001 14:48:12 +0300 Archived-At: List-Archive: Are you ready for Kylix? - by David Intersimone Abstract:Are you ready for Kylix? Of course you are. Is your system ready for Kylix? Here is a way to find out. Are You Ready For Kylix? Are you ready for Kylix? Of course you are! Is your system ready for Kylix? Here is a way to find out! During the development of Kylix we discovered several problems which the most current versions of Linux have already addressed. If you have an old version of Linux, say the one you downloaded last week, you are probably also have some of the same problems we ran into. Read on for how you can get your system ready for Kylix! The first step is to download our test application and glibc patches. You can download the Borland Kylix Pre-Test at http://www.borland.com/devsupport/kylix/downloads/. When you untar the file you will find a directory called BORPRETEST. In this directory is a shell script called 'testsytem'. This script will run a test program called 'borpretest' that will check your system for some of the basic preinstall requirements, such as the version of libjpeg, basic libc versions, etc... In addition to that, it will also attempt to load and unload several modules to test for the Linux loader issue. The console output of 'borpretest' will tell you if your system has the correct system files to run Kylix. Details on the error messages are described in a text file called PREINSTALL. The primary focus of this article is to add a few more details on the loader bug, and how you can upgrade your system. Here is a brief description of the primary loader bug. Let's say your application loads a module called module A, and module A has a dependency on module A1. Your app also loads module B. If module B has a shared dependency on Module A1 there's trouble ahead if you now try to unload module A or B! If module A or B unloads now, the reference count on module A1 is not updated correctly and this could lead to a crash if the reference is used later on. Fortunately, we know the fix and gnu.org has accepted it into the main libc branch. Were can you get the patch? That depends on your distribution. Currently we have pre-built solutions for Red Hat 6.2, 7.0, Mandrake 7.2 and SuSE 7.0. Red Hat 7.0 has an official release of glibc 2.2 that contains the fix. They have not released an official patch for Red Hat 6.2 yet. We have supplied a patch we used internally for 6.2, but it is not a supported Red Hat release. You can probably safely use this for your development, but it is not recommended for distribution to your customers. We have tested it in the context of Kylix, but we can not guarantee the safety of using this patch. Use at your own risk. The sources to all our patches are supplied. Mandrake has released an "unofficial" branch of glibc with the fix in it and you can get that from ftp://ftp.sunet.se/pub/Linux/distributions/mandrake-devel/unsupported/i586. You should also be aware that the Mandrake distribution is released with out debug symbols and this can make debugging on Mandrake difficult. We recommend rebuilding with debug symbols. SuSE has released official patches for 7.0 and they can be downloaded from http://www.suse.com/us/support/download/. The Server and Desktop versions of Kylix will ship with a pre-patched evaluation copy of SuSE 7.0 in the box. We have supplied the source to our test program, and we use this same test mechanism in our install program before installing Kylix. If the loader patch is not applied, Kylix will not install. You may want to use a similar check in your install programs. Will your application run into this loader bug? That depends on your use of packages and whether or not they are dynamically loaded and have shared dependencies. It is possible. The Kylix IDE does a lot of this activity and we definitely need the loader bug fixed on any development machine that Kylix will be installed on. If your distribution hasn't released an official patch you should contact them directly and encourage them to do so. In the mean time you can take a look at our source patches and try to apply them to your distribution. Any distribution that releases an upgrade to glibc 2.2 will have the fix also. After applying these patches you're all set to install Kylix. ---------------------------------------------------------------------------- --------------- Regards to All Alexandr Redko LU # 178842 ICQ # 75828152