[ncl-install] compiling wrapit
Mary Haley
haley at ucar.edu
Thu Jan 3 20:29:42 MST 2008
Sorry, one more thing: make sure you use the original version of
your Makefile, because you want to be sure y.tab.c gets compiled.
You can do this by typing "make me" before you type "make install".
--Mary
On Jan 3, 2008, at 8:24 PM, Mary Haley wrote:
> Hi Alexander,
>
> I need to look into this, but I think your wrapit.c file got
> clobbered. It shouldn't
> be the same as y.tab.c.<wrapit.c>
>
> Can you take the attached wrapit.c file, copy it to
> $NCARG/ni/src/mkwrap, and
> then type:
>
> cd $NCARG/ni/src/mkwrap
> make install
>
> Let me know if your wrapit.c file ends up being the same as y.tab.c
> again.
>
> Thanks,
>
> --Mary
>
>
>
> On Jan 3, 2008, at 4:41 PM, Alexander Petkov wrote:
>
>> Hi:
>>
>> I have 2 problems with compiling wrapit77 in the $NCARG/ni/src/mkwrap
>> directory:
>> 1) The generated Makefile tell gcc to link both y.tab.o and wrapit.o
>> while it compiles wrapit77:
>> gcc -ansi -fPIC -O -o wrapit77 y.tab.o lex.yy.o Symbol.o wrapit.o
>> -L/opt/ncl_ncarg-5.0.0/lib -L/usr/X11R6/lib64
>> -L/opt/netcdf-3.6.2/gnu/lib -L/opt/hdf4/lib -lfl
>>
>> This results in a number of "multiple definition" errors. I can see
>> that wrapit.c and y.tab.c are tha same file.
>> I can get around this problem by editing the Makefile.
>>
>> 2) There are number of "undefined reference" messages to functions
>> which I cannot find where they are defined. Can I get any help with
>> that?
>>
>>
>> Here is the error output of the make all target for wrapit77:
>>
>> gcc -ansi -fPIC -O -o wrapit77 y.tab.o lex.yy.o Symbol.o wrapit.o
>> -L/opt/ncl_ncarg-5.0.0/lib -L/usr/X11R6/lib64
>> -L/opt/netcdf-3.6.2/gnu/lib -L/opt/hdf4/lib -lfl
>> wrapit.o(.bss+0x0): multiple definition of `theparam'
>> y.tab.o(.bss+0x0): first defined here
>> wrapit.o(.text+0x0): In function `WMakeListNode':
>> : multiple definition of `WMakeListNode'
>> y.tab.o(.text+0x0): first defined here
>> wrapit.o(.text+0x22): In function `FType':
>> : multiple definition of `FType'
>> y.tab.o(.text+0x22): first defined here
>> wrapit.o(.text+0x43): In function `NType':
>> : multiple definition of `NType'
>> y.tab.o(.text+0x43): first defined here
>> wrapit.o(.text+0xc9): In function `CType':
>> : multiple definition of `CType'
>> y.tab.o(.text+0xc9): first defined here
>> wrapit.o(.text+0x146): In function `yyparse':
>> : multiple definition of `yyparse'
>> y.tab.o(.text+0x146): first defined here
>> wrapit.o(.text+0x5309): In function `yyerror':
>> : multiple definition of `yyerror'
>> y.tab.o(.text+0x5309): first defined here
>> y.tab.o(.text+0x475): In function `yyparse':
>> : undefined reference to `current'
>> y.tab.o(.text+0x54e): In function `yyparse':
>> : undefined reference to `current'
>> y.tab.o(.text+0x660): In function `yyparse':
>> : undefined reference to `current'
>> y.tab.o(.text+0x6b1): In function `yyparse':
>> : undefined reference to `current'
>> y.tab.o(.text+0x702): In function `yyparse':
>> : undefined reference to `current'
>> y.tab.o(.text+0x87c): more undefined references to `current' follow
>> y.tab.o(.text+0xdf0): In function `yyparse':
>> : undefined reference to `WNewCallRec'
>> y.tab.o(.text+0xfb1): In function `yyparse':
>> : undefined reference to `current'
>> y.tab.o(.text+0x1060): In function `yyparse':
>> : undefined reference to `WNewVDef'
>> y.tab.o(.text+0x10f2): In function `yyparse':
>> : undefined reference to `WNewVDef'
>> y.tab.o(.text+0x1147): In function `yyparse':
>> : undefined reference to `current'
>> y.tab.o(.text+0x1184): In function `yyparse':
>> : undefined reference to `WNewArgVal'
>> y.tab.o(.text+0x12c4): In function `yyparse':
>> : undefined reference to `WNewVDef'
>> y.tab.o(.text+0x13cd): In function `yyparse':
>> : undefined reference to `WNewVDef'
>> y.tab.o(.text+0x1433): In function `yyparse':
>> : undefined reference to `WNewAdditionalSrc'
>> y.tab.o(.text+0x14b4): In function `yyparse':
>> : undefined reference to `WNewVDef'
>> y.tab.o(.text+0x150e): In function `yyparse':
>> : undefined reference to `WNewAdditionalSrc'
>> y.tab.o(.text+0x1583): In function `yyparse':
>> : undefined reference to `WNewAdditionalSrc'
>> y.tab.o(.text+0x1632): In function `yyparse':
>> : undefined reference to `current'
>> y.tab.o(.text+0x1646): In function `yyparse':
>> : undefined reference to `DoDimsizes'
>> y.tab.o(.text+0x16e6): In function `yyparse':
>> : undefined reference to `WNewAdditionalSrc'
>> y.tab.o(.text+0x17c0): In function `yyparse':
>> : undefined reference to `current'
>> y.tab.o(.text+0x1817): In function `yyparse':
>> : undefined reference to `WNewCallRec'
>> y.tab.o(.text+0x19eb): In function `yyparse':
>> : undefined reference to `current'
>> y.tab.o(.text+0x1a8f): In function `yyparse':
>> : undefined reference to `current'
>> y.tab.o(.text+0x1ad0): In function `yyparse':
>> : undefined reference to `WNewArgVal'
>> y.tab.o(.text+0x1c0f): In function `yyparse':
>> : undefined reference to `WNewVDef'
>> y.tab.o(.text+0x1d15): In function `yyparse':
>> : undefined reference to `WNewVDef'
>> y.tab.o(.text+0x1d7a): In function `yyparse':
>> : undefined reference to `WNewAdditionalSrc'
>> y.tab.o(.text+0x1dfa): In function `yyparse':
>> : undefined reference to `WNewVDef'
>> y.tab.o(.text+0x1e54): In function `yyparse':
>> : undefined reference to `WNewAdditionalSrc'
>> y.tab.o(.text+0x1ec9): In function `yyparse':
>> : undefined reference to `WNewAdditionalSrc'
>> y.tab.o(.text+0x1f78): In function `yyparse':
>> : undefined reference to `current'
>> y.tab.o(.text+0x1f8c): In function `yyparse':
>> : undefined reference to `DoDimsizes'
>> y.tab.o(.text+0x202c): In function `yyparse':
>> : undefined reference to `WNewAdditionalSrc'
>> y.tab.o(.text+0x20b9): In function `yyparse':
>> : undefined reference to `current'
>> y.tab.o(.text+0x2116): In function `yyparse':
>> : undefined reference to `WNewCallRec'
>> y.tab.o(.text+0x24e5): In function `yyparse':
>> : undefined reference to `current'
>> y.tab.o(.text+0x25de): In function `yyparse':
>> : undefined reference to `current'
>> y.tab.o(.text+0x2f6b): In function `yyparse':
>> : undefined reference to `current'
>> y.tab.o(.text+0x300d): In function `yyparse':
>> : undefined reference to `current'
>> y.tab.o(.text+0x3079): In function `yyparse':
>> : undefined reference to `current'
>> y.tab.o(.text+0x30e5): more undefined references to `current' follow
>> y.tab.o(.text+0x321c): In function `yyparse':
>> : undefined reference to `WNewArgVal'
>> y.tab.o(.text+0x3279): In function `yyparse':
>> : undefined reference to `WNewVDef'
>> y.tab.o(.text+0x32f5): In function `yyparse':
>> : undefined reference to `WNewArgVal'
>> y.tab.o(.text+0x3325): In function `yyparse':
>> : undefined reference to `WNewVDef'
>> y.tab.o(.text+0x33e1): In function `yyparse':
>> : undefined reference to `WNewVDef'
>> y.tab.o(.text+0x349a): In function `yyparse':
>> : undefined reference to `WNewArgVal'
>> y.tab.o(.text+0x34eb): In function `yyparse':
>> : undefined reference to `WNewVDef'
>> y.tab.o(.text+0x35b4): In function `yyparse':
>> : undefined reference to `WNewVDef'
>> y.tab.o(.text+0x35f6): In function `yyparse':
>> : undefined reference to `WNewVDef'
>> y.tab.o(.text+0x36d9): In function `yyparse':
>> : undefined reference to `WNewArgVal'
>> y.tab.o(.text+0x372e): In function `yyparse':
>> : undefined reference to `WNewVDef'
>> y.tab.o(.text+0x37f5): In function `yyparse':
>> : undefined reference to `WNewVDef'
>> y.tab.o(.text+0x3862): In function `yyparse':
>> : undefined reference to `WNewVDef'
>> y.tab.o(.text+0x38f0): In function `yyparse':
>> : undefined reference to `WNewVDef'
>> y.tab.o(.text+0x3b7f): In function `yyparse':
>> : undefined reference to `current'
>> y.tab.o(.text+0x3da4): In function `yyparse':
>> : undefined reference to `current'
>> y.tab.o(.text+0x3ed6): In function `yyparse':
>> : undefined reference to `WNewAdditionalSrc'
>> y.tab.o(.text+0x3ef0): In function `yyparse':
>> : undefined reference to `WNewAdditionalSrc'
>> y.tab.o(.text+0x3f25): In function `yyparse':
>> : undefined reference to `current'
>> y.tab.o(.text+0x3f71): In function `yyparse':
>> : undefined reference to `NewParamLoc'
>> y.tab.o(.text+0x3fb9): In function `yyparse':
>> : undefined reference to `WNewVDef'
>> y.tab.o(.text+0x40b5): In function `yyparse':
>> : undefined reference to `DoTotal'
>> y.tab.o(.text+0x4178): In function `yyparse':
>> : undefined reference to `NewParamLoc'
>> y.tab.o(.text+0x418a): In function `yyparse':
>> : undefined reference to `DoDimsizes'
>> y.tab.o(.text+0x41ad): In function `yyparse':
>> : undefined reference to `current'
>> y.tab.o(.text+0x42a6): In function `yyparse':
>> : undefined reference to `NewParamLoc'
>> y.tab.o(.text+0x42b8): In function `yyparse':
>> : undefined reference to `DoTotal'
>> y.tab.o(.text+0x432a): In function `yyparse':
>> : undefined reference to `current'
>> y.tab.o(.text+0x437e): In function `yyparse':
>> : undefined reference to `NewParamLoc'
>> y.tab.o(.text+0x4390): In function `yyparse':
>> : undefined reference to `DoDimsizes'
>> y.tab.o(.text+0x4418): In function `yyparse':
>> : undefined reference to `current'
>> y.tab.o(.text+0x446c): In function `yyparse':
>> : undefined reference to `NewParamLoc'
>> y.tab.o(.text+0x447f): In function `yyparse':
>> : undefined reference to `DoDimsizes'
>> y.tab.o(.text+0x44eb): In function `yyparse':
>> : undefined reference to `current'
>> y.tab.o(.text+0x45e5): In function `yyparse':
>> : undefined reference to `DoTotal'
>> y.tab.o(.text+0x4626): In function `yyparse':
>> : undefined reference to `DoDimsizes'
>> y.tab.o(.text+0x466f): In function `yyparse':
>> : undefined reference to `DoDimsizes'
>> y.tab.o(.text+0x46e9): In function `yyparse':
>> : undefined reference to `DoTotal'
>> y.tab.o(.text+0x472a): In function `yyparse':
>> : undefined reference to `DoDimsizes'
>> y.tab.o(.text+0x4773): In function `yyparse':
>> : undefined reference to `DoDimsizes'
>> y.tab.o(.text+0x4824): In function `yyparse':
>> : undefined reference to `DoTotal'
>> y.tab.o(.text+0x4865): In function `yyparse':
>> : undefined reference to `DoDimsizes'
>> y.tab.o(.text+0x48ae): In function `yyparse':
>> : undefined reference to `DoDimsizes'
>> y.tab.o(.text+0x4ad7): In function `yyparse':
>> : undefined reference to `current'
>> y.tab.o(.text+0x4ba1): In function `yyparse':
>> : undefined reference to `current'
>> y.tab.o(.text+0x4dc2): In function `yyparse':
>> : undefined reference to `current'
>> lex.yy.o(.text+0x215): In function `yylex':
>> : undefined reference to `WNewWrap'
>> lex.yy.o(.text+0x28b): In function `yylex':
>> : undefined reference to `current'
>> lex.yy.o(.text+0x2d3): In function `yylex':
>> : undefined reference to `current'
>> lex.yy.o(.text+0x309): In function `yylex':
>> : undefined reference to `current'
>> wrapit.o(.text+0x475): In function `yyparse':
>> : undefined reference to `current'
>> wrapit.o(.text+0x54e): In function `yyparse':
>> : undefined reference to `current'
>> wrapit.o(.text+0x660): more undefined references to `current' follow
>> wrapit.o(.text+0xdf0): In function `yyparse':
>> : undefined reference to `WNewCallRec'
>> wrapit.o(.text+0xfb1): In function `yyparse':
>> : undefined reference to `current'
>> wrapit.o(.text+0x1060): In function `yyparse':
>> : undefined reference to `WNewVDef'
>> wrapit.o(.text+0x10f2): In function `yyparse':
>> : undefined reference to `WNewVDef'
>> wrapit.o(.text+0x1147): In function `yyparse':
>> : undefined reference to `current'
>> wrapit.o(.text+0x1184): In function `yyparse':
>> : undefined reference to `WNewArgVal'
>> wrapit.o(.text+0x12c4): In function `yyparse':
>> : undefined reference to `WNewVDef'
>> wrapit.o(.text+0x13cd): In function `yyparse':
>> : undefined reference to `WNewVDef'
>> wrapit.o(.text+0x1433): In function `yyparse':
>> : undefined reference to `WNewAdditionalSrc'
>> wrapit.o(.text+0x14b4): In function `yyparse':
>> : undefined reference to `WNewVDef'
>> wrapit.o(.text+0x150e): In function `yyparse':
>> : undefined reference to `WNewAdditionalSrc'
>> wrapit.o(.text+0x1583): In function `yyparse':
>> : undefined reference to `WNewAdditionalSrc'
>> wrapit.o(.text+0x1632): In function `yyparse':
>> : undefined reference to `current'
>> wrapit.o(.text+0x1646): In function `yyparse':
>> : undefined reference to `DoDimsizes'
>> wrapit.o(.text+0x16e6): In function `yyparse':
>> : undefined reference to `WNewAdditionalSrc'
>> wrapit.o(.text+0x17c0): In function `yyparse':
>> : undefined reference to `current'
>> wrapit.o(.text+0x1817): In function `yyparse':
>> : undefined reference to `WNewCallRec'
>> wrapit.o(.text+0x19eb): In function `yyparse':
>> : undefined reference to `current'
>> wrapit.o(.text+0x1a8f): In function `yyparse':
>> : undefined reference to `current'
>> wrapit.o(.text+0x1ad0): In function `yyparse':
>> : undefined reference to `WNewArgVal'
>> wrapit.o(.text+0x1c0f): In function `yyparse':
>> : undefined reference to `WNewVDef'
>> wrapit.o(.text+0x1d15): In function `yyparse':
>> : undefined reference to `WNewVDef'
>> wrapit.o(.text+0x1d7a): In function `yyparse':
>> : undefined reference to `WNewAdditionalSrc'
>> wrapit.o(.text+0x1dfa): In function `yyparse':
>> : undefined reference to `WNewVDef'
>> wrapit.o(.text+0x1e54): In function `yyparse':
>> : undefined reference to `WNewAdditionalSrc'
>> wrapit.o(.text+0x1ec9): In function `yyparse':
>> : undefined reference to `WNewAdditionalSrc'
>> wrapit.o(.text+0x1f78): In function `yyparse':
>> : undefined reference to `current'
>> wrapit.o(.text+0x1f8c): In function `yyparse':
>> : undefined reference to `DoDimsizes'
>> wrapit.o(.text+0x202c): In function `yyparse':
>> : undefined reference to `WNewAdditionalSrc'
>> wrapit.o(.text+0x20b9): In function `yyparse':
>> : undefined reference to `current'
>> wrapit.o(.text+0x2116): In function `yyparse':
>> : undefined reference to `WNewCallRec'
>> wrapit.o(.text+0x24e5): In function `yyparse':
>> : undefined reference to `current'
>> wrapit.o(.text+0x25de): In function `yyparse':
>> : undefined reference to `current'
>> wrapit.o(.text+0x2f6b): In function `yyparse':
>> : undefined reference to `current'
>> wrapit.o(.text+0x300d): In function `yyparse':
>> : undefined reference to `current'
>> wrapit.o(.text+0x3079): In function `yyparse':
>> : undefined reference to `current'
>> wrapit.o(.text+0x30e5): more undefined references to `current' follow
>> wrapit.o(.text+0x321c): In function `yyparse':
>> : undefined reference to `WNewArgVal'
>> wrapit.o(.text+0x3279): In function `yyparse':
>> : undefined reference to `WNewVDef'
>> wrapit.o(.text+0x32f5): In function `yyparse':
>> : undefined reference to `WNewArgVal'
>> wrapit.o(.text+0x3325): In function `yyparse':
>> : undefined reference to `WNewVDef'
>> wrapit.o(.text+0x33e1): In function `yyparse':
>> : undefined reference to `WNewVDef'
>> wrapit.o(.text+0x349a): In function `yyparse':
>> : undefined reference to `WNewArgVal'
>> wrapit.o(.text+0x34eb): In function `yyparse':
>> : undefined reference to `WNewVDef'
>> wrapit.o(.text+0x35b4): In function `yyparse':
>> : undefined reference to `WNewVDef'
>> wrapit.o(.text+0x35f6): In function `yyparse':
>> : undefined reference to `WNewVDef'
>> wrapit.o(.text+0x36d9): In function `yyparse':
>> : undefined reference to `WNewArgVal'
>> wrapit.o(.text+0x372e): In function `yyparse':
>> : undefined reference to `WNewVDef'
>> wrapit.o(.text+0x37f5): In function `yyparse':
>> : undefined reference to `WNewVDef'
>> wrapit.o(.text+0x3862): In function `yyparse':
>> : undefined reference to `WNewVDef'
>> wrapit.o(.text+0x38f0): In function `yyparse':
>> : undefined reference to `WNewVDef'
>> wrapit.o(.text+0x3b7f): In function `yyparse':
>> : undefined reference to `current'
>> wrapit.o(.text+0x3da4): In function `yyparse':
>> : undefined reference to `current'
>> wrapit.o(.text+0x3ed6): In function `yyparse':
>> : undefined reference to `WNewAdditionalSrc'
>> wrapit.o(.text+0x3ef0): In function `yyparse':
>> : undefined reference to `WNewAdditionalSrc'
>> wrapit.o(.text+0x3f25): In function `yyparse':
>> : undefined reference to `current'
>> wrapit.o(.text+0x3f71): In function `yyparse':
>> : undefined reference to `NewParamLoc'
>> wrapit.o(.text+0x3fb9): In function `yyparse':
>> : undefined reference to `WNewVDef'
>> wrapit.o(.text+0x40b5): In function `yyparse':
>> : undefined reference to `DoTotal'
>> wrapit.o(.text+0x4178): In function `yyparse':
>> : undefined reference to `NewParamLoc'
>> wrapit.o(.text+0x418a): In function `yyparse':
>> : undefined reference to `DoDimsizes'
>> wrapit.o(.text+0x41ad): In function `yyparse':
>> : undefined reference to `current'
>> wrapit.o(.text+0x42a6): In function `yyparse':
>> : undefined reference to `NewParamLoc'
>> wrapit.o(.text+0x42b8): In function `yyparse':
>> : undefined reference to `DoTotal'
>> wrapit.o(.text+0x432a): In function `yyparse':
>> : undefined reference to `current'
>> wrapit.o(.text+0x437e): In function `yyparse':
>> : undefined reference to `NewParamLoc'
>> wrapit.o(.text+0x4390): In function `yyparse':
>> : undefined reference to `DoDimsizes'
>> wrapit.o(.text+0x4418): In function `yyparse':
>> : undefined reference to `current'
>> wrapit.o(.text+0x446c): In function `yyparse':
>> : undefined reference to `NewParamLoc'
>> wrapit.o(.text+0x447f): In function `yyparse':
>> : undefined reference to `DoDimsizes'
>> wrapit.o(.text+0x44eb): In function `yyparse':
>> : undefined reference to `current'
>> wrapit.o(.text+0x45e5): In function `yyparse':
>> : undefined reference to `DoTotal'
>> wrapit.o(.text+0x4626): In function `yyparse':
>> : undefined reference to `DoDimsizes'
>> wrapit.o(.text+0x466f): In function `yyparse':
>> : undefined reference to `DoDimsizes'
>> wrapit.o(.text+0x46e9): In function `yyparse':
>> : undefined reference to `DoTotal'
>> wrapit.o(.text+0x472a): In function `yyparse':
>> : undefined reference to `DoDimsizes'
>> wrapit.o(.text+0x4773): In function `yyparse':
>> : undefined reference to `DoDimsizes'
>> wrapit.o(.text+0x4824): In function `yyparse':
>> : undefined reference to `DoTotal'
>> wrapit.o(.text+0x4865): In function `yyparse':
>> : undefined reference to `DoDimsizes'
>> wrapit.o(.text+0x48ae): In function `yyparse':
>> : undefined reference to `DoDimsizes'
>> wrapit.o(.text+0x4ad7): In function `yyparse':
>> : undefined reference to `current'
>> wrapit.o(.text+0x4ba1): In function `yyparse':
>> : undefined reference to `current'
>> wrapit.o(.text+0x4dc2): In function `yyparse':
>> : undefined reference to `current'
>> collect2: ld returned 1 exit status
>> make: *** [wrapit77] Error 1
>> _______________________________________________
>> ncl-install mailing list
>> ncl-install at ucar.edu
>> http://mailman.ucar.edu/mailman/listinfo/ncl-install
> _______________________________________________
> ncl-install mailing list
> ncl-install at ucar.edu
> http://mailman.ucar.edu/mailman/listinfo/ncl-install
More information about the ncl-install
mailing list