Erro ao executar meu makefile para o compilador C do AIX UNIX

0

Abaixo está o meu makefile

CC = xlC    
CFLAGS  = $(DEBUG) -O -q64 -qrtti=all \    
    -I$(ORACLE_HOME)/rdbms/demo -I$(ORACLE_HOME)/rdbms/public \    
    -I$(ORACLE_HOME)/network/public -I$(ORACLE_HOME)/precomp/public -I$(ORACLE_HOME)/plsql/public \    
    -I. -I../inc \   
    -I/usr/include -I/usr/xlc/include \    
    -I/usr/vacpp/include \    
    -I/usr/vacpp/iocsrc/core/base \    
    -I/usr/vacpp/iocsrc/core/utils \    
    -I /usr/vacpp/iocsrc/core/streams    
IBM_LIBPATH=-L/usr/vacpp/lib    
IBM_LIBS= -liocns -liconv    

ORACLE_LIBPATH=-L$(ORACLE_HOME)/lib -L$(ORACLE_HOME)/rdbms/lib    
ORACLE_LIBS=-lclntsh -lld -lm    

MQ_LIBPATH=-L$(MQM_HOME)/lib64    
MQLIB = $(MQ_LIBPATH) -lmqm -lmqmcs -lmqmzse    

LIBS    =  $(IBM_LIBS)  $(MQLIB) $(ORACLE_LIBS) -lpthreads    
LIBS    =   $(MQLIB) $(ORACLE_LIBS) -lpthreads    
LDFLAGS = -q64 $(IBM_LIBPATH) $(MQ_LIBPATH) $(ORACLE_LIBPATH)    

SOURCE=../src    
EXE     = $(SOURCE)/fin2ici    
MAIN    =  $(SOURCE)/fin2ici.c    
OBJS = $(SOURCE)/fin2ici.o $(SOURCE)/dte_mq.o    

.SUFFIXES: .c .o    

# Compilation rules    
.C.o:    
    $(CC) $(CFLAGS) -c -o ${<:.c=.o} $<    

.c.o:    
    $(CC) $(CFLAGS) -c -o ${<:.c=.o} $<    

all: $(EXE)    

    @(EXE)     
    @if [ -z "$(DEBUG)" ];\    
    then \    
            echo "Copying files to bin direectory"; \    
            cp $(EXE) ../bin; \    
            rm -f $(OBJS); \    
            rm -f ${MAIN:.c=.o}; \    

 fi;    
    @echo "Done"    

$(EXE): $(OBJS) ${MAIN:.c=.o}    
    $(CC) $(LDFLAGS) -o $(EXE) $(OBJS) ${MAIN:.c=.o} $(LIBS)    
clean:    
    \rm -f $(OBJS)    
    \rm -f ${MAIN:.c.o}    
    \rm -f $(EXE)    

# DO NOT DELETE THIS LINE -- make depend depends on it.    
#$(SOURCE)/iciio.o: ../inc/parser.h ../inc/tblDef.h ../inc/iciio.h    
#$(SOURCE)/tblDef.o: ../inc/parser.h ../inc/tblDef.h    
#$(SOURCE)/icidata.o: ../inc/parser.h ../inc/tblDef.h ../inc/iciio.h    

quando eu o executo, sempre recebo o mesmo erro

make -f ./makefile.fin2ici_bak xlC -q64 -L/usr/vacpp/lib -L/usr/mqm/lib64 -L/data/oracle/product/11.2.0.4.7/lib -L/data/oracle/product/11.2.0.4.7/rdbms/lib -o ../src/fin2ici ../src/fin2ici.o ../src/dte_mq.o ../src/fin2ici.o -L/usr/mqm/lib64 -lmqm -lmqmcs -lmqmzse -lclntsh -lld -lm -lpthreads
ld: 0711-738 ERROR: Input file ../src/fin2ici.o:
XCOFF32 object files are not allowed in 64-bit mode.
make: The error code from the last command is 8.

Stop.

Alguma ideia, onde está o erro?

    
por Oleg 29.12.2017 / 17:04

0 respostas

Tags