一、情况说明
或者使用别人的环境跑代码的时候,亦或者自己使用MulticoreTSNE库,该库安装比较麻烦,即使安装成功也会在运行当中出现很多问题,比如:
Cannot find/open tsne_multicore shared library、或者fp\install-record.txt' --single-version-externally-managed --compile --install-headers 'D:\Anaconda3\envs\MCgan\Include\MulticoreTSNE' Check the logs for full command output.
等。所以这里记录了本人解决该问题的方法:
二、解决办法
1.方法一:
直接使用pip工具:
pip install MulticoreTSNE
如果出现:
ERROR: Could not build wheels for MulticoreTSNE, which is required to install pyproject.toml-based projects
那么查看是否安装了cmake,如果没有则先安装该库,推荐安装cmake==3.18.4
pip install cmake==3.18.4
安装成功之后在使用
pip install
还是出现:ERROR: Could not build wheels for MulticoreTSNE, which is required to install pyproject.toml-based projects
那么这个方法宣告失败!
2.方法二:
去pypi官网:网址
搜索 MulticoreTSNE
下载解压:
将该文件放入难度虚拟环境当中,这个时候发现没有报错了。就看看呢个否正常运行
运行之后如果出现:Cannot find/open tsne_multicore shared library。那么该方法宣告失败!。
3.方法三:
去源代码克隆:GitHub - DmitryUlyanov/Multicore-TSNE: Parallel t-SNE implementation with Python and Torch wrappers.
git clone https://github.com/DmitryUlyanov/Multicore-TSNE.git
找到该文件下的setup.py
找到下边这一段,添加'-DCMAKE_GENERATOR_PLATFORM=x64',
if 0 != execute(['cmake',
'-DCMAKE_GENERATOR_PLATFORM=x64', <----- THIS
'-DCMAKE_BUILD_TYPE={}'.format(build_type),
'-DCMAKE_VERBOSE_MAKEFILE={}'.format(int(self.verbose)),
定位到该目录下:
cd /Multicore-TSNE
安装:
pip install .
如果还出现报错的话,说明该方法宣告失败!
4.方法四
if 0 != execute(['cmake',
'-GMinGW Makefiles', <----------This
'-DCMAKE_BUILD_TYPE={}'.format(build_type),
'-DCMAKE_VERBOSE_MAKEFILE={}'.format(int(self.verbose)),
使用其他编译器这里使用 GMinGW编译,所以就要安装,参考:MinGW-64C/C++
然后再setup.py里面添加上面一行然后按方法三的步骤编译安装。最后:
三、提示:
千万别忽视版本的问题!!!
一定要看你参考的代码的环境的版本,尽量严格要求他的环境来不容易出错,即使方法都对,最后也会因为版本的问题出现各种错误,比如我想安装的这个包最好使用python3.6及以下的版本。