Dear George, I don't see a need for static binaries.
We link the XDS package dynamically with ifort -static-intel -qopenmp-link=static on a rather old system, and this seems to work for all XDS users. One could add -static-libgcc but apparently this is not necessary. best wishes, Kay On Tue, 8 Oct 2019 12:21:07 +0200, George Sheldrick <[email protected]> wrote: >As explained in the attached email from Peter Keller, I was deliberately >preparing the binary Linux SHELX distribution using older (2011) system >libraries so that the programs would run on older systems that many >users are still using. Unfortunately this means that they do not run on >some recent cutting edge distributions including Debian 10. This can be >fixed with 'vsyscall=emulate' when installing the OS but not all users >may be allowed to do this. Dynamic binaries would be smaller but would >require the user to provide the right libraries. > >If I prepare statically linked binaries (using the latest ifort and >ubuntu) they appear to run on current systems but may have problems on >older systems. I may have to offer (e.g. in CCP4 and on the SHELX >server) two sets of Linux binaries in the future, one for 'vintage' >systems and one for current systems. Alternatively I could provide both >statically and dynamically linked versions. What do users think? > >Best wishes, George > > >On 08.10.19 11:04, Peter Keller wrote: >> HI Tim, >> >> On Mon, 7 Oct 2019, Tim Gruene wrote: >> >>> Date: Mon, 07 Oct 2019 23:04:28 +0200 >>> From: Tim Gruene <[email protected]> >>> To: Peter Keller <[email protected]> >>> Cc: [email protected] >>> Subject: Re: [ccp4bb] Shelx and debian 10 >>> >> >> >>> @Peter: are you sure that without 'vsyscall=emulate' linux binaries >>> need to be >>> dynamically linked? I would be very surprised if the linux kernel would >>> disable statically linked binaries. I rather think that the vanilla >>> versions >>> of shelx c/d/e (from shelx.uni-goettingen.de) are compiled with an >>> obsolete >>> compiler / obsolete compiler options. >> >> You're right, I wrote my reply to Bernhard too rapidly, and conflated >> two separate issues. Debian 10 still supports static binaries of >> course, but in its default configuration (without vsyscall=emulate), >> those static binaries must be linked with a version of glibc that >> doesn't require vsyscalls. OTOH, dynamic binaries don't suffer from >> this problem, because they can use vDSO provided by the running >> (rather than the build) system. >> >> I think that part of the problem is that traditionally when we want to >> build portable linux binaries, we tend to build on the oldest >> distribution that we want to support, relying on backwards >> compatibility to provide the portability that we are after. We often >> build statically, because it is a robust way of including all the >> required libraries and is less fiddly and error-prone than providing >> them as dynamic libraries. There is also no danger of breakage caused >> by rogue values of LD_LIBRARY_PATH (which users shouldn't be setting >> of course, but we have no way of stopping them). The drawback of this >> approach is that when backwards compatibility is broken, there is no >> application-level fix. >> >> These kinds of problems are rare, but when they do happen the onus is >> on those of us who distribute binary applications to find solutions. >> Some sysadmins may have good reasons for being reluctant to change >> kernel parameters to get third-party applications to work. >> >> Regards, >> Peter. >> >>> >>> >>> On Monday, October 7, 2019 5:53:44 PM CEST Peter Keller wrote: >>>> Dear Bernhard, >>>> >>>> We had this issue drawn to our attention last year by an early adopter >>>> of Debian 10 while it was still in testing. I thought that it was a >>>> bug, >>>> and submitted a report accordingly here: >>>> <https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=889965>. I was told >>>> that it is not a bug, but a feature ;-) >>>> >>>> If you are able, you could try setting the kernel parameter >>>> vsyscall=emulate. In the longer term, SHELXC/D/E will have to be >>>> rebuilt >>>> to support systems where the vsyscall has been disabled. This means >>>> they >>>> have to be dynamic executables that include the following in the output >>>> of 'ldd': >>>> >>>> % ldd /bin/bash >>>> linux-vdso.so.1 (0x00007fff50952000) >>>> .... >>>> >>>> All current distros use vDSO, so this shouldn't cause portability >>>> problems by itself, but handling dynamic executables can be trickier >>>> than static ones. >>>> >>>> For a little more background, see <https://lwn.net/Articles/446528/> >>>> >>>> Finally, you have my commiserations: although this change has been a >>>> long time coming, it hasn't attracted a lot of attention. It was bound >>>> to catch users of static executables by surprise. >>>> >>>> Regards, >>>> >>>> Peter. >>>> >>>> On 07/10/2019 16:05, Bernhard Rupp wrote: >>>>> Hi Fellows, >>>>> >>>>> we updated to Debian 10 on the local workshop computers, and >>>>> reinstalled >>>>> >>>>> Coot and ccp4. All fine. >>>>> >>>>> Problem: Shelxc/d/e/ does not run, and >>>>> >>>>> the call exits immediately sans any message. >>>>> >>>>> This holds for the binaries included in ccp4 as well as for those from >>>>> the SHELX site. >>>>> >>>>> The executables from CCP4 and SHELX site – same file size, probably >>>>> same - run fine under Debian 9. >>>>> >>>>> I suspect a library problem. >>>>> >>>>> Does some kind soul have CDE binaries for Debian 10 to share? >>>>> >>>>> Many thx in advance, BR >>>>> >>>>> -------------------------------------------------------------------------- >>>>> >>>>> -------------- >>>>> >>>>> Bernhard Rupp >>>>> >>>>> Department of Genetics and Pharmacology >>>>> >>>>> Institute of Genetic Epidemiology >>>>> >>>>> Medical University Innsbruck >>>>> >>>>> Schöpfstrasse 41 >>>>> >>>>> A 6020 Innsbruck – Austria >>>>> >>>>> +43 (676) 571-0536 >>>>> >>>>> [email protected] >>>>> >>>>> -------------------------------------------------------------------------- >>>>> >>>>> -------------- >>>>> >>>>> k.k. Hofkristallamt >>>>> >>>>> San Diego, CA 92084 >>>>> >>>>> 001 (925) 209-7429 >>>>> >>>>> [email protected] >>>>> >>>>> [email protected] >>>>> >>>>> http://www.ruppweb.org/ >>>>> >>>>> ----------------------------------------------------------------------- >>>>> >>>>> >>>>> >>>>> ------------------------------------------------------------------------ >>>>> >>>>> >>>>> To unsubscribe from the CCP4BB list, click the following link: >>>>> https://www.jiscmail.ac.uk/cgi-bin/webadmin?SUBED1=CCP4BB&A=1 >>> >>> >> >-- >Prof. George M. Sheldrick FRS >Dept. Structural Chemistry >University of Goettingen >Tammannstr. 4 >D37077 Goettingen >Germany >Tel: +49 551 3933021 or +49 5594 227312 > >######################################################################## > >To unsubscribe from the CCP4BB list, click the following link: >https://www.jiscmail.ac.uk/cgi-bin/webadmin?SUBED1=CCP4BB&A=1 ######################################################################## To unsubscribe from the CCP4BB list, click the following link: https://www.jiscmail.ac.uk/cgi-bin/webadmin?SUBED1=CCP4BB&A=1
