title: Python multiprocessing throws error with argparse and pyinstaller
body: <p>In my project, I'm using argprse to pass arguments and somewhere in script I'm using multiprocessing to do rest of the calculations. Script is working fine if I call it from command prompt 
  for ex. </p>
  
  <p>"<code>python complete_script.py --arg1=xy --arg2=yz</code>" .</p>
  
  <p>But after converting it to exe using Pyinstaller using command "pyinstaller --onefile complete_script.py" it throws </p>
  
  <p>error</p>
  
  <blockquote>
    <p>" error: unrecognized arguments: --multiprocessing-fork 1448"</p>
  </blockquote>
  
  <p>Any suggestions how could I make this work. Or any other alternative. My goal is to create an exe application which I can call in other system where Python is not installed. </p>
  
  <p>Here are the details of my workstation:</p>
  
  <pre><code>Platform: Windows 10
  Python : 2.7.13 &lt;installed using Anaconda&gt;
  multiprocessing : 0.70a1
  argparse:   1.1
  </code></pre>
  
  <hr>
  
  <p>Copied from comment:</p>
  
  <pre><code>def main():
       main_parser = argparse.ArgumentParser()
       &lt; added up arguments here&gt;
      all_inputs = main_parser.parse_args()
      wrap_function(all_inputs)
  
  
  def wrap_function(all_inputs):
      &lt;Some calculation here &gt;
     distribute_function(&lt;input array for multiprocessing&gt;)
  
  def distribute_function(&lt;input array&gt;):
      pool = Pool(process = cpu_count)
      jobs = [pool.apply_async(target_functions, args = (i,) for i in input_array)]
      pool.close()
  </code></pre>