On Wed, 8 Mar 2000, [iso-8859-1] Fran=E7ois LETELLIER wrote: > BTW, the tutotial (mpxstut) is not accurate on a couple of points : > 1/ I found no way to use h2xs_app.plx to actually process a .h file. It's > OK to get a skeleton, but otherwise ??? > 2/ h2xs_app.plx needs to find mac_h2xs in @INC. Don't know. > 3/ xsubpp has to be extensively edited to modify the paths it contains > ($xsubpp, @options to find the typemaps, ...) I didn't think it was too extensive, but... I added a $srcdir to point to my MacPerl source, and $extdir is built from this. All others are built from either $srcdir or $extdir. I also added the line push(@options, '-typemap', "$path:typemap") if (-e "$path:typemap"); so that typemaps used by the external in question are included. I may have made other changes, too, that I don't remember anymore. Ultimately, I would like to see xsubpp get run from inside the makefile, where $srcdir and all necessary $extdir info is available, and where it should be anyway. But with MacOS X coming, it may just be easier to wait until things are fixed for free. :) > Well, after struggling with the above, I eventually went to *compiling* t= he > C code generated by xsubpp. CodeWarrior reports 100 errors (my C code is = 3 > lines long), due to dupplicate definitions of #defines or typedefs. > Obviously, some .h files are included twice or - what is worse - some of > them define the same things, but don't have compliant "include guards". As it says in the Tutorials, the Access Path order is important. In the CodeWarrior IDE, I have "(Project)" stuff _above_ my MacPerl Src path, and "(Compiler)" stuff above my perl,sfio/include, and GUSI/include paths. That order has worked for me. Also, #defining MULTIPLICITY is important--don't forget it like I did (once). After everything, you will still get warnings, but shouldn't see errors. The CW Linker should treat multiple definitions as a warning, unless you tell it otherwise. Things are a little messy right now, but there's hope for the future. HTH. -- MattLangford=20 =3D=3D=3D=3D Want to unsubscribe from this list? =3D=3D=3D=3D Send mail with body "unsubscribe" to macperl-modules-request@m= acperl.org