This is the mail archive of the automake@gnu.org mailing list for the automake project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: .cpp.lo


Alexandre Duret-Lutz wrote:

Waldemar Rosenbach:
| source='FiniteStateMachine.cpp' object='FiniteStateMachine.lo' libtool=yes \
| depfile='.deps/FiniteStateMachine.Plo'
| tmpdepfile='.deps/FiniteStateMachine.TPlo' \
| depmode=none /bin/sh ./depcomp \
| /bin/sh ./libtool --mode=compile g++ -DHAVE_CONFIG_H -I. -I. -I.
| -g
| -O2 -I/home/vofka/include -c -o FiniteStateMachine.lo `test -f
| FiniteStateMachine.cpp || echo './'`FiniteStateMachine.cpp
| source='FSMAction.cpp' object='FSMAction.lo' libtool=yes \
| depfile='.deps/FSMAction.Plo' tmpdepfile='.deps/FSMAction.TPlo' \
| depmode=none /bin/sh ./depcomp \
| /bin/sh ./libtool --mode=compile g++ -DHAVE_CONFIG_H -I. -I. -I.
| -g
| -O2 -I/home/vofka/include -c -o FSMAction.lo `test -f FSMAction.cpp ||
| echo './'`FSMAction.cpp
| /bin/sh ./libtool --mode=link g++  -g -O2 -I/home/vofka/include   -o
| libFiniteStateMachine.la -rpath /home/vofka/lib -version-info 0:0:0
| FiniteStateMachine.lo FSMAction.lo  -ldl  -L/home/vofka/lib -liError
| -liWrapper
| mkdir .libs
| rm -fr .libs/libFiniteStateMachine.la .libs/libFiniteStateMachine.*
| .libs/libFiniteStateMachine.*
| (cd . && ln -s FiniteStateMachine.lo FiniteStateMachine.o)
| (cd . && ln -s FSMAction.lo FSMAction.o)
| gcc -shared  FiniteStateMachine.lo FSMAction.lo  -ldl
| -L/home/vofka/lib -liError -liWrapper  -Wl,-soname
| -Wl,libFiniteStateMachine.so.0 -o
| .libs/libFiniteStateMachine.so.0.0.0
| gcc: FiniteStateMachine.lo: No such file or directory
| gcc: FSMAction.lo: No such file or directory

Which version of libtool are you using?

Waldemar Rosenbach (previous message):

Linux 2.4.18
GNU Make version 3.79.1
autoconf (GNU Autoconf) 2.52
automake (GNU automake) 1.6.2

automake generates in Makefile.in:
.cpp.lo:
@AMDEP_TRUE@ source='$<' object='$@' libtool=yes @AMDEPBACKSLASH@
@AMDEP_TRUE@ depfile='$(DEPDIR)/$*.Plo' tmpdepfile='$(DEPDIR)/$*.TPlo' @AMDEPBACKSLASH@
@AMDEP_TRUE@ $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
$(LTCXXCOMPILE) -c -o $@ `test -f $< || echo '$(srcdir)/'`$<
CXXDEPMODE = @CXXDEPMODE@
uninstall-info-am:

this become in Makefile:
.cpp.lo:
source='$<' object='$@' libtool=yes \
depfile='$(DEPDIR)/$*.Plo' tmpdepfile='$(DEPDIR)/$*.TPlo' \
$(CXXDEPMODE) $(depcomp) \
$(LTCXXCOMPILE) -c -o $@ `test -f $< || echo '$(srcdir)/'`$<
CXXDEPMODE = depmode=none
uninstall-info-am:

ltmain.sh (GNU libtool) 1.4.2 (1.922.2.53 2001/09/11 03:18:52)

I'm not familiar with libtool and automake. This was my first try. But I think the problem with the creation of the *.lo files is the problem with automake, because if I change the Makefile to be:
.cpp.lo:
source='$<' object='$@' libtool=yes \
&& depfile='$(DEPDIR)/$*.Plo' tmpdepfile='$(DEPDIR)/$*.TPlo' \
&& $(CXXDEPMODE) $(depcomp) \
&& $(LTCXXCOMPILE) -c -o $@ `test -f $< || echo '$(srcdir)/'`$<
CXXDEPMODE = depmode=none
uninstall-info-am:

(notice the apresands)

then all goes right and I get my .la file. I still don't have neither .a nor .so file, but this is another problem, isn't it?





Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]