That was my first thought too but in that case there should be a different error message like this:
in reply to Re^4: add_chart_ext does not work when compressed
in thread add_chart_ext does not work when compressed
Couldn't open .\charts\run_chart.bin in add_chart_ext():
No such file or directory.
The particular error message that is being reported, "Chart type 'External' not supported in add_chart()" is generated when you try to add a chart type that doesn't exist via add_chart() (and not from add_chart_ext() as report by the OP):
However, there is an 'External' chart module (albeit invalid in this case) so if a program inadvertently tried to load it it would generate another different error message. As such I cannot see any way that particular error message can be generated.
my $chart = $workbook->add_chart( type => 'foo' );
Chart type 'Foo' not supported in add_chart()
Confused? I am and I wrote the module. Hopefully the stack trace will clear things up a bit.
Update: I was wrong about this. The External.pm module is loaded using the same factory method as the other Chart modules. I was clearly smoking a bit too much Java at the time I wrote it.