Bug 114621 - lib-com-redhat-tomcat-4.1.27.so: undefined symbol
Summary: lib-com-redhat-tomcat-4.1.27.so: undefined symbol
Keywords:
Status: CLOSED RAWHIDE
Alias: None
Product: Red Hat Application Server Public Beta
Classification: Retired
Component: tomcat
Version: 1.0-beta1
Hardware: x86_64
OS: Linux
medium
medium
Target Milestone: ---
Assignee: Gary Benson
QA Contact:
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2004-01-30 11:08 UTC by Dag Wieers
Modified: 2007-04-18 17:02 UTC (History)
0 users

Fixed In Version:
Clone Of:
Environment:
Last Closed: 2004-05-07 16:22:01 UTC
Embargoed:


Attachments (Terms of Use)

Description Dag Wieers 2004-01-30 11:08:44 UTC
From Bugzilla Helper:
User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.6)
Gecko/20040124 Galeon/1.3.12

Description of problem:
When starting tomcat on a cleanly installed Red Hat AS3 on AMD64
(x86_64) we get unresolved symbols. The libraries seems to be stripped.

The full error for reference is:

    Bootstrap: Create Catalina server
    Created catalinaLoader in: /usr/share/tomcat/server/lib
    Exception in thread "main" java.lang.UnknownError:
/usr/lib64/lib-com-redhat-tomcat-4.1.27.so: undefined symbol:
_ZN3org6apache8catalina6
logger10LoggerBase12getContainerEv
       at gnu.gcj.runtime.SharedLibHelper.init()
(/lib64/ssa/libgcj.so.4.0.0)
       at gnu.gcj.runtime.SharedLibHelper.ensureInit()
(/lib64/ssa/libgcj.so.4.0.0)
       at gnu.gcj.runtime.SharedLibHelper.findClass(java.lang.String)
(/lib64/ssa/libgcj.so.4.0.0)
       at java.net.URLClassLoader.findClass(java.lang.String)
(/lib64/ssa/libgcj.so.4.0.0)
       at
org.apache.catalina.loader.StandardClassLoader.findClass(java.lang.String)
(/usr/lib64/lib-org-apache-catalina-bootstrap-4.1.27.so)
       at
org.apache.catalina.loader.StandardClassLoader.loadClass(java.lang.String,
boolean) (/usr/lib64/lib-org-apache-catalina-bootstrap-4
.1.27.so)
       at
org.apache.catalina.startup.BootstrapService.init(java.lang.String[])
(/usr/lib64/lib-org-apache-catalina-bootstrap-4.1.27.so)
       at _Jv_ThreadRun(java.lang.Thread) (/lib64/ssa/libgcj.so.4.0.0)
       at _Jv_RunMain(java.lang.Class, byte const, int, byte const,
boolean) (/lib64/ssa/libgcj.so.4.0.0)
       at __libc_start_main (/lib64/tls/libc-2.3.2.so)


Version-Release number of selected component (if applicable):
tomcat-4.1.27-8

How reproducible:
Always

Steps to Reproduce:
1. Installed RH AS3 on x86_64
2. Install tomcat and dependencies
3. Start tomcat
    

Actual Results:  Logfile reports unresolved symmbols.

Expected Results:  That it works.

Additional info:

Libraries in tomcat-libs seems to be stripped ?

Comment 1 Gary Benson 2004-01-30 11:42:34 UTC
what does the command 'ldd /usr/lib64/lib-com-redhat-tomcat.so' say?

Comment 2 Dag Wieers 2004-01-30 12:28:27 UTC
I checked it and everything looked normal. Here's the output:

    [root@dev-srv5 lib]# ldd /usr/lib64/lib-com-redhat-tomcat.so
        lib-org-apache-catalina-4.1.27.so =>
/usr/lib64/lib-org-apache-catalina-4.1.27.so (0x0000002a95674000)
        lib-org-apache-commons-logging-1.0.2.so =>
/usr/lib64/lib-org-apache-commons-logging-1.0.2.so (0x0000002a95ad5000)
        libc.so.6 => /lib64/tls/libc.so.6 (0x0000002a95be9000)
        libgcc_s.so.1 => /lib64/ssa/libgcc_s.so.1 (0x0000002a95e2c000)
        libgcj.so.4 => /lib64/ssa/libgcj.so.4 (0x0000002a95f37000)
        libm.so.6 => /lib64/tls/libm.so.6 (0x0000002a96c59000)
        libpthread.so.0 => /lib64/tls/libpthread.so.0 (0x0000002a96de1000)
        libz.so.1 => /usr/lib64/libz.so.1 (0x0000002a96ef5000)
        libdl.so.2 => /lib64/libdl.so.2 (0x0000002a97003000)
        lib-org-apache-catalina-bootstrap-4.1.27.so =>
/usr/lib64/lib-org-apache-catalina-bootstrap-4.1.27.so
(0x0000002a97106000)
        lib-org-apache-tomcat-util-4.1.27.so =>
