Accede Posted April 18, 2010 Posted April 18, 2010 Hi can some one make theMagicV2mEngine.lib how dont need LIBC.lib,i can not found the LIBC.lib.I thing this dll is needed for make the lib file.her is the downloadlink for the dll.dll
Ufo-Pu55y Posted April 18, 2010 Posted April 18, 2010 ;if you get this error after compile :;; LINK : fatal error LNK1104: cannot open file "LIBC.lib";;just try to use this linker command : /NODEFAULTLIB:libc.lib; or /NODEFAULTLIB:libcmt.lib; or /NODEFAULTLIB:oldnames.lib
Accede Posted April 19, 2010 Author Posted April 19, 2010 i us this it dont work for me it says the same "LIBC.lib" can not be found.what i make wrong.
Zool@nder Posted April 19, 2010 Posted April 19, 2010 (edited) what programming language are you using? Any way, you can take any library from your lib directory and rename it to libc.lib (I'm confused how this lib doesn't exist in your lib path ) of course you have to make sure that your source code doesn't need any function implemented there (like the strcat, strlen ...) Edited April 19, 2010 by Zool@nder
Accede Posted April 19, 2010 Author Posted April 19, 2010 I us asm(masm) as programming language.This lib have now on on his lib path this lib is from vc++ 2003 if you can tell me how i can download vc++ 2003 then i can us this lib.I found the error the link settings are not correct settet.And no you can not take any libery as LIBC.lib(is are static lib how needs MSVCRT2X.DLL) to work.I used radasm as ide i dont found the link settings for this ide.I make are make.bat now it works.
Zool@nder Posted April 19, 2010 Posted April 19, 2010 And no you can not take any libery as LIBC.lib(is are static lib how needs MSVCRT2X.DLL) to work.Yes you can, I've tested it before writing my answer.the VM2lib doesn't use the libc library, so it will work for you, just duplicate any lib and rename it to libc.lib
Killboy Posted April 19, 2010 Posted April 19, 2010 Out of interest, what makes a linker require a lib file without any actual dependence on it? Also, anyone ever tried compiling a library in VC++ with /Zl set and use it with a different compiler, say mingw? Does that actually work or does name mangling get in your way?
Accede Posted April 19, 2010 Author Posted April 19, 2010 If I understood you correctly Killboy.If you link your program from the command line without a compiler option that specifies a C run-time library, the linker will use LIBC.LIB.if the magicvm2engine.lib with / ml were linked it would give not the errors.And yes it dont work if you link some libs wight /Zl some libs need this /md to work.
Killboy Posted April 19, 2010 Posted April 19, 2010 magicvm2engine.lib WAS linked with /ml, that's why it needs libc.libif it was linked with /md it would require msvrt.lib insteadif it was linked with /Zl, it wouldn't require any specific lib, but complain about missing dependencieswas just guessing that /Zl would fix the problem, because it doesn't force a library, just the functions it needs -> no functions = no library = no errorthat's what I got out of MSDN anyway, might try if that actually works when I have some spare time.
Accede Posted April 19, 2010 Author Posted April 19, 2010 (edited) Ok it then needs msvrt.lib(masm standart lib) and /ZL dont work for masm linker and ml.exe(6.15).You need to make it wight /md or /ml.And new ml.exe from vc2010 this ml.exe need some dll´s.The /ZL is from the new linker version of vc++2010.I've even got solved. Edited April 19, 2010 by accede
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now