🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: es.comp.os.linux.programacion
Article #6735

Re: Problemas enlazando librerías estáticas y dinámicas

#6735
From: J.A. Gutierrez
Date: Wed, 21 May 2003 08:20
45 lines
3157 bytes
Ra�l S�nchez <rasg@tid.es> wrote:
: Hola, 
:   Tengo una librer�a est�tica "libSM.a" que linka con una din�mica
: "libErrP.so" y otra est�tica "libCB.a".

:   El problema surge cuando intento compilar el ejecutable "EInvA" que
: ha de enlazar con "libCB.a" y "libSM.a"

: Compilo con las siguientes opciones:

: CC  -mt -fast -o RELEASE/EInvA RELEASE/inva.o -lsocket -lnsl -ldl
: -lCstd -lc -lnsl -lsocket -lclntsh  -L/ide/new/libs/libCB/STATIC -lCB 
: -L/ide/new/libs/libSM/STATIC -lSM

: Undefined symbol           first referenced in file
: int CB::Conectar(char*, char*)    /libs/libSM/STATIC/libSM.a (libSM.o)
: CB::CB()                      /libs/libSM/STATIC/libSM.a (libSM.o)
: CB::~CB()                      /libs/libSM/STATIC/libSM.a (libSM.o)

: Da la impresi�n de no leer bien los s�mbolos de libCB.a contenidos en
: libSM.a

: �Alguien tiene alguna idea de por qu� puede ser? �puede tener que ver
: que libCB.a est� compilada con otro compilador? �si es as�, c�mo lo
: puedo solucionar si no tengo las fuentes de libCB?.

	En Unix, por lo general, los linkers son de una pasada; por
	lo que influye el orden de las librerias en la linea de
	comandos. En tu caso, parece claro que libSM invoca a libCB,
	por lo tanto, esta tendra que aparecer despues.
	Asi, a ojo, la linea deberia ser mas bien:

CC  -mt -fast -o RELEASE/EInvA RELEASE/inva.o \
-L/ide/new/libs/libCB/STATIC -lCB \
-L/ide/new/libs/libSM/STATIC -lSM \
-lsocket -lnsl -lclntsh -ldl

	ya que, ademas, me extra~na que tengas que incluir explicitamente
	-lCstd -lc

-- 
finger spd@shiva.cps.unizar.es for PGP      /
.mailcap tip of the day:                   /             La vida es una carcel
application/ms-tnef; cat '%s' > /dev/null /           con las puertas abiertas
text/x-vcard; cat '%s' > /dev/null       /            (A. Calamaro)
Technical Details
Message-ID: <bafcs7$jv$2@localhost.escomposlinux.org>
Path: arc1-ca.pugleaf.net!archiver1.google.com!news1.google.com!newsfeed.stanford.edu!headwall.stanford.edu!newshub.sdsu.edu!cox.net!news-xfer.cox.net!mainake.escomposlinux.org!news.antakira.com!frodo.antakira.com!marmolejo.escomposlinux.org!not-for-mail
References: <49792c8a.0305200737.50cbb7b3@posting.google.com>

Show Full Headers
Complete Article Headers
X-Google-Language: SPANISH,ASCII
X-Google-Thread: f86c8,487987004b995fc5
X-Google-Attributes: gidf86c8,public
X-Google-ArrivalTime: 2003-05-21 01:20:25 PST
Path: arc1-ca.pugleaf.net!archiver1.google.com!news1.google.com!newsfeed.stanford.edu!headwall.stanford.edu!newshub.sdsu.edu!cox.net!news-xfer.cox.net!mainake.escomposlinux.org!news.antakira.com!frodo.antakira.com!marmolejo.escomposlinux.org!not-for-mail
From: "J.A. Gutierrez" <spd@daphne.cps.unizar.es>
Newsgroups: es.comp.os.linux.programacion
Subject: Re: Problemas enlazando librerías estáticas y dinámicas
Date: Wed, 21 May 2003 08:20:23 +0000 (UTC)
Organization: Rank
Lines: 45
Sender: "J.A. Gutierrez" <spd@shiva.cps.unizar.es>
Message-ID: <bafcs7$jv$2@localhost.escomposlinux.org>
References: <49792c8a.0305200737.50cbb7b3@posting.google.com>
NNTP-Posting-Host: shiva.cps.unizar.es
Mime-Version: 1.0
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: 8bit
X-Trace: localhost.escomposlinux.org 1053505223 639 155.210.152.10 (21 May 2003 08:20:23 GMT)
X-Complaints-To: newsmaster@marmolejo.escomposlinux.org
NNTP-Posting-Date: Wed, 21 May 2003 08:20:23 +0000 (UTC)
User-Agent: tin/1.4.7-20030322 ("Suggestions") (UNIX) (IRIX64/6.2 (IP19))