/usr/lib64/lib-org-apache-tomcat-util-4.1.27.so (0x0000002a97221000)
        lib-org-apache-naming-4.1.27.so =>
/usr/lib64/lib-org-apache-naming-4.1.27.so (0x0000002a973b6000)
        lib-javax-servlet-4.1.7.so =>
/usr/lib64/lib-javax-servlet-4.1.7.so (0x0000002a9751a000)
        lib-javax-xml-parsers-2.2.1.so =>
/usr/lib64/lib-javax-xml-parsers-2.2.1.so (0x0000002a97675000)
        lib-org-xml-sax-2.2.1.so =>
/usr/lib64/lib-org-xml-sax-2.2.1.so (0x0000002a97bb0000)
        lib-org-w3c-dom-2.2.1.so =>
/usr/lib64/lib-org-w3c-dom-2.2.1.so (0x0000002a97ce0000)
        lib-org-apache-commons-beanutils-1.6.1.so =>
/usr/lib64/lib-org-apache-commons-beanutils-1.6.1.so (0x0000002a97de2000)
        lib-org-apache-commons-digester-1.4.1.so =>
/usr/lib64/lib-org-apache-commons-digester-1.4.1.so (0x0000002a97f51000)
        lib-org-apache-regexp-1.2.so =>
/usr/lib64/lib-org-apache-regexp-1.2.so (0x0000002a980a3000)
        lib-org-apache-commons-fileupload-1.0.so =>
/usr/lib64/lib-org-apache-commons-fileupload-1.0.so (0x0000002a981bc000)
        lib-javax-management-1.1.1.so =>
/usr/lib64/lib-javax-management-1.1.1.so (0x0000002a982d2000)
        lib-org-apache-commons-modeler-1.0.so =>
/usr/lib64/lib-org-apache-commons-modeler-1.0.so (0x0000002a98579000)
        /lib64/ld-linux-x86-64.so.2 => /lib64/ld-linux-x86-64.so.2
(0x000000552aaaa000)
        lib-org-apache-naming-bootstrap-4.1.27.so =>
/usr/lib64/lib-org-apache-naming-bootstrap-4.1.27.so (0x0000002a9869a000)
        lib-org-apache-commons-collections-2.1.so =>
/usr/lib64/lib-org-apache-commons-collections-2.1.so (0x0000002a9879c000)
        lib-javax-mail-20031006.so =>
/usr/lib64/lib-javax-mail-20031006.so (0x0000002a98989000)
        lib-javax-xml-transform-2.4.1.so =>
/usr/lib64/lib-javax-xml-transform-2.4.1.so (0x0000002a98b2f000)
        lib-org-apache-bcel-5.0.so =>
/usr/lib64/lib-org-apache-bcel-5.0.so (0x0000002a98c4c000)
        lib-javax-activation-20030319.so =>
/usr/lib64/lib-javax-activation-20030319.so (0x0000002a98f48000)

We've compiled a new version with symbol info (%define
__post_os_install %{nil}) and ran tomcat again. It seemed to get past
where it failed before. Now we get:

    Starting tomcat: tomcat: killed with signal 6
                                                          [FAILED]
And in the tomcat.out logfile:

    Bootstrap: Create Catalina server
    Created catalinaLoader in: /usr/share/tomcat/server/lib
    [INFO] Registry - -Loading registry information
    [INFO] Registry - -Creating new Registry instance
    [INFO] Registry - -Creating MBeanServer

And /var/log/messages has:

  Jan 30 13:23:56 dev-srv5 tomcat: tomcat: killed with signal 6
  Jan 30 13:23:56 dev-srv5 tomcat: tomcat startup failed

It's strange that tomcat is aborting without giving proper debug
information. 

Comment 3 Dag Wieers 2004-01-30 14:25:19 UTC
The new packages I created, have this difference for the given symbol
when disabling any stripping.

The original package:

    [root@dev-srv5 x86_64]# objdump -T
/usr/lib64/lib-com-redhat-tomcat-4.1.27.so  | grep Container
    0000000000000000      D  *UND*  0000000000000000             
_ZN3org6apache8catalina6logger10LoggerBase12getContainerEv

The non-stripped package (that works for the initially reported problem):

    [root@dev-srv5 x86_64]# objdump -T
/usr/lib64/lib-com-redhat-tomcat-4.1.27.so  | grep "ContainerEv$"
    0000000000000000      DF *UND*  000000000000000a             
_ZN3org6apache8catalina6logger10LoggerBase12getContainerEv

Where or why the SIGABRT occurs is still a problem.

Comment 4 Gary Benson 2004-05-07 16:22:01 UTC
Tomcat works in Fedora.

Comment 5 Dag Wieers 2004-05-07 16:46:27 UTC
That's fine, but I can't tell the customer to try Fedora when they've
payed for RHAS3 licenses.

Meanwhile they've compiled and installed everything themselves without
using packages, leaving them displeased.

I hope to be able to recompile the Fedora packages on RHEL3 and have a
working Tomcat for a next customer without too much hassle.

Thanks for the feedback.


Note You need to log in before you can comment on or make changes to this bug.