View Issue Details

IDProjectCategoryView StatusLast Update
0004440Slicer4Core: Building (CMake, Superbuild)public2018-05-30 12:55
ReporterpieperAssigned Tojcfr 
PrioritynormalSeverityminorReproducibilityalways
Status resolvedResolutionunable to reproduce 
PlatformmacOSOS Version
Product Version 
Target VersionFixed in VersionSlicer 4.9.0 
Summary0004440: numpy build error with current Xcode on first build, then it works
Description

Fresh build of Slicer, first make gives numpy build error pasted below.

Running make a second time does not trigger the error.

Once the build completes, Slicer seems to run normally and numpy can be imported and used.

It's hard to tell from the message, but it appears that the traceback is just a warning diagnostic.

The key line seems to be this one, followed by the traceback that cmake interprets as a build failure but may actually only be a warning:

"/var/folders/md/_qs78z6s0rbfsth_95t95p800000gn/T/easy_install-Y7ercH/numpy-1.13.1/setup.py:367: UserWarning: Unrecognized setuptools command, proceeding with generating Cython sources and expanding templates"

Steps To Reproduce

Fresh build of Slicer from git f4e3d583609e625e385911e8d2ca99819bee74e8

with

$ xcodebuild -version
Xcode 9.0
Build version 9A235

and

$ cmake --version
cmake version 3.7.1

Additional Information

Processing numpy-1.13.1.zip
Writing /var/folders/md/_qs78z6s0rbfsth_95t95p800000gn/T/easy_install-Y7ercH/numpy-1.13.1/setup.cfg
Running numpy-1.13.1/setup.py -q bdist_egg --dist-dir /var/folders/md/_qs78z6s0rbfsth_95t95p800000gn/T/easy_install-Y7ercH/numpy-1.13.1/egg-dist-tmp-6qNkcK

