Comments (17)
Hello,
In cmd.exe I typed: C:\Users\Nicolas\Desktop\fastfm_test\fastFM>python setup.py install
And then I get the following:
running install
running bdist_egg
running egg_info
writing requirements to fastFM.egg-info\requires.txt
writing fastFM.egg-info\PKG-INFO
writing top-level names to fastFM.egg-info\top_level.txt
writing dependency_links to fastFM.egg-info\dependency_links.txt
reading manifest file 'fastFM.egg-info\SOURCES.txt'
reading manifest template 'MANIFEST.in'
writing manifest file 'fastFM.egg-info\SOURCES.txt'
installing library code to build\bdist.win-amd64\egg
running install_lib
running build_py
running build_ext
skipping 'fastFM\ffm.c' Cython extension (up-to-date)
building 'ffm' extension
C:\TDM-GCC-64\bin\gcc.exe -DMS_WIN64 -mdll -O -Wall -IfastFM/ -IfastFM-core/include/ -IfastFM-core/externals/CXSparse/Include/ -IC:\Users\Nicolas\Anaconda\lib\site-packages\numpy\core\include -IC:\Users\Nicolas\Anaconda\include -IC:\Users\Nicolas\Anaconda\PC -c fastFM\ffm.c -o build\temp.win-amd64-2.7\Release\fastfm\ffm.o
In file included from C:\Users\Nicolas\Anaconda\lib\site-packages\numpy\core\include/numpy/ndarraytypes.h:1777:0,
from C:\Users\Nicolas\Anaconda\lib\site-packages\numpy\core\include/numpy/ndarrayobject.h:18,
from C:\Users\Nicolas\Anaconda\lib\site-packages\numpy\core\include/numpy/arrayobject.h:4,
from fastFM\ffm.c:268:
writing build\temp.win-amd64-2.7\Release\fastfm\ffm.def
C:\TDM-GCC-64\bin\gcc.exe -DMS_WIN64 -shared -s build\temp.win-amd64-2.7\Release\fastfm\ffm.o build\temp.win-amd64-2.7\Release\fastfm\ffm.def -LfastFM/ -LfastFM-core/bin/ -LfastFM-core/externals/CXSparse/Lib/ -LC:\Users\Nicolas\Anaconda\libs -LC:\Users\Nicolas\Anaconda\PCbuild\amd64 -LC:\Users\Nicolas\Anaconda\PC\VS9.0\amd64 -lm -lfastfm -lcxsparse -lblas -lpython27 -lmsvcr90 -o build\lib.win-amd64-2.7\ffm.pyd
C:/TDM-GCC-64/bin/../lib/gcc/x86_64-w64-mingw32/5.1.0/../../../../x86_64-w64-mingw32/bin/ld.exe: cannot find -lblas
collect2.exe: error: ld returned 1 exit status
error: command 'C:\TDM-GCC-64\bin\gcc.exe' failed with exit status 1
It seems that the compiler cannot find the BLAS library on my system. Per the BLAS website (http://www.netlib.org/blas/), it seems that BLAS is available for Windows at http://icl.cs.utk.edu/lapack-for-windows/lapack/#build. Unfortunately, it looks like installing BLAS on Windows is possible but quite a process.
I'm curious to know if anyone was ever able to use fastFM on Windows.
from fastfm.
@nicolasfguillaume
Windows is not actively supported and I don't know if someone managed to compile fastFM on windows before.
I would try to compile with g++ first. Feel free to post you error messages here. I or someone else might be ableto help you to guess what goes wrong.
Just make sure that you start from scratch and post every command and output.
from fastfm.
I need it too :-(
Can the author please consider using wheels ?
from fastfm.
@hshteingart
Wheels are platform specific, we are providing them for OSX having them for windows would be great.
However, I'm not developing on windows and even the OSX was contributed. Let's hope someone with more windows experience helps us out.
from fastfm.
HI nicolasfguillaume , all,
I'm currently fighting with same problem on Windows 10 x64, same error,
did you find any solution finally?, Please any recommendation?
I'll try to deploy it on a Linux machine,
thanks anyway,
regards,
R.
D:\PROGRAM\SDKs\Anaconda3.220\Scripts\gcc.bat -mdll -O -Wall -IfastFM/ -IfastFM-core/include/ -IfastFM-core/externals/CXSparse/Include/ -Id:\program\sdks\anaconda3.220\lib\site-packages\numpy\core\include -Id:\program\sdks\anaconda3.220\include -Id:\program\sdks\anaconda3.220\include -c fastFM\ffm.c -o build\temp.win-amd64-3.4\Release\fastfm\ffm.o
fastFM\ffm.c:247:58: fatal error: ../fastFM-core/externals/CXSparse/Include/cs.h: No such file or directory
compilation terminated.
error: command 'D:\PROGRAM\SDKs\Anaconda3.220\Scripts\gcc.bat' failed with exit status 1
_----------------------------------------
Command "d:\program\sdks\anaconda3.220\python.exe -u -c "import setuptools, tokenize;file='C:\TEMP\rheras\pip-lcx3dkbl-build\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:\TEMP\rheras\pip-6h7fkq9x-record\install-record.txt --single-version-externally-managed --compile" failed with error code 1 in C:\TEMP\rheras\pip-lcx3dkbl-build_
from fastfm.
(WSL) Windows subsystem for Linux may be the solution if you have Windows 10.
from fastfm.
I was able to install it on WSL without problems and also to use jupyter notebook. I'm on Creators update.
from fastfm.
@EgZvor Thanks for the update, did you run the tests?
Can you share your step by step install instructions?
I would like to add this information to the README if it works for other people too.
from fastfm.
@ibayer Sure. On windows I downloaded the Creators upgrade from microsoft official site. While installing it looks like transition from Win7/8 to Win10 and there's 15gb of files left to be able to go back to previous update. I am not sure if it is critical to make this upgrade, I made it because I had the old build which hadn't allowed me to use .exe
files inside WSL.
After that I installed anaconda downloading also from official site linux version, using wget
. It is the latest release and has python 3.6 build in it. With Anaconda every dependency was pretty much installed. I also installed python-dev
through apt-get
just in case.
Then I just followed the instructions in README.
sudo apt-get install python-dev libopenblas-dev
is essential.
Also it won't hurt to sudo apt-get update | sudo apt-get upgrade
I did a binary installation, so I'm not sure how to run tests there's none in python package and if I download repository from git they don't seem to work, because there's just test_*.py files and I guess there should be one unifiying them.
from fastfm.
I checked the source code on that files and ran
$python test*
It didn't print anything so I guess every assert was successful
from fastfm.
I decided to make
fastFM to run c tests as well.
The strange problem I stumbled upon was I couldn't cd to /externals/OpenBLAS
I looked at Makefile and the first line was like this
( cd ../../externals/CXSparse ; $(MAKE) library )
Unlike the second line, so I prepended the same
( export USE_THREAD=0; cd ../../externals/OpenBLAS ; $(MAKE) libs)
And it worked.
I did make check
and all tests have been passed.
from fastfm.
I went back to do python tests and find out that in my case nosetests needed --exe
option to run tests. I got this warning
DeprecationWarning: This module was deprecated in version 0.18 in favor of the model_selection
module into which all the refactored classes and functions are moved. Also note that the interface of
the new CV iterators are different from that of this module. This module will be removed in 0.20.
"This module will be removed in 0.20.", DeprecationWarning)
But other than that all 29 tests have been passed.
from fastfm.
@EgZvor
Thanks for the details, the warning is nothing to be worried about (see #83). Can you give the the exact change you had to make to the Makefile?
from fastfm.
@ibayer
I changed
( export USE_THREAD=0; cd externals/OpenBLAS ; $(MAKE) libs)
to
( export USE_THREAD=0; cd ../../externals/OpenBLAS ; $(MAKE) libs)
from fastfm.
Here's the patch
Makefile.txt
from fastfm.
Thanks, fixed ibayer/fastFM-core#23 .
from fastfm.
Thanks guys for your comments and help,
fortunately I moved it to a Ubuntu environment and after some problems already fixed, it seems all is working OK, although now I have problems in order to build one of the matrix (compare) needed for using bpr.FMRecommender. Anyway maybe I'll open a new thread here.
Cheers.
from fastfm.
Related Issues (20)
- pip install . is not working on Winodws HOT 1
- Illegal instruction (core dumped) in ALS HOT 5
- Can fastfm use mini batch? HOT 1
- Check pairs range failed when fitting BPR
- OverflowError: n_iter too high in bpr.FMRecommender HOT 1
- Need partial_fit HOT 1
- Can fastfm use multicore to speed up training? HOT 1
- Fit complaining about both dense/sparse HOT 2
- Recompile for python 3.7 HOT 7
- Input of fit() and return value of predict_proba() method
- Failure to install on Python3.8 HOT 8
- Fix simple typo: reommend -> recommend
- Import Error
- Compiling using OpenBLAS from anaconda
- Source file type in PyPi
- No coordinate descent solver available HOT 1
- Compilation error on macOS 11.2 ARM HOT 3
- Any plan to support py3.7+? HOT 1
- will it work for third order categorical features interaction ?
- will it work on windows OS?
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from fastfm.