There's a copy of printf in the C library supplied by Microchip. In fact you can look at the source code in the src directory in the mcc18 install.
It implements most of the standard printf features except floating point. And does support longs and some of the other data types.
Be sure that the abridged version of printf that was supplied in the past is not part of your project, otherwise the linker will give you that one instead of the Microchip version.
The documentation for printf is in section 4.7 of the MPLab C18 Libraries PDF document. Kevin Watson has been making that easily available to teams on
his web site that you can download.