Running from numpy source directory.
/Users/pieper/slicer4/latest/Slicer-superbuild/NUMPY/numpy/distutils/system_info.py:572: 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()
/Users/pieper/slicer4/latest/Slicer-superbuild/NUMPY/numpy/distutils/system_info.py:572: UserWarning:
Lapack (http://www.netlib.org/lapack/) libraries not found.
Directories to search for the libraries can be specified in the
numpy/distutils/site.cfg file (section [lapack]) or by setting
the LAPACK environment variable.
self.calc_info()
/Users/pieper/slicer4/latest/Slicer-superbuild/NUMPY/numpy/distutils/system_info.py:572: UserWarning:
Lapack (http://www.netlib.org/lapack/) sources not found.
Directories to search for the sources can be specified in the
numpy/distutils/site.cfg file (section [lapack_src]) or by setting
the LAPACK_SRC environment variable.
self.calc_info()
/Users/pieper/slicer4/latest/Slicer-superbuild/python-install/lib/python2.7/distutils/dist.py:267: UserWarning: Unknown distribution option: 'define_macros'
warnings.warn(msg)
/var/folders/md/_qs78z6s0rbfsth_95t95p800000gn/T/easy_install-Y7ercH/numpy-1.13.1/setup.py:367: UserWarning: Unrecognized setuptools command, proceeding with generating Cython sources and expanding templates
run_build = parse_setuppy_commands()
Traceback (most recent call last):
File "setup.py", line 392, in <module>
setup_package()
File "setup.py", line 384, in setup_package
setup(metadata)
File "/Users/pieper/slicer4/latest/Slicer-superbuild/NUMPY/numpy/distutils/core.py", line 169, in setup
return old_setup(
new_attr)
File "/Users/pieper/slicer4/latest/Slicer-superbuild/python-install/lib/python2.7/distutils/core.py", line 151, in setup
dist.run_commands()
File "/Users/pieper/slicer4/latest/Slicer-superbuild/python-install/lib/python2.7/distutils/dist.py", line 953, in run_commands
self.run_command(cmd)
File "/Users/pieper/slicer4/latest/Slicer-superbuild/python-install/lib/python2.7/distutils/dist.py", line 972, in run_command
cmd_obj.run()
File "/Users/pieper/slicer4/latest/Slicer-superbuild/NUMPY/numpy/distutils/command/install.py", line 62, in run
r = self.setuptools_run()
File "/Users/pieper/slicer4/latest/Slicer-superbuild/NUMPY/numpy/distutils/command/install.py", line 56, in setuptools_run
self.do_egg_install()
File "/Users/pieper/slicer4/latest/Slicer-superbuild/python-install/lib/python2.7/site-packages/setuptools-35.0.1.post20170921-py2.7.egg/setuptools/command/install.py", line 121, in do_egg_install
cmd.run()
File "/Users/pieper/slicer4/latest/Slicer-superbuild/python-install/lib/python2.7/site-packages/setuptools-35.0.1.post20170921-py2.7.egg/setuptools/command/easy_install.py", line 411, in run
self.easy_install(spec, not self.no_deps)
File "/Users/pieper/slicer4/latest/Slicer-superbuild/python-install/lib/python2.7/site-packages/setuptools-35.0.1.post20170921-py2.7.egg/setuptools/command/easy_install.py", line 654, in easy_install
return self.install_item(None, spec, tmpdir, deps, True)
File "/Users/pieper/slicer4/latest/Slicer-superbuild/python-install/lib/python2.7/site-packages/setuptools-35.0.1.post20170921-py2.7.egg/setuptools/command/easy_install.py", line 701, in install_item
self.process_distribution(spec, dist, deps)
File "/Users/pieper/slicer4/latest/Slicer-superbuild/python-install/lib/python2.7/site-packages/setuptools-35.0.1.post20170921-py2.7.egg/setuptools/command/easy_install.py", line 746, in process_distribution
[requirement], self.local_index, self.easy_install
File "/Users/pieper/slicer4/latest/Slicer-superbuild/python-install/lib/python2.7/site-packages/setuptools-35.0.1.post20170921-py2.7.egg/pkg_resources/init.py", line 851, in resolve
dist = best[req.key] = env.best_match(req, ws, installer)
File "/Users/pieper/slicer4/latest/Slicer-superbuild/python-install/lib/python2.7/site-packages/setuptools-35.0.1.post20170921-py2.7.egg/pkg_resources/init.py", line 1123, in best_match
return self.obtain(req, installer)
File "/Users/pieper/slicer4/latest/Slicer-superbuild/python-install/lib/python2.7/site-packages/setuptools-35.0.1.post20170921-py2.7.egg/pkg_resources/init.py", line 1135, in obtain
return installer(requirement)
File "/Users/pieper/slicer4/latest/Slicer-superbuild/python-install/lib/python2.7/site-packages/setuptools-35.0.1.post20170921-py2.7.egg/setuptools/command/easy_install.py", line 673, in easy_install
return self.install_item(spec, dist.location, tmpdir, deps)
File "/Users/pieper/slicer4/latest/Slicer-superbuild/python-install/lib/python2.7/site-packages/setuptools-35.0.1.post20170921-py2.7.egg/setuptools/command/easy_install.py", line 699, in install_item
dists = self.install_eggs(spec, download, tmpdir)
File "/Users/pieper/slicer4/latest/Slicer-superbuild/python-install/lib/python2.7/site-packages/setuptools-35.0.1.post20170921-py2.7.egg/setuptools/command/easy_install.py", line 880, in install_eggs
return self.build_and_install(setup_script, setup_base)
File "/Users/pieper/slicer4/latest/Slicer-superbuild/python-install/lib/python2.7/site-packages/setuptools-35.0.1.post20170921-py2.7.egg/setuptools/command/easy_install.py", line 1119, in build_and_install
self.run_setup(setup_script, setup_base, args)
File "/Users/pieper/slicer4/latest/Slicer-superbuild/python-install/lib/python2.7/site-packages/setuptools-35.0.1.post20170921-py2.7.egg/setuptools/command/easy_install.py", line 1105, in run_setup
run_setup(setup_script, args)
File "/Users/pieper/slicer4/latest/Slicer-superbuild/python-install/lib/python2.7/site-packages/setuptools-35.0.1.post20170921-py2.7.egg/setuptools/sandbox.py", line 258, in run_setup
raise
File "/Users/pieper/slicer4/latest/Slicer-superbuild/python-install/lib/python2.7/contextlib.py", line 35, in exit
self.gen.throw(type, value, traceback)
File "/Users/pieper/slicer4/latest/Slicer-superbuild/python-install/lib/python2.7/site-packages/setuptools-35.0.1.post20170921-py2.7.egg/setuptools/sandbox.py", line 198, in setup_context
yield
File "/Users/pieper/slicer4/latest/Slicer-superbuild/python-install/lib/python2.7/contextlib.py", line 35, in exit
self.gen.throw(type, value, traceback)
File "/Users/pieper/slicer4/latest/Slicer-superbuild/python-install/lib/python2.7/site-packages/setuptools-35.0.1.post20170921-py2.7.egg/setuptools/sandbox.py", line 169, in save_modules
saved_exc.resume()
File "/Users/pieper/slicer4/latest/Slicer-superbuild/python-install/lib/python2.7/site-packages/setuptools-35.0.1.post20170921-py2.7.egg/setuptools/sandbox.py", line 144, in resume
six.reraise(type, exc, self._tb)
File "/Users/pieper/slicer4/latest/Slicer-superbuild/python-install/lib/python2.7/site-packages/setuptools-35.0.1.post20170921-py2.7.egg/setuptools/sandbox.py", line 157, in save_modules
yield saved
File "/Users/pieper/slicer4/latest/Slicer-superbuild/python-install/lib/python2.7/site-packages/setuptools-35.0.1.post20170921-py2.7.egg/setuptools/sandbox.py", line 198, in setup_context
yield
File "/Users/pieper/slicer4/latest/Slicer-superbuild/python-install/lib/python2.7/site-packages/setuptools-35.0.1.post20170921-py2.7.egg/setuptools/sandbox.py", line 255, in run_setup
DirectorySandbox(setup_dir).run(runner)
File "/Users/pieper/slicer4/latest/Slicer-superbuild/python-install/lib/python2.7/site-packages/setuptools-35.0.1.post20170921-py2.7.egg/setuptools/sandbox.py", line 285, in run
return func()
File "/Users/pieper/slicer4/latest/Slicer-superbuild/python-install/lib/python2.7/site-packages/setuptools-35.0.1.post20170921-py2.7.egg/setuptools/sandbox.py", line 253, in runner
_execfile(setup_script, ns)
File "/Users/pieper/slicer4/latest/Slicer-superbuild/python-install/lib/python2.7/site-packages/setuptools-35.0.1.post20170921-py2.7.egg/setuptools/sandbox.py", line 47, in _execfile
exec(code, globals, locals)
File "/var/folders/md/_qs78z6s0rbfsth_95t95p800000gn/T/easy_install-Y7ercH/numpy-1.13.1/setup.py", line 392, in <module>
setup_package()
File "/var/folders/md/_qs78z6s0rbfsth_95t95p800000gn/T/easy_install-Y7ercH/numpy-1.13.1/setup.py", line 384, in setup_package
setup(metadata)
File "/Users/pieper/slicer4/latest/Slicer-superbuild/NUMPY/numpy/distutils/core.py", line 126, in setup
dist = setup(
new_attr)
File "/Users/pieper/slicer4/latest/Slicer-superbuild/NUMPY/numpy/distutils/core.py", line 169, in setup
return old_setup(**new_attr)
File "/Users/pieper/slicer4/latest/Slicer-superbuild/python-install/lib/python2.7/distutils/core.py", line 137, in setup
ok = dist.parse_command_line()
File "/Users/pieper/slicer4/latest/Slicer-superbuild/python-install/lib/python2.7/site-packages/setuptools-35.0.1.post20170921-py2.7.egg/setuptools/dist.py", line 361, in parse_command_line
result = _Distribution.parse_command_line(self)
File "/Users/pieper/slicer4/latest/Slicer-superbuild/python-install/lib/python2.7/distutils/dist.py", line 467, in parse_command_line
args = self._parse_command_opts(parser, args)
File "/Users/pieper/slicer4/latest/Slicer-superbuild/python-install/lib/python2.7/site-packages/setuptools-35.0.1.post20170921-py2.7.egg/setuptools/dist.py", line 672, in _parse_command_opts
nargs = _Distribution._parse_command_opts(self, parser, args)
File "/Users/pieper/slicer4/latest/Slicer-superbuild/python-install/lib/python2.7/distutils/dist.py", line 531, in _parse_command_opts
"command class %s must subclass Command" % cmd_class
setuptools.sandbox.UnpickleableException: DistutilsClassError('command class setuptools.command.bdist_egg.bdist_egg must subclass Command',)

CMake Error at /Users/pieper/slicer4/latest/Slicer/CMake/ExternalProjectForNonCMakeProject.cmake:76 (message):
NUMPY: Error in install step. See
/Users/pieper/slicer4/latest/Slicer-superbuild/NUMPY_install_step_output.txt
and
/Users/pieper/slicer4/latest/Slicer-superbuild/NUMPY_install_step_error.txt
Call Stack (most recent call first):
/Users/pieper/slicer4/latest/Slicer-superbuild/NUMPY_install_step.cmake:3 (ExternalProject_Execute)

make[2]: [NUMPY-prefix/src/NUMPY-stamp/NUMPY-install] Error 1
make[1]:
[CMakeFiles/NUMPY.dir/all] Error 2
make[1]: *** Waiting for unfinished jobs....

TagsNo tags attached.

Activities

lassoan

lassoan

2018-05-30 00:59

developer   ~0015819

Is this still an issue?

jcfr

jcfr

2018-05-30 12:55

administrator   ~0015846

Considering that setuptools was updated in r26470, and the support for parallel build using setuptools was fixed in r26476, I am marking this as resolved.

Issue History

Date Modified Username Field Change
2017-09-21 18:35 pieper New Issue
2017-09-21 18:35 pieper Status new => assigned
2017-09-21 18:35 pieper Assigned To => jcfr
2018-05-30 00:59 lassoan Note Added: 0015819
2018-05-30 12:55 jcfr Status assigned => resolved
2018-05-30 12:55 jcfr Resolution open => unable to reproduce
2018-05-30 12:55 jcfr Note Added: 0015846
2018-05-30 12:55 jcfr Fixed in Version => Slicer 4.9.0