lyst / lightfm

A Python implementation of LightFM, a hybrid recommendation algorithm.
Apache License 2.0
4.66k stars 679 forks source link

Failed to install to macOS Monterey (MacBook Pro 2019; Intel Core i5) #665

Open ivan-v-ivanov opened 1 year ago

ivan-v-ivanov commented 1 year ago

Have some problems with installation of lightfm. During the installation the error have appeared:

clang: error: the clang compiler does not support '-march=native'
error: command '/usr/bin/clang' failed with exit code 1

As I see, the problem is that c-compiler does not support native, and the other one should be used.

clang --print-supported-cpus

Apple clang version 14.0.0 (clang-1400.0.29.102)
Target: x86_64-apple-darwin21.6.0
Thread model: posix
InstalledDir: /Library/Developer/CommandLineTools/usr/bin
Available CPUs for this target:

    alderlake
    amdfam10
    athlon
    athlon-4
    athlon-fx
    athlon-mp
    athlon-tbird
    athlon-xp
    athlon64
    athlon64-sse3
    atom
    barcelona
    bdver1
    bdver2
    bdver3
    bdver4
    bonnell
    broadwell
    btver1
    btver2
    c3
    c3-2
    cannonlake
    cascadelake
    cooperlake
    core-avx-i
    core-avx2
    core2
    corei7
    corei7-avx
    generic
    geode
    goldmont
    goldmont-plus
    haswell
    i386
    i486
    i586
    i686
    icelake-client
    icelake-server
    ivybridge
    k6
    k6-2
    k6-3
    k8
    k8-sse3
    knl
    knm
    lakemont
    nehalem
    nocona
    opteron
    opteron-sse3
    penryn
    pentium
    pentium-m
    pentium-mmx
    pentium2
    pentium3
    pentium3m
    pentium4
    pentium4m
    pentiumpro
    prescott
    rocketlake
    sandybridge
    sapphirerapids
    silvermont
    skx
    skylake
    skylake-avx512
    slm
    tigerlake
    tremont
    westmere
    winchip-c6
    winchip2
    x86-64
    x86-64-v2
    x86-64-v3
    x86-64-v4
    yonah
    znver1
    znver2
    znver3

How this kind of problem can be solved?

shawnzhu commented 1 year ago

See #623 (merged but not released yet)

This installation method works for me:

LIGHTFM_NO_CFLAGS=1 python3 -m pip install "lightfm>=1.15,<2"