SDK Question Missing file?

Try removing the other two ignored libraries, so that msvcirt.lib is the only ignored one.
 
That gets me the LIBC.lib error again, along with a pair of other errors, with no msvcirt.lib error.

With LIBC.lib ignored, I only get the msvcirt.lib error.
 
I do have it ignored, as evidenced by the following picture:



It doesn't seem to make a difference.

I also have it set to multithreaded mode (/MT).
-Verify that the "Configuration Type" is set to "Dynamic Library (.dll)" in Configuration Properties->General
-Verify that the "Runtime Library" is set to "Multi-threaded DLL (/MD) in C/C++->Code Generation
 
It is in Multithreaded DLL mode and is set to dynamic library (.dll).
 
It is in Multithreaded DLL mode and is set to dynamic library (.dll).
And with only msvcirt.lib ignored you are getting a LIBC.lib not found problem?

Verify in Linker->Input->Additional Dependencies that LIBC.lib is not listed in those values, nor in the "Inherited Values" fields
 
Where exactly is the Inherited Values field? Also, the only place LIBC.lib shows up is in the ignored libraries list.
 
Where exactly is the Inherited Values field? Also, the only place LIBC.lib shows up is in the ignored libraries list.
Click in the Additional Dependencies list, and a button "..." will show up. Click that button and the lower half of the dialog will be "Inherited Values"
 
Neither msvcirt.lib nor LIBC.lib are in there.
 
It is in Multithreaded DLL mode and is set to dynamic library (.dll).
I'm confused. The last build log you posted indicated you were in Multi-threaded (/MT) mode. You were also ignoring msvcrt.lib. If you are in Multi-threaded DLL (/MD) mode, you need to remove the msvcrt.lib ignore.
 
I changed it to go along with what Hielor was saying.

Not that it's appeared to have made any difference, though.

Nor has removing that ignore done anything useful either way.
 
Can you please add msvcprt.lib to the Additional Dependencies list, do a full rebuild (Build Menu|Rebuild Solution) so I get to see all the settings and post the Build Log (I can see you settings from the command lines generated). .
 
I finally got it to build. I added:

Code:
/nodefaultlib:"MSVCRT.LIB" /nodefaultlib:"MSVCIRT.LIB" /nodefaultlib:"LIBC.lib"
to Additional Optionsunder the Command Line section of the Linker.

Now, let's see how quickly it crashes Orbiter.

EDIT: Now, would you look at that? It didn't crash Orbiter. Yeah!

EDIT2: Of course, it's not working completely at the moment, but that's what debugging's for. At least I don't have to hunt through the code to figure out why it's crashing Orbiter. I just need to fix some things that aren't working.

Thanks for all of your help.

EDIT3: Turns out that the other problem was just a stupid mistake on my part. My MFD is set up (or will be) to take multiple modes and I forgot to initialize the mode. Doh!
 
Last edited:
I finally got it to build. I added:

Code:
/nodefaultlib:"MSVCRT.LIB" /nodefaultlib:"MSVCIRT.LIB" /nodefaultlib:"LIBC.lib"
to Additional Optionsunder the Command Line section of the Linker.
Those options were in the command line anyway, they are added by the Ignore Specific Libraries option (look at the build logs you posted earlier and you will see them there). I'm assuming you built as Multi-threaded (/MT), based on the above settings.

EDIT: Now, would you look at that? It didn't crash Orbiter. Yeah!
Well of course, you are starting with a good code base :P
 
I did manage to get it to crash later. Turns out that the sprintf_s function doesn't like stray percentage marks.

Indeed it has a good base. I followed your State Vector MFD closely in making mine. It has very good and straightforward code.

Thanks for all of your help in getting it to work.
 
Back
Top