Closed wenxuanliang closed 5 years ago
Hi, What's happening here is that it's failing to find your compiler (cl.exe). I think the instructions told you how to do that - can you confirm that you did it and that it seemed to go okay?
Sorry, what instructions? I have been following: http://flatironinstitute.github.io/CaImAn/Installation.html#installation-on-windows
In those instructions, you're instructed to install Microsoft Build Tools for Visual Studio 2017. How did that go?
I see. i actually installed the entire visual studio 2019 provided in that link...
If you launch a command prompt and type cl.exe
do you get a command not found, or instructions on how to use it?
(caiman) C:\Users\Phoenix>cl.exe 'cl.exe' is not recognized as an internal or external command, operable program or batch file.
That building tool step didn't show up here: https://github.com/flatironinstitute/CaImAn/blob/master/INSTALL-windows.md
I have install Visual Studio Build Tools 2019. Does that matter? Typing cl.exe gives error info as above
Somewhere in your start menu you should see an option to start a visual studio commandline prompt - look around for it, launch it, and then type cl.exe
C:\Program Files (x86)\Microsoft Visual Studio\2019\Community>cl.exe Microsoft (R) C/C++ Optimizing Compiler Version 19.22.27905 for x86 Copyright (C) Microsoft Corporation. All rights reserved.
usage: cl [ option... ] filename... [ /link linkoption... ]
Awesome! Activate your caiman environment and try the pip install from there.
Still failure. Same "error: command 'cl.exe' failed: No such file or directory". Is that because I installed VS 2019, while the command is conda install -n caiman vs2017_win-64? Somehow they don't link each other?
The Visual studio commanline prompt can find cl.exe, but somehow conda cannot find it?
Never mind. I will re-do the 2017 version then. Will keep you posted
One more thing - if you don't think you'll need to change the Caiman source code, you can bypass all of this (and won't need a compiler at all) by installing the conda-forge package instead.
After install the correct building tools, i.e. the 2017 version (which is hidden in the bottom of the Microsoft webpage linked through the installation guidance), everything works out. The installation can now correctly locate the building tool, and shows the following message:
C:\Program Files (x86)\Microsoft Visual Studio\2017\BuildTools>CALL "VC\Auxiliary\Build\vcvars64.bat"
Visual Studio 2017 Developer Command Prompt v15.0 Copyright (c) 2017 Microsoft Corporation
[vcvarsall.bat] Environment initialized for: 'x64'
(caiman) C:\Users\Phoenix\CaImAn>pip install -e . Obtaining file:///C:/Users/Phoenix/CaImAn Installing collected packages: caiman Running setup.py develop for caiman Successfully installed caiman
Didn't know why I was expecting the installer would automatically figure out how to bridge with the 2019 version building tool... Sorry for the trouble, and thank you a lot for the patient guidance!
Happy to help - it is a bit more of an adventure for people to build on windows.
Sorry, but the next step, caimanmanager.py install, it gives the following error:
FileNotFoundError: [WinError 3] The system cannot find the path specified: 'demos'
And there is no caiman_data directory generated under my home directory, it seems...
Actually, the instruction says: Now that you have stepped out of the caiman source directory, you are ready to make a data directory with code samples and datasets. You will not use the source tree directory any more.
But the caimanmanager.py install --inplace works if I stay int he source directory
(caiman) C:\Users\Phoenix\CaImAn>caimanmanager.py install --inplace C:\Users\Phoenix\Anaconda3\envs\caiman\lib\site-packages\tensorflow\python\framework\dtypes.py:526: FutureWarning: Passing (type, 1) or '1type' as a synonym of type is deprecated; in a future version of numpy, it will be understood as (type, (1,)) / '(1,)type'. _np_qint8 = np.dtype([("qint8", np.int8, 1)]) C:\Users\Phoenix\Anaconda3\envs\caiman\lib\site-packages\tensorflow\python\framework\dtypes.py:527: FutureWarning: Passing (type, 1) or '1type' as a synonym of type is deprecated; in a future version of numpy, it will be understood as (type, (1,)) / '(1,)type'. _np_quint8 = np.dtype([("quint8", np.uint8, 1)]) C:\Users\Phoenix\Anaconda3\envs\caiman\lib\site-packages\tensorflow\python\framework\dtypes.py:528: FutureWarning: Passing (type, 1) or '1type' as a synonym of type is deprecated; in a future version of numpy, it will be understood as (type, (1,)) / '(1,)type'. _np_qint16 = np.dtype([("qint16", np.int16, 1)]) C:\Users\Phoenix\Anaconda3\envs\caiman\lib\site-packages\tensorflow\python\framework\dtypes.py:529: FutureWarning: Passing (type, 1) or '1type' as a synonym of type is deprecated; in a future version of numpy, it will be understood as (type, (1,)) / '(1,)type'. _np_quint16 = np.dtype([("quint16", np.uint16, 1)]) C:\Users\Phoenix\Anaconda3\envs\caiman\lib\site-packages\tensorflow\python\framework\dtypes.py:530: FutureWarning: Passing (type, 1) or '1type' as a synonym of type is deprecated; in a future version of numpy, it will be understood as (type, (1,)) / '(1,)type'. _np_qint32 = np.dtype([("qint32", np.int32, 1)]) C:\Users\Phoenix\Anaconda3\envs\caiman\lib\site-packages\tensorflow\python\framework\dtypes.py:535: FutureWarning: Passing (type, 1) or '1type' as a synonym of type is deprecated; in a future version of numpy, it will be understood as (type, (1,)) / '(1,)type'. np_resource = np.dtype([("resource", np.ubyte, 1)]) Installed C:\Users\Phoenix\caiman_data
Is everything looking OK? Or shall we update the Windows installation instructions? Confused more and more
This looks good. There is a new release coming up soon with updated instructions.
For better support, please use the template below to submit your issue. When your issue gets resolved please remember to close it.
Sometimes errors while running CNMF occur during parallel processing which prevents the log to provide a meaningful error message. Please reproduce your error with setting
dview=None
.If you need to upgrade CaImAn follow the instructions given in the wiki.
Windos 10, Anaconda
Building wheel for caiman (setup.py) ... error
(caiman) C:\Users\Phoenix\CaImAn>pip install . Processing c:\users\phoenix\caiman Building wheels for collected packages: caiman Building wheel for caiman (setup.py) ... error ERROR: Command errored out with exit status 1: command: 'C:\Users\Phoenix\Anaconda3\envs\caiman\python.exe' -u -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'C:\Users\Phoenix\AppData\Local\Temp\pip-req-build-bnz20ubk\setup.py'"'"'; file='"'"'C:\Users\Phoenix\AppData\Local\Temp\pip-req-build-bnz20ubk\setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(file);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, file, '"'"'exec'"'"'))' bdist_wheel -d 'C:\Users\Phoenix\AppData\Local\Temp\pip-wheel-qwq9lzsw' --python-tag cp36 cwd: C:\Users\Phoenix\AppData\Local\Temp\pip-req-build-bnz20ubk\ Complete output (91 lines): running bdist_wheel running build running build_py creating build creating build\lib.win-amd64-3.6 creating build\lib.win-amd64-3.6\caiman copying caiman\cluster.py -> build\lib.win-amd64-3.6\caiman copying caiman\components_evaluation.py -> build\lib.win-amd64-3.6\caiman copying caiman\mmapping.py -> build\lib.win-amd64-3.6\caiman copying caiman\motion_correction.py -> build\lib.win-amd64-3.6\caiman copying caiman\paths.py -> build\lib.win-amd64-3.6\caiman copying caiman\summary_images.py -> build\lib.win-amd64-3.6\caiman copying caiman__init.py -> build\lib.win-amd64-3.6\caiman creating build\lib.win-amd64-3.6\caiman\base copying caiman\base\movies.py -> build\lib.win-amd64-3.6\caiman\base copying caiman\base\rois.py -> build\lib.win-amd64-3.6\caiman\base copying caiman\base\timeseries.py -> build\lib.win-amd64-3.6\caiman\base copying caiman\base\traces.py -> build\lib.win-amd64-3.6\caiman\base copying caiman\base__init.py -> build\lib.win-amd64-3.6\caiman\base creating build\lib.win-amd64-3.6\caiman\behavior copying caiman\behavior\behavior.py -> build\lib.win-amd64-3.6\caiman\behavior copying caiman\behavior__init.py -> build\lib.win-amd64-3.6\caiman\behavior creating build\lib.win-amd64-3.6\caiman\external copying caiman\external\cell_magic_wand.py -> build\lib.win-amd64-3.6\caiman\external copying caiman\external__init__.py -> build\lib.win-amd64-3.6\caiman\external creating build\lib.win-amd64-3.6\caiman\gui copying caiman\gui\caiman_gui.py -> build\lib.win-amd64-3.6\caiman\gui copying caiman\gui\gui_pyqtgraph_layout.py -> build\lib.win-amd64-3.6\caiman\gui copying caiman\gui__init.py -> build\lib.win-amd64-3.6\caiman\gui creating build\lib.win-amd64-3.6\caiman\source_extraction copying caiman\source_extraction\init__.py -> build\lib.win-amd64-3.6\caiman\source_extraction creating build\lib.win-amd64-3.6\caiman\tests copying caiman\tests\comparison_general.py -> build\lib.win-amd64-3.6\caiman\tests copying caiman\tests\comparison_humans.py -> build\lib.win-amd64-3.6\caiman\tests copying caiman\tests\comparison_humans_online.py -> build\lib.win-amd64-3.6\caiman\tests copying caiman\tests\test_deconvolution.py -> build\lib.win-amd64-3.6\caiman\tests copying caiman\tests\test_demo.py -> build\lib.win-amd64-3.6\caiman\tests copying caiman\tests\test_import.py -> build\lib.win-amd64-3.6\caiman\tests copying caiman\tests\test_onacid.py -> build\lib.win-amd64-3.6\caiman\tests copying caiman\tests\test_pre_processing.py -> build\lib.win-amd64-3.6\caiman\tests copying caiman\tests\test_spatial.py -> build\lib.win-amd64-3.6\caiman\tests copying caiman\tests\test_temporal.py -> build\lib.win-amd64-3.6\caiman\tests copying caiman\tests\test_tensorflow.py -> build\lib.win-amd64-3.6\caiman\tests copying caiman\tests\test_toydata.py -> build\lib.win-amd64-3.6\caiman\tests copying caiman\tests\init.py -> build\lib.win-amd64-3.6\caiman\tests creating build\lib.win-amd64-3.6\caiman\utils copying caiman\utils\image_preprocessing_keras.py -> build\lib.win-amd64-3.6\caiman\utils copying caiman\utils\labelling.py -> build\lib.win-amd64-3.6\caiman\utils copying caiman\utils\stats.py -> build\lib.win-amd64-3.6\caiman\utils copying caiman\utils\unused.py -> build\lib.win-amd64-3.6\caiman\utils copying caiman\utils\utils.py -> build\lib.win-amd64-3.6\caiman\utils copying caiman\utils\visualization.py -> build\lib.win-amd64-3.6\caiman\utils copying caiman\utils\init__.py -> build\lib.win-amd64-3.6\caiman\utils creating build\lib.win-amd64-3.6\caiman\external\houghvst copying caiman\external\houghvst\demo_VST.py -> build\lib.win-amd64-3.6\caiman\external\houghvst copying caiman\external\houghvst\estimation.py -> build\lib.win-amd64-3.6\caiman\external\houghvst copying caiman\external\houghvst\gat.py -> build\lib.win-amd64-3.6\caiman\external\houghvst copying caiman\external\houghvst\measures.py -> build\lib.win-amd64-3.6\caiman\external\houghvst copying caiman\external\houghvst\plotting.py -> build\lib.win-amd64-3.6\caiman\external\houghvst copying caiman\external\houghvst\regions.py -> build\lib.win-amd64-3.6\caiman\external\houghvst copying caiman\external\houghvst\stats.py -> build\lib.win-amd64-3.6\caiman\external\houghvst copying caiman\external\houghvst\init__.py -> build\lib.win-amd64-3.6\caiman\external\houghvst creating build\lib.win-amd64-3.6\caiman\source_extraction\cnmf copying caiman\source_extraction\cnmf\cnmf.py -> build\lib.win-amd64-3.6\caiman\source_extraction\cnmf copying caiman\source_extraction\cnmf\cnmf_optional_outputs.py -> build\lib.win-amd64-3.6\caiman\source_extraction\cnmf copying caiman\source_extraction\cnmf\deconvolution.py -> build\lib.win-amd64-3.6\caiman\source_extraction\cnmf copying caiman\source_extraction\cnmf\estimates.py -> build\lib.win-amd64-3.6\caiman\source_extraction\cnmf copying caiman\source_extraction\cnmf\initialization.py -> build\lib.win-amd64-3.6\caiman\source_extraction\cnmf copying caiman\source_extraction\cnmf\map_reduce.py -> build\lib.win-amd64-3.6\caiman\source_extraction\cnmf copying caiman\source_extraction\cnmf\merging.py -> build\lib.win-amd64-3.6\caiman\source_extraction\cnmf copying caiman\source_extraction\cnmf\online_cnmf.py -> build\lib.win-amd64-3.6\caiman\source_extraction\cnmf copying caiman\source_extraction\cnmf\params.py -> build\lib.win-amd64-3.6\caiman\source_extraction\cnmf copying caiman\source_extraction\cnmf\pre_processing.py -> build\lib.win-amd64-3.6\caiman\source_extraction\cnmf copying caiman\source_extraction\cnmf\spatial.py -> build\lib.win-amd64-3.6\caiman\source_extraction\cnmf copying caiman\source_extraction\cnmf\temporal.py -> build\lib.win-amd64-3.6\caiman\source_extraction\cnmf copying caiman\source_extraction\cnmf\utilities.py -> build\lib.win-amd64-3.6\caiman\source_extraction\cnmf copying caiman\source_extraction\cnmf\init.py -> build\lib.win-amd64-3.6\caiman\source_extraction\cnmf creating build\lib.win-amd64-3.6\caiman\tests\comparison copying caiman\tests\comparison\comparison.py -> build\lib.win-amd64-3.6\caiman\tests\comparison copying caiman\tests\comparison\create_gt.py -> build\lib.win-amd64-3.6\caiman\tests\comparison copying caiman\tests\comparison\regen_main_gt.py -> build\lib.win-amd64-3.6\caiman\tests\comparison copying caiman\tests\comparison\init__.py -> build\lib.win-amd64-3.6\caiman\tests\comparison running build_ext building 'caiman.source_extraction.cnmf.oasis' extension creating build\temp.win-amd64-3.6 creating build\temp.win-amd64-3.6\Release creating build\temp.win-amd64-3.6\Release\caiman creating build\temp.win-amd64-3.6\Release\caiman\source_extraction creating build\temp.win-amd64-3.6\Release\caiman\source_extraction\cnmf cl.exe /c /nologo /Ox /W3 /GL /DNDEBUG /MD -IC:\Users\Phoenix\Anaconda3\envs\caiman\lib\site-packages\numpy\core\include -IC:\Users\Phoenix\Anaconda3\envs\caiman\include -IC:\Users\Phoenix\Anaconda3\envs\caiman\include /EHsc /Tpcaiman/source_extraction/cnmf/oasis.cpp /Fobuild\temp.win-amd64-3.6\Release\caiman/source_extraction/cnmf/oasis.obj error: command 'cl.exe' failed: No such file or directory
ERROR: Failed building wheel for caiman Running setup.py clean for caiman Failed to build caiman Installing collected packages: caiman Running setup.py install for caiman ... error ERROR: Command errored out with exit status 1: command: 'C:\Users\Phoenix\Anaconda3\envs\caiman\python.exe' -u -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'C:\Users\Phoenix\AppData\Local\Temp\pip-req-build-bnz20ubk\setup.py'"'"'; file='"'"'C:\Users\Phoenix\AppData\Local\Temp\pip-req-build-bnz20ubk\setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(file);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, file, '"'"'exec'"'"'))' install --record 'C:\Users\Phoenix\AppData\Local\Temp\pip-record-vg9hmcag\install-record.txt' --single-version-externally-managed --compile cwd: C:\Users\Phoenix\AppData\Local\Temp\pip-req-build-bnz20ubk\ Complete output (91 lines): running install running build running build_py creating build creating build\lib.win-amd64-3.6 creating build\lib.win-amd64-3.6\caiman copying caiman\cluster.py -> build\lib.win-amd64-3.6\caiman copying caiman\components_evaluation.py -> build\lib.win-amd64-3.6\caiman copying caiman\mmapping.py -> build\lib.win-amd64-3.6\caiman copying caiman\motion_correction.py -> build\lib.win-amd64-3.6\caiman copying caiman\paths.py -> build\lib.win-amd64-3.6\caiman copying caiman\summary_images.py -> build\lib.win-amd64-3.6\caiman copying caiman__init.py -> build\lib.win-amd64-3.6\caiman creating build\lib.win-amd64-3.6\caiman\base copying caiman\base\movies.py -> build\lib.win-amd64-3.6\caiman\base copying caiman\base\rois.py -> build\lib.win-amd64-3.6\caiman\base copying caiman\base\timeseries.py -> build\lib.win-amd64-3.6\caiman\base copying caiman\base\traces.py -> build\lib.win-amd64-3.6\caiman\base copying caiman\base__init.py -> build\lib.win-amd64-3.6\caiman\base creating build\lib.win-amd64-3.6\caiman\behavior copying caiman\behavior\behavior.py -> build\lib.win-amd64-3.6\caiman\behavior copying caiman\behavior__init.py -> build\lib.win-amd64-3.6\caiman\behavior creating build\lib.win-amd64-3.6\caiman\external copying caiman\external\cell_magic_wand.py -> build\lib.win-amd64-3.6\caiman\external copying caiman\external__init__.py -> build\lib.win-amd64-3.6\caiman\external creating build\lib.win-amd64-3.6\caiman\gui copying caiman\gui\caiman_gui.py -> build\lib.win-amd64-3.6\caiman\gui copying caiman\gui\gui_pyqtgraph_layout.py -> build\lib.win-amd64-3.6\caiman\gui copying caiman\gui__init.py -> build\lib.win-amd64-3.6\caiman\gui creating build\lib.win-amd64-3.6\caiman\source_extraction copying caiman\source_extraction\init__.py -> build\lib.win-amd64-3.6\caiman\source_extraction creating build\lib.win-amd64-3.6\caiman\tests copying caiman\tests\comparison_general.py -> build\lib.win-amd64-3.6\caiman\tests copying caiman\tests\comparison_humans.py -> build\lib.win-amd64-3.6\caiman\tests copying caiman\tests\comparison_humans_online.py -> build\lib.win-amd64-3.6\caiman\tests copying caiman\tests\test_deconvolution.py -> build\lib.win-amd64-3.6\caiman\tests copying caiman\tests\test_demo.py -> build\lib.win-amd64-3.6\caiman\tests copying caiman\tests\test_import.py -> build\lib.win-amd64-3.6\caiman\tests copying caiman\tests\test_onacid.py -> build\lib.win-amd64-3.6\caiman\tests copying caiman\tests\test_pre_processing.py -> build\lib.win-amd64-3.6\caiman\tests copying caiman\tests\test_spatial.py -> build\lib.win-amd64-3.6\caiman\tests copying caiman\tests\test_temporal.py -> build\lib.win-amd64-3.6\caiman\tests copying caiman\tests\test_tensorflow.py -> build\lib.win-amd64-3.6\caiman\tests copying caiman\tests\test_toydata.py -> build\lib.win-amd64-3.6\caiman\tests copying caiman\tests\init.py -> build\lib.win-amd64-3.6\caiman\tests creating build\lib.win-amd64-3.6\caiman\utils copying caiman\utils\image_preprocessing_keras.py -> build\lib.win-amd64-3.6\caiman\utils copying caiman\utils\labelling.py -> build\lib.win-amd64-3.6\caiman\utils copying caiman\utils\stats.py -> build\lib.win-amd64-3.6\caiman\utils copying caiman\utils\unused.py -> build\lib.win-amd64-3.6\caiman\utils copying caiman\utils\utils.py -> build\lib.win-amd64-3.6\caiman\utils copying caiman\utils\visualization.py -> build\lib.win-amd64-3.6\caiman\utils copying caiman\utils\init__.py -> build\lib.win-amd64-3.6\caiman\utils creating build\lib.win-amd64-3.6\caiman\external\houghvst copying caiman\external\houghvst\demo_VST.py -> build\lib.win-amd64-3.6\caiman\external\houghvst copying caiman\external\houghvst\estimation.py -> build\lib.win-amd64-3.6\caiman\external\houghvst copying caiman\external\houghvst\gat.py -> build\lib.win-amd64-3.6\caiman\external\houghvst copying caiman\external\houghvst\measures.py -> build\lib.win-amd64-3.6\caiman\external\houghvst copying caiman\external\houghvst\plotting.py -> build\lib.win-amd64-3.6\caiman\external\houghvst copying caiman\external\houghvst\regions.py -> build\lib.win-amd64-3.6\caiman\external\houghvst copying caiman\external\houghvst\stats.py -> build\lib.win-amd64-3.6\caiman\external\houghvst copying caiman\external\houghvst\init__.py -> build\lib.win-amd64-3.6\caiman\external\houghvst creating build\lib.win-amd64-3.6\caiman\source_extraction\cnmf copying caiman\source_extraction\cnmf\cnmf.py -> build\lib.win-amd64-3.6\caiman\source_extraction\cnmf copying caiman\source_extraction\cnmf\cnmf_optional_outputs.py -> build\lib.win-amd64-3.6\caiman\source_extraction\cnmf copying caiman\source_extraction\cnmf\deconvolution.py -> build\lib.win-amd64-3.6\caiman\source_extraction\cnmf copying caiman\source_extraction\cnmf\estimates.py -> build\lib.win-amd64-3.6\caiman\source_extraction\cnmf copying caiman\source_extraction\cnmf\initialization.py -> build\lib.win-amd64-3.6\caiman\source_extraction\cnmf copying caiman\source_extraction\cnmf\map_reduce.py -> build\lib.win-amd64-3.6\caiman\source_extraction\cnmf copying caiman\source_extraction\cnmf\merging.py -> build\lib.win-amd64-3.6\caiman\source_extraction\cnmf copying caiman\source_extraction\cnmf\online_cnmf.py -> build\lib.win-amd64-3.6\caiman\source_extraction\cnmf copying caiman\source_extraction\cnmf\params.py -> build\lib.win-amd64-3.6\caiman\source_extraction\cnmf copying caiman\source_extraction\cnmf\pre_processing.py -> build\lib.win-amd64-3.6\caiman\source_extraction\cnmf copying caiman\source_extraction\cnmf\spatial.py -> build\lib.win-amd64-3.6\caiman\source_extraction\cnmf copying caiman\source_extraction\cnmf\temporal.py -> build\lib.win-amd64-3.6\caiman\source_extraction\cnmf copying caiman\source_extraction\cnmf\utilities.py -> build\lib.win-amd64-3.6\caiman\source_extraction\cnmf copying caiman\source_extraction\cnmf\init.py -> build\lib.win-amd64-3.6\caiman\source_extraction\cnmf creating build\lib.win-amd64-3.6\caiman\tests\comparison copying caiman\tests\comparison\comparison.py -> build\lib.win-amd64-3.6\caiman\tests\comparison copying caiman\tests\comparison\create_gt.py -> build\lib.win-amd64-3.6\caiman\tests\comparison copying caiman\tests\comparison\regen_main_gt.py -> build\lib.win-amd64-3.6\caiman\tests\comparison copying caiman\tests\comparison\init__.py -> build\lib.win-amd64-3.6\caiman\tests\comparison running build_ext building 'caiman.source_extraction.cnmf.oasis' extension creating build\temp.win-amd64-3.6 creating build\temp.win-amd64-3.6\Release creating build\temp.win-amd64-3.6\Release\caiman creating build\temp.win-amd64-3.6\Release\caiman\source_extraction creating build\temp.win-amd64-3.6\Release\caiman\source_extraction\cnmf cl.exe /c /nologo /Ox /W3 /GL /DNDEBUG /MD -IC:\Users\Phoenix\Anaconda3\envs\caiman\lib\site-packages\numpy\core\include -IC:\Users\Phoenix\Anaconda3\envs\caiman\include -IC:\Users\Phoenix\Anaconda3\envs\caiman\include /EHsc /Tpcaiman/source_extraction/cnmf/oasis.cpp /Fobuild\temp.win-amd64-3.6\Release\caiman/source_extraction/cnmf/oasis.obj error: command 'cl.exe' failed: No such file or directory
ERROR: Command errored out with exit status 1: 'C:\Users\Phoenix\Anaconda3\envs\caiman\python.exe' -u -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'C:\Users\Phoenix\AppData\Local\Temp\pip-req-build-bnz20ubk\setup.py'"'"'; file='"'"'C:\Users\Phoenix\AppData\Local\Temp\pip-req-build-bnz20ubk\setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(file);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, file, '"'"'exec'"'"'))' install --record 'C:\Users\Phoenix\AppData\Local\Temp\pip-record-vg9hmcag\install-record.txt' --single-version-externally-managed --compile Check the logs for full command output.