[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Small bug in 1.1.2 version of lsbappchk

I ran into a small problem when running the latest version of lsbappchk.
After creating both rsync and xv in lsbdev I tried running lsbappchk
against each. Both times it gave the following output:

     lsbappchk 1.1
     section .shstrtab is not in the LSB

Now this used to work with the previous version of lsbappchk. In looking
through the source for lsbappchk I found where the problem lies. The source
file elfchk/sectinfo.c defines all the sections that should be in an ELF
file. With this new version of lsbappchk there are lots of "#if defined
__i386__" and "#if defined __ia64__" added to handle processor specific
values. Unfortunately, "#if defined __ia64__" was placed around the
definition for shstrtab, implying that it is not a valid ELF section for
any non-ia64 application. This isn't the case since shstrtab is defined in
the gLSB and not the psLSB for IA64. Removing the "#if defined __ia64__"
corrects the problem.

While investigating this problem I also ran into a problem when trying to
compile lsbappchk with VERBOSE defined to help in diagnosing the problem.
The file elfchk/proghdr.c would not compile due to fprintf not being
defined. This problem was easily fixed by adding "#include <stdio.h>" at
the top of the file.

In addition to sending this note I have opened bugs 533803 and 533805 on
SourceForge to track problem resolution.


Marvin Heffler
Linux Standard Base and Developers Toolbox
IBM Linux Technology Center
11400 Burnet Road, Zip 908-1A33
Austin, TX 78758
(512) 838-0953    T/L 678-0953

Reply to: