You get a vector of 39 coefficients for each short frame of the signal; not for the entire signal. A speech signal contains segments of voice and silence, and of course when voice is present, there are different phonemes spoken in sequence - so the signal is not stationary and the MFCCs will fluctuate. Extracting the coefficients on a single frame spanning the entire signal would blur all this.
You might also be tempted to compute the average of the MFCC vectors. There are indeed a handful of applications in which this might work (for example categorizing sounds, or very coarse music genre classification), but I don't advise you to do this for speaker verification.
In speaker verification or recognition applications, you perform the classification or model scoring for each frame. For example, let us say you have trained a GMM for a speaker, and then are given another signal and want to know if this was spoken by the same person. Extracting the MFCC on the signal will give you a sequence of 100 MFCC vectors. You score each vector with the GMM and make a yes/no decision for each vector. Finally, you use voting to aggregate the decisions over the 100 frames. Or alternatively, you average the GMM scores for the 100 frames and use the result to make the yes/no classification.
When people report that they have used 39 coefficients, they mean "per frame".