Hola, actuamente estoy usando el Borland C++5.02 porque necesito programar para un sistema embebido en particular.
Mi problema es el siguiente, me cree una libreria con el siguiente makefile
# Makefile.bor para Make de Borland C++ 5.5.1
CXXFLAGS = -IC:\Borland\BCC55\Include \
-IC:\libupnp-1.4.3\libupnp-1.4.3\ixml\src\inc \
-IC:\libupnp-1.4.3\libupnp-1.4.3\ixml\inc
LIBS = -LC:\Borland\BCC55\Lib
all: planets.lib
planets.lib: attr.obj document.obj ixml.obj ixmlmembuf.obj ixmlparser.obj namedNodeMap.obj node.obj nodeList.obj
C:\BC5\BIN\tlib /C /0 planets -+attr.obj -+document.obj +-ixml.obj +-ixmlmembuf.obj +-ixmlparser.obj +-namedNodeMap.obj +-node.obj +-nodeList.obj
attr.obj: attr.c
C:\BC5\BIN\bcc $(CXXFLAGS) $(LIBS) -c attr.c
document.obj: document.c
C:\BC5\BIN\bcc $(CXXFLAGS) $(LIBS) -c document.c
ixml.obj: ixml.c
C:\BC5\BIN\bcc $(CXXFLAGS) $(LIBS) -c ixml.c
ixmlmembuf.obj: ixmlmembuf.c
C:\BC5\BIN\bcc $(CXXFLAGS) $(LIBS) -c ixmlmembuf.c
ixmlparser.obj: ixmlparser.c
C:\BC5\BIN\bcc $(CXXFLAGS) $(LIBS) -c ixmlparser.c
namedNodeMap.obj: namedNodeMap.c
C:\BC5\BIN\bcc $(CXXFLAGS) $(LIBS) -c namedNodeMap.c
node.obj: node.c
C:\BC5\BIN\bcc $(CXXFLAGS) $(LIBS) -c node.c
nodeList.obj: nodeList.c
C:\BC5\BIN\bcc $(CXXFLAGS) $(LIBS) -c nodeList.c
# -c Compile to .OBJ, no link
# -P Perform C++ compile regardless of source extension
# -Q Extended compiler error information (Default = OFF)
Y posteriormente un makefile para crear el ejecutable
# Makefile2.bor construir la aplicación planets.exe (Borland C++ 5.5.1)
LIBS = -Lc:\bc5\lib \
-LC:\Projects\IXML
CXXFLAGS = -Ic:\bc5\include
all: pru.exe
pru.exe: pru.c
c:\Borland\BCC55\BIN\bcc -1 -epru.exe $(CXXFLAGS) $(LIBS) pru.c planets.LIB
Compila con la opcion de 80186 porque lo necesito.
Pues al crear el ejecutable me da el siguiente error
C:\Projects\IXML>c:\Borland\BCC55\Bin\make.exe -fmakefile.bor
MAKE Version 5.2 Copyright (c) 1987, 2000 Borland
bcc -1 -epru.exe -Ic:\bc5\include -Lc:\bc5\lib -LC:\Projects\IXML pru.c planets.LIB
Borland C++ 5.2 Copyright (c) 1987, 1997 Borland International
Mar 19 1997 17:29:40
pru.c:
Warning pru.c 135: Function should return a value in function main
Turbo Link Version 7.1.32.2. Copyright (c) 1987, 1996 Borland International
Error: Undefined symbol _ixmlElement_free in library file planets.lib in module document
Error: Undefined symbol _ixmlElement_init in library file planets.lib in module document
Error: Undefined symbol __assert in library file planets.lib in module ixmlmembuf
Error: Undefined symbol _ixmlElement_setAttributeNode in library file planets.lib in module ixmlparser
Error: Undefined symbol _strncasecmp in library file planets.lib in module ixmlparser
Error: Undefined symbol _ixmlElement_setTagName in library file planets.lib in module node
** error 1 ** deleting pru.exe
¿Alguna sugerencia de porque?
Gracias