Hello, I installed pystan on Windows using Anaconda, i.e., pip install pystan.
The installation process finished successfully. But running the following code will generate the error message as follows
coin_code = """
data {
int<lower=0> n; // number of tosses
int<lower=0> y; // number of heads
}
transformed data {}
parameters {
real<lower=0, upper=1> p;
}
transformed parameters {}
model {
p ~ beta(2, 2);
y ~ binomial(n, p);
}
generated quantities {}
"""
coin_dat = {
'n': 100,
'y': 61,
}
fit = pystan.stan(model_code=coin_code, data=coin_dat, iter=1000, chains=1)
WARNING:pystan:DeprecationWarning: pystan.stan was deprecated in version 2.17 and will be removed in version 3.0. Compile and use a Stan program in separate steps.
INFO:pystan:COMPILING THE C++ CODE FOR MODEL anon_model_7f1947cd2d39ae427cd7b6bb6e6ffd77 NOW.
WARNING:pystan:MSVC compiler is not supported
---------------------------------------------------------------------------
DistutilsExecError Traceback (most recent call last)
~\Anaconda3\envs\tensorflow\lib\distutils\_msvccompiler.py in compile(self, sources, output_dir, macros, include_dirs, debug, extra_preargs, extra_postargs, depends)
395 try:
--> 396 self.spawn(args)
397 except DistutilsExecError as msg:
~\Anaconda3\envs\tensorflow\lib\distutils\_msvccompiler.py in spawn(self, cmd)
501 os.environ['path'] = self._paths
--> 502 return super().spawn(cmd)
503 finally:
~\Anaconda3\envs\tensorflow\lib\distutils\ccompiler.py in spawn(self, cmd)
909 def spawn(self, cmd):
--> 910 spawn(cmd, dry_run=self.dry_run)
911
~\Anaconda3\envs\tensorflow\lib\distutils\spawn.py in spawn(cmd, search_path, verbose, dry_run)
37 elif os.name == 'nt':
---> 38 _spawn_nt(cmd, search_path, dry_run=dry_run)
39 else:
~\Anaconda3\envs\tensorflow\lib\distutils\spawn.py in _spawn_nt(cmd, search_path, verbose, dry_run)
80 raise DistutilsExecError(
---> 81 "command %r failed with exit status %d" % (cmd, rc))
82
DistutilsExecError: command 'C:\\Program Files (x86)\\Microsoft Visual Studio\\2017\\Community\\VC\\Tools\\MSVC\\14.10.25017\\bin\\HostX86\\x64\\cl.exe' failed with exit status 2
During handling of the above exception, another exception occurred:
CompileError Traceback (most recent call last)
<ipython-input-3-7570001413d3> in <module>
21 }
22
---> 23 fit = pystan.stan(model_code=coin_code, data=coin_dat, iter=1000, chains=1)
~\Anaconda3\envs\tensorflow\lib\site-packages\pystan\api.py in stan(file, model_name, model_code, fit, data, pars, chains, iter, warmup, thin, init, seed, algorithm, control, sample_file, diagnostic_file, verbose, boost_lib, eigen_lib, include_paths, n_jobs, allow_undefined, **kwargs)
433 include_paths=include_paths,
434 obfuscate_model_name=obfuscate_model_name, verbose=verbose,
--> 435 allow_undefined=allow_undefined)
436 # check that arguments in kwargs are valid
437 valid_args = {"chain_id", "init_r", "test_grad", "append_samples", "enable_random_init",
~\Anaconda3\envs\tensorflow\lib\site-packages\pystan\model.py in __init__(self, file, charset, model_name, model_code, stanc_ret, include_paths, boost_lib, eigen_lib, verbose, obfuscate_model_name, extra_compile_args, allow_undefined, include_dirs, includes)
376
377 try:
--> 378 build_extension.run()
379 finally:
380 if redirect_stderr:
~\Anaconda3\envs\tensorflow\lib\distutils\command\build_ext.py in run(self)
338
339 # Now actually compile and link everything.
--> 340 self.build_extensions()
341
342 def check_extensions_list(self, extensions):
~\Anaconda3\envs\tensorflow\lib\distutils\command\build_ext.py in build_extensions(self)
447 self._build_extensions_parallel()
448 else:
--> 449 self._build_extensions_serial()
450
451 def _build_extensions_parallel(self):
~\Anaconda3\envs\tensorflow\lib\distutils\command\build_ext.py in _build_extensions_serial(self)
472 for ext in self.extensions:
473 with self._filter_build_errors(ext):
--> 474 self.build_extension(ext)
475
476 @contextlib.contextmanager
~\Anaconda3\envs\tensorflow\lib\distutils\command\build_ext.py in build_extension(self, ext)
532 debug=self.debug,
533 extra_postargs=extra_args,
--> 534 depends=ext.depends)
535
536 # XXX outdated variable, kept here in case third-part code
~\Anaconda3\envs\tensorflow\lib\distutils\_msvccompiler.py in compile(self, sources, output_dir, macros, include_dirs, debug, extra_preargs, extra_postargs, depends)
396 self.spawn(args)
397 except DistutilsExecError as msg:
--> 398 raise CompileError(msg)
399
400 return objects
CompileError: command 'C:\\Program Files (x86)\\Microsoft Visual Studio\\2017\\Community\\VC\\Tools\\MSVC\\14.10.25017\\bin\\HostX86\\x64\\cl.exe' failed with exit status 2