HP3000-L Archives

March 2006, Week 4

HP3000-L@RAVEN.UTC.EDU

Options: Use Monospaced Font
Show Text Part by Default
Show All Mail Headers

Message: [<< First] [< Prev] [Next >] [Last >>]
Topic: [<< First] [< Prev] [Next >] [Last >>]
Author: [<< First] [< Prev] [Next >] [Last >>]

Print Reply
Subject:
From:
Robert Collins <[log in to unmask]>
Reply To:
Robert Collins <[log in to unmask]>
Date:
Thu, 23 Mar 2006 09:14:29 -0500
Content-Type:
text/plain
Parts/Attachments:
text/plain (102 lines)
I passed your question on to one of my tech's and this is what I got
back:

Is this really a linker problem? No linker errors are reported and the
author says he can run the program. It only fails sometime after it's
started.

It could be that C++ needs to have its runtime environment initialized.

In the scenario where a C++ main program calls a Fortran routine which
calls a C++ function the C++ runtime environment is initialized by the
main program.

And in the scenario where a Fortran (or COBOL) main program calls a C++
function the c++ runtime is not initialized by the main program.


This help any?

Robert Collins
U.S. Sales Consultant
Transoft 
Part of Computer Software Group plc
2000 Riveredge Pkwy, Ste 450
Atlanta, GA 30328
Phone #: 706-265-4110 
Cell #:     770-789-1462
fax #:      706-265-1621
www.transoft.com  www.computersoftware.com

-----Original Message-----
From: HP-3000 Systems Discussion [mailto:[log in to unmask]] On
Behalf Of Bill Cadier
Sent: Wednesday, March 22, 2006 9:03 PM
To: [log in to unmask]
Subject: Re: [HP3000-L] Linking C Subroutines

John Clogg wrote:

> I have been trying to use the DES3 subroutines from version 9.0.6a of 
> the OpenSSL cryptography library, and have found them to be somewhat 
> buggy (If anyone has had success using them, I would love to hear from

> you).  In an effort to find a solution, I ordered the beta patch for
the 
> latest version of the WebWise web server, which was reported to
include 
> the newer version 9.0.7d of the library.  To my disappointment, I
found 
> that the crypto library isn't there in an executable form, but the 
> source code is, so I installed perl and gcc and compiled OpenSSL.
> 
> Now to my question:  When linking my program that calls these library 
> modules, I get two unresolved external references.  They are __udivdi3

> and __umoddi3.  Can anyone tell me where to find them?  TIA.
> 
> John Clogg

Those are in libgcc.a. For example:

/usr/local/lib/gcc-lib/hppa1.0-hp-mpeix/3.3.1/libgcc.a

MODULE NAME    : ../../gcc/libgcc2.c
VERSION        : 87102412
LENGTH         : 00002B7B


Sym                       C H X P Sym    Sym  Lset
Name                              Type  Scope Name
----                      - - - - ----  ----- ----
__udivdi3                 0   3 3 entry univ

MODULE NAME    : ../../gcc/libgcc2.c
VERSION        : 87102412
LENGTH         : 000029CF


Sym                       C H X P Sym    Sym  Lset
Name                              Type  Scope Name
----                      - - - - ----  ----- ----
__umoddi3                 0   3 3 entry univ

What I've read about this (and I'm no expert) is that these two 
functions can show up as unresolved when you attempt to link a non-gcc 
application with gcc-linked libraries. I thought I'd pass that on in 
case it helps!

Bill
hp/vCSY

* To join/leave the list, search archives, change list settings, *
* etc., please visit http://raven.utc.edu/archives/hp3000-l.html *

______________________________________________________________________
This email has been scanned by the MessageLabs Email Security System.
For more information please visit http://www.messagelabs.com/email 
______________________________________________________________________

* To join/leave the list, search archives, change list settings, *
* etc., please visit http://raven.utc.edu/archives/hp3000-l.html *

ATOM RSS1 RSS2