Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 692662 - =sci-libs/scikits_learn-0.19.1-r1 fails to build: Atlas (http://math-atlas.sourceforge.net/) libraries not found.
Summary: =sci-libs/scikits_learn-0.19.1-r1 fails to build: Atlas (http://math-atlas.so...
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: Normal normal (vote)
Assignee: Gentoo Science Related Packages
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2019-08-21 06:27 UTC by Neil
Modified: 2020-11-09 14:01 UTC (History)
1 user (show)

See Also:
Package list:
Runtime testing required: ---


Attachments
emerge --info (emerge.info,18.32 KB, application/x-info)
2019-08-21 06:27 UTC, Neil
Details
build.log (build.log,168.26 KB, text/x-log)
2019-08-21 06:28 UTC, Neil
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Neil 2019-08-21 06:27:41 UTC
Created attachment 587728 [details]
emerge --info

I've found this package fails to build....

x86_64-pc-linux-gnu-g++: sklearn/utils/src/MurmurHash3.cpp
x86_64-pc-linux-gnu-g++ -shared -Wl,-O1 -Wl,--as-needed -shared -march=skylake -O2 -pipe /var/tmp/portage/sci-libs/scikits_learn-0.19.0-r1/work/scikit-learn-0.19.0-python3_6/temp.linux-x86_64-3.6/sklearn/utils/murmurhash.o /var/tmp/portage/sci-libs/scikits_learn-0.19.0-r1/work/scikit-learn-0.19.0-python3_6/temp.linux-x86_64-3.6/sklearn/utils/src/MurmurHash3.o -L/usr/lib64 -L/var/tmp/portage/sci-libs/scikits_learn-0.19.0-r1/work/scikit-learn-0.19.0-python3_6/temp.linux-x86_64-3.6 -lpython3.6m -o /var/tmp/portage/sci-libs/scikits_learn-0.19.0-r1/work/scikit-learn-0.19.0-python3_6/lib/sklearn/utils/murmurhash.cpython-36m-x86_64-linux-gnu.so
x86_64-pc-linux-gnu-gcc -shared -Wl,-O1 -Wl,--as-needed -shared -march=skylake -O2 -pipe /var/tmp/portage/sci-libs/scikits_learn-0.19.0-r1/work/scikit-learn-0.19.0-python3_6/temp.linux-x86_64-3.6/sklearn/utils/_logistic_sigmoid.o -L/usr/lib64 -L/var/tmp/portage/sci-libs/scikits_learn-0.19.0-r1/work/scikit-learn-0.19.0-python3_6/temp.linux-x86_64-3.6 -lm -lpython3.6m -o /var/tmp/portage/sci-libs/scikits_learn-0.19.0-r1/work/scikit-learn-0.19.0-python3_6/lib/sklearn/utils/_logistic_sigmoid.cpython-36m-x86_64-linux-gnu.so
x86_64-pc-linux-gnu-gcc -shared -Wl,-O1 -Wl,--as-needed -shared -march=skylake -O2 -pipe /var/tmp/portage/sci-libs/scikits_learn-0.19.0-r1/work/scikit-learn-0.19.0-python3_6/temp.linux-x86_64-3.6/sklearn/utils/graph_shortest_path.o -L/usr/lib64 -L/var/tmp/portage/sci-libs/scikits_learn-0.19.0-r1/work/scikit-learn-0.19.0-python3_6/temp.linux-x86_64-3.6 -lpython3.6m -o /var/tmp/portage/sci-libs/scikits_learn-0.19.0-r1/work/scikit-learn-0.19.0-python3_6/lib/sklearn/utils/graph_shortest_path.cpython-36m-x86_64-linux-gnu.so
x86_64-pc-linux-gnu-gcc -shared -Wl,-O1 -Wl,--as-needed -shared -march=skylake -O2 -pipe /var/tmp/portage/sci-libs/scikits_learn-0.19.0-r1/work/scikit-learn-0.19.0-python3_6/temp.linux-x86_64-3.6/sklearn/utils/seq_dataset.o -L/usr/lib64 -L/var/tmp/portage/sci-libs/scikits_learn-0.19.0-r1/work/scikit-learn-0.19.0-python3_6/temp.linux-x86_64-3.6 -lpython3.6m -o /var/tmp/portage/sci-libs/scikits_learn-0.19.0-r1/work/scikit-learn-0.19.0-python3_6/lib/sklearn/utils/seq_dataset.cpython-36m-x86_64-linux-gnu.so
x86_64-pc-linux-gnu-gcc -shared -Wl,-O1 -Wl,--as-needed -shared -march=skylake -O2 -pipe /var/tmp/portage/sci-libs/scikits_learn-0.19.0-r1/work/scikit-learn-0.19.0-python3_6/temp.linux-x86_64-3.6/sklearn/utils/_random.o -L/usr/lib64 -L/var/tmp/portage/sci-libs/scikits_learn-0.19.0-r1/work/scikit-learn-0.19.0-python3_6/temp.linux-x86_64-3.6 -lm -lpython3.6m -o /var/tmp/portage/sci-libs/scikits_learn-0.19.0-r1/work/scikit-learn-0.19.0-python3_6/lib/sklearn/utils/_random.cpython-36m-x86_64-linux-gnu.so
x86_64-pc-linux-gnu-g++ -shared -Wl,-O1 -Wl,--as-needed -shared -march=skylake -O2 -pipe /var/tmp/portage/sci-libs/scikits_learn-0.19.0-r1/work/scikit-learn-0.19.0-python3_6/temp.linux-x86_64-3.6/sklearn/utils/fast_dict.o -L/usr/lib64 -L/var/tmp/portage/sci-libs/scikits_learn-0.19.0-r1/work/scikit-learn-0.19.0-python3_6/temp.linux-x86_64-3.6 -lm -lpython3.6m -o /var/tmp/portage/sci-libs/scikits_learn-0.19.0-r1/work/scikit-learn-0.19.0-python3_6/lib/sklearn/utils/fast_dict.cpython-36m-x86_64-linux-gnu.so
x86_64-pc-linux-gnu-gcc -shared -Wl,-O1 -Wl,--as-needed -shared -march=skylake -O2 -pipe /var/tmp/portage/sci-libs/scikits_learn-0.19.0-r1/work/scikit-learn-0.19.0-python3_6/temp.linux-x86_64-3.6/sklearn/utils/sparsefuncs_fast.o -L/usr/lib64 -L/var/tmp/portage/sci-libs/scikits_learn-0.19.0-r1/work/scikit-learn-0.19.0-python3_6/temp.linux-x86_64-3.6 -lm -lpython3.6m -o /var/tmp/portage/sci-libs/scikits_learn-0.19.0-r1/work/scikit-learn-0.19.0-python3_6/lib/sklearn/utils/sparsefuncs_fast.cpython-36m-x86_64-linux-gnu.so
Partial import of sklearn during the build process.
/usr/lib64/python3.6/site-packages/numpy/distutils/system_info.py:614: UserWarning: 
    Atlas (http://math-atlas.sourceforge.net/) libraries not found.
    Directories to search for the libraries can be specified in the
    numpy/distutils/site.cfg file (section [atlas]) or by setting
    the ATLAS environment variable.
  self.calc_info()
error: Command "x86_64-pc-linux-gnu-gcc -march=skylake -O2 -pipe -fPIC -DNO_ATLAS_INFO=1 -DHAVE_CBLAS -I../src/cblas -I/usr/lib64/python3.6/site-packages/numpy/core/include -Isklearn/linear_model/ -I/usr/include -I/usr/lib64/python3.6/site-packages/numpy/core/include -I/usr/include/python3.6m -c sklearn/linear_model/cd_fast.c -o /var/tmp/portage/sci-libs/scikits_learn-0.19.0-r1/work/scikit-learn-0.19.0-python3_6/temp.linux-x86_64-3.6/sklearn/linear_model/cd_fast.o -MMD -MF /var/tmp/portage/sci-libs/scikits_learn-0.19.0-r1/work/scikit-learn-0.19.0-python3_6/temp.linux-x86_64-3.6/sklearn/linear_model/cd_fast.o.d" failed with exit status 1
 * ERROR: sci-libs/scikits_learn-0.19.0-r1::gentoo failed (compile phase):
 *   (no error message)
 * 
 * Call stack:
 *     ebuild.sh, line  125:  Called src_compile
 *   environment, line 3192:  Called distutils-r1_src_compile
 *   environment, line 1068:  Called _distutils-r1_run_foreach_impl 'python_compile'
 *   environment, line  433:  Called python_foreach_impl 'distutils-r1_run_phase' 'python_compile'
 *   environment, line 2635:  Called multibuild_foreach_variant '_python_multibuild_wrapper' 'distutils-r1_run_phase' 'python_compile'
 *   environment, line 1941:  Called _multibuild_run '_python_multibuild_wrapper' 'distutils-r1_run_phase' 'python_compile'
 *   environment, line 1939:  Called _python_multibuild_wrapper 'distutils-r1_run_phase' 'python_compile'
 *   environment, line  702:  Called distutils-r1_run_phase 'python_compile'
 *   environment, line 1061:  Called python_compile
 *   environment, line 2221:  Called distutils-r1_python_compile 'config_fc' '--noopt' '--noarch'
 *   environment, line  931:  Called esetup.py 'build' '-j' '8' 'config_fc' '--noopt' '--noarch'
 *   environment, line 1365:  Called die
 * The specific snippet of code:
 *       "${@}" || die "${die_args[@]}";
 * 
 * If you need support, post the output of `emerge --info '=sci-libs/scikits_learn-0.19.0-r1::gentoo'`,
 * the complete build log and the output of `emerge -pqv '=sci-libs/scikits_learn-0.19.0-r1::gentoo'`.
 * The complete build log is located at '/var/tmp/portage/sci-libs/scikits_learn-0.19.0-r1/temp/build.log'.
 * The ebuild environment file is located at '/var/tmp/portage/sci-libs/scikits_learn-0.19.0-r1/temp/environment'.
 * Working directory: '/var/tmp/portage/sci-libs/scikits_learn-0.19.0-r1/work/scikit-learn-0.19.0'
 * S: '/var/tmp/portage/sci-libs/scikits_learn-0.19.0-r1/work/scikit-learn-0.19.0'


However, the package is somewhat dated as 0.19.1 is from 2017, current version is 0.21.3.  A request for updating exists in #675212.

Further the package is slightly incorrectly named since its scikit-learn (not scikits) as detailed in #665482


There is a related old and ongoing bug for 0.19.0 at #630294 but that doesn't seem to mention that the package is dated.
Comment 1 Neil 2019-08-21 06:28:19 UTC
Created attachment 587730 [details]
build.log
Comment 2 Tomáš Mózes 2019-08-21 12:24:20 UTC
Do you have the Atlas libs installed? Can you please try rebuilding it and then sci-libs/scikits_learn too?
Comment 3 Neil 2019-08-21 13:28:09 UTC
Ah, I see that message above the error line now.

I don't have Atlas libs currently installed, and having just tried to emerge them it refuses to compile as it detects I've "CPU throttling" enabled (unsure if this is the CPU frequency scaling in kernel options perhaps?).  I'll have to give that a whirl later.

It however suggests that Atlas should be a dependency of the ebuild too and perhaps adds further impetus to update ebuilds to more recent versions of scikit-learn at the same time maybe.
Comment 4 Thomas Kemmer 2020-01-06 10:39:35 UTC
I had the same error recently and it seems that the Atlas-related user warning is indeed just a warning and not causing the build failure. Your build log shows the real culprit as

sklearn/linear_model/cd_fast.c:17022:27: error: type of formal parameter 1 is incomplete
17022 |               __pyx_v_ger(CblasRowMajor, __pyx_v_n_samples, __pyx_v_n_tasks, 1.0, (__pyx_v_X_ptr + (__pyx_v_ii * __pyx_v_n_samples)), 1, __pyx_v_wii_ptr, 1, (&(*((float *) ( /* dim=1 */ ((char *) (((float *) ( /* dim=0 */ (__pyx_v_R.data + __pyx_t_31 * __pyx_v_R.strides[0]) )) + __pyx_t_32)) )))), __pyx_v_n_tasks);
      |                           ^~~~~~~~~~~~~
sklearn/linear_model/cd_fast.c:17059:26: error: type of formal parameter 1 is incomplete
17059 |             __pyx_v_gemv(CblasRowMajor, CblasTrans, __pyx_v_n_samples, __pyx_v_n_tasks, 1.0, (&(*((float *) ( /* dim=1 */ ((char *) (((float *) ( /* dim=0 */ (__pyx_v_R.data + __pyx_t_33 * __pyx_v_R.strides[0]) )) + __pyx_t_34)) )))), __pyx_v_n_tasks, (__pyx_v_X_ptr + (__pyx_v_ii * __pyx_v_n_samples)), 1, 0.0, (&(*((float *) ( /* dim=0 */ ((char *) (((float *) __pyx_v_tmp.data) + __pyx_t_35)) )))), 1);
      |                          ^~~~~~~~~~~~~
sklearn/linear_model/cd_fast.c:17059:41: error: type of formal parameter 2 is incomplete
17059 |             __pyx_v_gemv(CblasRowMajor, CblasTrans, __pyx_v_n_samples, __pyx_v_n_tasks, 1.0, (&(*((float *) ( /* dim=1 */ ((char *) (((float *) ( /* dim=0 */ (__pyx_v_R.data + __pyx_t_33 * __pyx_v_R.strides[0]) )) + __pyx_t_34)) )))), __pyx_v_n_tasks, (__pyx_v_X_ptr + (__pyx_v_ii * __pyx_v_n_samples)), 1, 0.0, (&(*((float *) ( /* dim=0 */ ((char *) (((float *) __pyx_v_tmp.data) + __pyx_t_35)) )))), 1);
      |                                         ^~~~~~~~~~
sklearn/linear_model/cd_fast.c:17126:27: error: type of formal parameter 1 is incomplete
17126 |               __pyx_v_ger(CblasRowMajor, __pyx_v_n_samples, __pyx_v_n_tasks, -1.0, (__pyx_v_X_ptr + (__pyx_v_ii * __pyx_v_n_samples)), 1, (__pyx_v_W_ptr + (__pyx_v_ii * __pyx_v_n_tasks)), 1, (&(*((float *) ( /* dim=1 */ ((char *) (((float *) ( /* dim=0 */ (__pyx_v_R.data + __pyx_t_39 * __pyx_v_R.strides[0]) )) + __pyx_t_40)) )))), __pyx_v_n_tasks);

which makes this bug a duplicate of bug 630294. This issue should be fixed in version 0.20. :)
Comment 5 Larry the Git Cow gentoo-dev 2020-11-09 14:01:57 UTC
The bug has been closed via the following commit(s):

https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=7599874114b03ecbc9592d9792e9379a3e8a760b

commit 7599874114b03ecbc9592d9792e9379a3e8a760b
Author:     Aisha Tammy <gentoo@aisha.cc>
AuthorDate: 2020-10-15 14:26:05 +0000
Commit:     Benda Xu <heroxbd@gentoo.org>
CommitDate: 2020-11-09 14:01:44 +0000

    sci-libs/scikits_learn: version bump to 0.23.2
    
    drop dependency on sci-libs/scikits
    drop old versions.
    
    Closes: https://bugs.gentoo.org/692662
    Closes: https://bugs.gentoo.org/626796
    Closes: https://bugs.gentoo.org/614558
    Closes: https://bugs.gentoo.org/469924
    
    Reported-by: Zoltan Puskas, Roman Yurchak, Крыськов Денис
    Reported-by: Roman Yurchak, Neil, Tomáš Mózes, Thomas Kemmer
    
    Package-Manager: Portage-3.0.8, Repoman-3.0.1
    Signed-off-by: Aisha Tammy <gentoo@aisha.cc>
    Signed-off-by: Benda Xu <heroxbd@gentoo.org>

 sci-libs/scikits_learn/Manifest                    |   4 +-
 .../files/scikits_learn-0.18.1-system-cblas.patch  |  32 ------
 .../files/scikits_learn-0.20.2-fix-cdfast.patch    |  42 --------
 .../scikits_learn/scikits_learn-0.19.0-r1.ebuild   | 107 --------------------
 sci-libs/scikits_learn/scikits_learn-0.20.2.ebuild | 109 ---------------------
 sci-libs/scikits_learn/scikits_learn-0.20.4.ebuild | 109 ---------------------
 ...p1.ebuild => scikits_learn-0.22.2_p1-r1.ebuild} |   8 +-
 sci-libs/scikits_learn/scikits_learn-0.23.2.ebuild |  70 +++++++++++++
 8 files changed, 72 insertions(+), 409 deletions(-)