I don't know of any software that will do it for you automatically, although there could certainly be something available that I don't know about. You can always get something to print at a specific size though.
Photos, in general, are not to any scale. They are just framed to fit the camera format. Additionally, there is frequently some perspective to deal with and possibly some distortion. I work with aerial photos so I have to deal with that a lot.
If you want to print something to a specific scale, in addition to the resolution of your printer, you have to know one of two things:
1) Exactly how big was the original
-- or --
2) Exactly how big should the scale print be
Assuming that you know how big the original is, divide that by the scale. For example, something that is 35' long in real life would be 1' long at 1/35 scale. A 6' long flag at 1/35 scale would be 6' / 35 = 0.171' or 0.171 * 12 = 2.057" long.
Multiply that value times your printer's resolution. If your printer has a resolution off 600 dpi (dpi is dots per inch) and your printed image needs to be 2.057" long then it will have to be 600 * 2.057 = 1234 pixels wide. Remember that this is the subject itself, not the entire photograph. You may have to use your graphic software to measure the width of the subject in the photo and then resize the image to the proper size.