[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Condor-users] Csim and condor_compile

I got a problem to compile my project. I use CSIM (a tool for simulation). In my project there isn't a "main" function. CSIM imposes me to use this function (instead of "main"):

extern "C" void sim(int argc, char** argv){

If I compile without condor_compile, my g++ compiler works fine. With condor_compile I got this error:

condor_compile g++ -O3 -DCPP -I/opt/csim_cpp-19.0/lib *.o /opt/csim_cpp-19.0/lib/csim.cpp.a -lm
LINKING FOR CONDOR : /usr/bin/ld -L/opt/condor-6.6.5/lib -Bstatic --eh-frame-hdr -m elf_i386 -dynamic-linker /lib/ld-linux.so.2 /opt/condor-6.6.5/lib/condor_rt0.o /usr/lib/gcc-lib/i386-redhat-linux/3.2.2/../../../crti.o /usr/lib/gcc-lib/i386-redhat-linux/3.2.2/crtbeginT.o -L/opt/condor-6.6.5/lib -L/usr/lib/gcc-lib/i386-redhat-linux/3.2.2 -L/usr/lib/gcc-lib/i386-redhat-linux/3.2.2/../../.. BagOfTask.o Broker.o ChkPntMng.o em.o FaultMng.o Msg.o RscDst.o RscFrR.o RscHw.o RscMng.o Rsc.o Task.o /opt/csim_cpp-19.0/lib/csim.cpp.a /opt/condor-6.6.5/lib/libcondorzsyscall.a /opt/condor-6.6.5/lib/libz.a /opt/condor-6.6.5/lib/libcomp_libstdc++.a /opt/condor-6.6.5/lib/libcomp_libstdc++.a -lm /opt/condor-6.6.5/lib/libcomp_libgcc.a /opt/condor-6.6.5/lib/libcomp_libgcc_eh.a -lc -lnss_files -lnss_dns -lresolv -lc -lnss_files -lnss_dns -lresolv -lc /opt/condor-6.6.5/lib/libcomp_libgcc.a /opt/condor-6.6.5/lib/libcomp_libgcc_eh.a /usr/lib/gcc-lib/i386-redhat-linux/3.2.2/crtend.o /usr/lib/gcc-lib/i386-redhat-linux/3.2.2/../../../crtn.o
/opt/condor-6.6.5/lib/libcondorzsyscall.a(condor_file_agent.o)(.text+0x250): In function `CondorFileAgent::open(char const*, int, int)':
: the use of `tmpnam' is dangerous, better use `mkstemp'
/opt/condor-6.6.5/lib/libcondorzsyscall.a(remote_startup.o)(.text+0x6f1): In function `MAIN':: undefined reference to `main'
collect2: ld returned 1 exit status
make: *** [all] Error 1

My Makefile is:

CC    = condor_compile g++
LIB    = -O3 -DCPP -I/opt/csim_cpp-19.0/lib
END    = /opt/csim_cpp-19.0/lib/csim.cpp.a -lm

#LIB    = -O3 -DCPP -I/export/now01/mex/csimCD/csim_cpp-19.0/lib
#END    = /export/now01/mex/csimCD/csim_cpp-19.0/lib/csim.cpp.a -lm

#LIB    = -g -DDEBUG -DCPP -I/export/now01/mex/csimCD/csim_cpp-19.0/lib
#END    = /export/now01/mex/csimCD/csim_cpp-19.0/lib/csim.cpp.a -lm

#LIB    = -g -DCPP -DGPP -I/export/now01/mex/csim_cpp-19.0_modified/lib
#END    = /export/now01/mex/csim_cpp-19.0_modified/lib/csim.gpp.a -lm

all : Task.o BagOfTask.o Msg.o RscDst.o RscFrR.o RscHw.o Broker.o ChkPntMng.o FaultMng.o RscMng.o Rsc.o em.o
$(CC) $(LIB) *.o $(END)

em.o : em.cpp em.h Task.h RscMng.h Msg.h
   $(CC) $(LIB) -c em.cpp

Broker.o : Broker.h Broker.cpp em.h Msg.h Task.h
   $(CC) $(LIB) -c Broker.cpp

ChkPntMng.o : ChkPntMng.h ChkPntMng.cpp em.h
   $(CC)  $(LIB) -c ChkPntMng.cpp

FaultMng.o : FaultMng.h FaultMng.cpp Rsc.o Msg.h
   $(CC)   $(LIB) -c FaultMng.cpp

Task.o : Task.h Task.cpp
$(CC) -O3 -c Task.cpp

Msg.o : Msg.h Msg.cpp
$(CC) -O3 -c Msg.cpp

Rsc.o : Rsc.h Rsc.cpp RscFrR.h em.h FaultMng.h Msg.h
   $(CC)  $(LIB) -c Rsc.cpp

RscMng.o : RscMng.h RscMng.cpp em.h Rsc.h RscHw.h RscFrR.h
   $(CC)  $(LIB) -c RscMng.cpp

RscHw.o : RscHw.h RscHw.cpp em.h FaultMng.h
   $(CC)  $(LIB) -c RscHw.cpp

RscDst.o : RscDst.h RscDst.cpp em.h
   $(CC) $(LIB) -c RscDst.cpp

RscFrR.o : RscFrR.h RscFrR.cpp RscDst.h
   $(CC) $(LIB) -c RscFrR.cpp

BagOfTask.o : BagOfTask.h BagOfTask.cpp
   $(CC) $(LIB) -c BagOfTask.cpp

Could you help me, please?

Thanks in advance,