[Pkg-ace-devel] Re: [libtao-doc] Compiling examples

Thomas Girard thomas.g.girard at free.fr
Tue May 8 11:35:25 UTC 2007


Hello Pascal,

On Fri, May 04, 2007 at 02:04:42PM -0400, Pascal Giard wrote:
> >Please let me know if instructions work for you.
> 
> Short answer: nope, it doesn't.
> 
> I think it needs an update and the macro files might need some
> modifications unless i did something wrong...

[...]

> >== Compiling examples ==
> >
> >To compile ACE or TAO examples (in libace-doc and libtao-orbsvcs-doc), 
> >you'll
> need:
> 
> libtao-orbsvcs-doc doesn't exist. I think it should be libtao-doc.

You're right.

[...]

> >4. to regenerate the GNUmakefiles for this new location:
> >  cd $HOME/ex1
> >  mwc-ace -recurse -value_project install=. -value_project libout=.
> 
> This seems to work as i get:
> Generating gnuace output using ./
> Generation Time: 0s
> 
> That said, the GNUmakefile isn't updated... perhaps it's only because
> it's already ok.

Indeed; I have tried on my machine and it's not either. But there's no
.mwc file in Quoter, only an .mpc file. I should probably have explained
this better in the README (and will do) but this means that you should
replace `mwc-ace' in the previous invocation with `mpc-ace'. Doing this
updates the GNUmakefile.

> >5. now you can compile your example.
> 
> Unless it's something else than "make" i get the following errors:
> 
> make[1]: entrant dans le répertoire « /home/pgiard/tao_examples/Quoter »
> 
> GNUmakefile: 
> /home/pgiard/tao_examples/Quoter/GNUmakefile.Quoter_Factory_Finder
> MAKEFLAGS=w
> 
> make[1]: *** Pas de règle pour fabriquer la cible «
> ../../../bin/tao_idl », nécessaire pour « QuoterC.cpp ». Arrêt.
> make[1]: quittant le répertoire « /home/pgiard/tao_examples/Quoter »
> make: *** [Quoter_Factory_Finder] Erreur 2

After installing tao-idl and gperf-ace packages, which are needed as
well for the Quoter example, the Quoter example now fails with:

  GNUmakefile: /home/thomas/Quoter/GNUmakefile.Quoter_Factory_Finder MAKEFLAGS=w

  /usr/share/ace/bin/tao_idl -Ge 1 -Wb,pre_include=ace/pre.h -Wb,post_include=ace/post.h -I/usr/share/ace/TAO -I/usr/share/ace/TAO/orbsvcs -I../../orbsvcs/orbsvcs Quoter.idl
  Quoter.idl:18:28: error: CosLifeCycle.idl: Aucun fichier ou répertoire de ce type
  tao_idl.real: preprocessor "g++" returned with an error
  make[1]: *** [QuoterC.cpp] Erreur 1
  make[1]: quittant le répertoire « /home/thomas/Quoter »
  make: *** [Quoter_Factory_Finder] Erreur 2

because there's no CosLifeCycle.idl in ../../orbsvcs/orbsvcs :(

But that's because the Quoter example uses relative path; if you replace
lines with ../.. in Quoter.mpc with $(TAO_ROOT), so that lines looking:

  idlflags += -I../../orbsvcs/orbsvcs
  includes += ../../orbsvcs/orbsvcs

become:

  idlflags += -I$(TAO_ROOT)/orbsvcs/orbsvcs
  includes += $(TAO_ROOT)/orbsvcs/orbsvcs

Now run mpc-ace again; then make and it compiles fine.

I hope it would have been easier with another example ;-)

I'll fix the README.Debian file.

> FWIW, i've created a minimalist configure.ac and Makefile.am for
> libtao-doc/examples/Simple/echo and it works great.
> 
> I've attached both files in case it's useful.

I'll have a look at these, thanks!

> Finally, i can see that some examples include perl scripts that use a
> PerlACE module. I couldn't find any debian package with it... is this
> known to you maintainers?

I have never felt the PerlACE was needed and understood it was only
needed for unit tests, but I may be wrong. I'll have another look at
it.

Thanks,

Thomas



More information about the Pkg-ace-devel mailing list