as per my understanding, external fragmentation occurs in a variable partitioned memory systems, and that too when the requested memory size is there in the memory but not contiguous. had it be continuous, it would have been allocated to the process.
here as we're having the enough size of memory available, we can two blocks to the processes if the requested size is greater than the available size of blocks, to the processes. if we're not allowed to do the compaction, then what is the point of asking external fragmentation in the fixed partition scheme.
the point is i myself don't know the right answer. it's just what i've searched and didn't get any satisfiable answer, so i just made it up from my understanding. please let me know if you get answer from reliable source.