MSVCMRTD.lib(mstartup.obj) : error LNK2022: metadata operation failed : tagTEXTMETRICA

I am getting the following errors when converting our Managed C++ code from VS2003 to VS2005:

MSVCMRTD.lib(mstartup.obj) : error LNK2022
MSVCMRTD.lib(mehvecdtr.obj) : error LNK2022
MSVCMRTD.lib(managdeh.obj) : error LNK2022
MSVCMRTD.lib(msilexit.obj) : error LNK2022
MSVCMRTD.lib(puremsilcode.obj) : error LNK2022

I am using the same cl and link options for every file.  We have one common
make_com.mif that gets included by all other makefiles.  That way, there is
only one place to change the options.

Here is the command line for cl.exe (though I'm pretty sure that the real
problem is the linker):

cl -c -Fddebug\ -Fodebug\ -WX -Gd -Zp1 -nologo -vmg -Gs -D_WIN95 -DWIN32 -DWINVER=0x0400 -W3 -MDd  /clr:oldSyntax -wd 4562 -wd 4835 -wd 4996 -wd 4793 -DVS2005 -DFORWARD_DECLARE_FIX -DNO_PL -DNO_ITEM_HIER -DINCLUDE_XPERTS -DIN_XACTWRAP_DLL  -DDEBUG -Od -Zi  xwmain.cpp > xwmain.drr

And probably more importantly, here are the linker options:

link -debug -OPT:NOWIN98 /CLRIMAGETYPE:IJW /CLRTHREADATTRIBUTE:MTA -nologo /DLL -subsystem:windows,4.0 -OUT:\sda\Main\bin\debug\XWRAP70.DLL /MACHINE:IX86 /BASE:0x44000000 /INCREMENTAL:NO kernel32.lib advapi32.lib user32.lib gdi32.lib comdlg32.lib winspool.lib comctl32.lib ole32.lib uuid.lib vfw32.lib oledlg.lib winmm.lib oleaut32.lib mpr.lib version.lib \sda\Main\bin\debug\x_dll32.lib \sda\Main\bin\debug\implodei.lib debug\xactwrap.res /NOENTRY

Any ideas on what I may be doing wrong




Answer this question

MSVCMRTD.lib(mstartup.obj) : error LNK2022: metadata operation failed : tagTEXTMETRICA

  • plucky

    Is there error the same on all object files
    Could you please try removing /NOENTRY and rebuild

    Thanks,
    Nikola
    VC++

  • valimar

    Yes, no matter which of our managed c++ dll's I build, I get the same 5 error messages about tagMETRICA.

    I removed /NOENTRY (I didn't give an entry point though) and get exactly the same results...


  • JamesFM

    Ok, the problem was the packing, -zp1, with that removed, the DLL links just fine.


  • MSVCMRTD.lib(mstartup.obj) : error LNK2022: metadata operation failed : tagTEXTMETRICA