Skip to content
This repository has been archived by the owner on Sep 1, 2023. It is now read-only.

Wheel creation fails in Travis-CI: compile error in clang and gcc #1762

Closed
rhyolight opened this issue Jan 19, 2015 · 9 comments · Fixed by #1765
Closed

Wheel creation fails in Travis-CI: compile error in clang and gcc #1762

rhyolight opened this issue Jan 19, 2015 · 9 comments · Fixed by #1765

Comments

@rhyolight
Copy link
Member

This failure was introduced by the merge of #1579. Wheels have not been created and uploaded to S3 for regression tests since https://github.com/numenta/nupic/tree/2bddf7d3ee6a2716647ff20f4ce1cce356b0199c.

Relevant truncated error message below. See http://pastebin.com/qhSd5nw4 for complete log of clang error:

pip wheel --wheel-dir=dist/wheels .
Unpacking /home/travis/build/numenta/nupic
  Running setup.py egg_info for package from file:///home/travis/build/numenta/nupic

...

clang: error: unable to execute command: Killed
clang: error: clang frontend command failed due to signal (use -v to see invocation)
clang version 3.4 (tags/RELEASE_34/final)
Target: x86_64-unknown-linux-gnu
Thread model: posix

clang: note: diagnostic msg: PLEASE submit a bug report to http://llvm.org/bugs/ and include the crash backtrace, preprocessed source, and associated run script.

clang: note: diagnostic msg:
********************
PLEASE ATTACH THE FOLLOWING FILES TO THE BUG REPORT:
Preprocessed source(s) and associated run script(s) are located at:
clang: note: diagnostic msg: /tmp/algorithms_wrap-c6d8cd.cpp
clang: note: diagnostic msg: /tmp/algorithms_wrap-c6d8cd.sh
clang: note: diagnostic msg:
********************
error: command 'clang' failed with exit status 254
----------------------------------------
  Failed building wheel for nupic
  Running setup.py bdist_wheel for logilab-common
  Destination directory: /home/travis/build/numenta/nupic/dist/wheels
  Running setup.py bdist_wheel for astroid
  Destination directory: /home/travis/build/numenta/nupic/dist/wheels
  Running setup.py bdist_wheel for py
  Destination directory: /home/travis/build/numenta/nupic/dist/wheels
  Running setup.py bdist_wheel for cov-core
  Destination directory: /home/travis/build/numenta/nupic/dist/wheels
  Running setup.py bdist_wheel for execnet
  Destination directory: /home/travis/build/numenta/nupic/dist/wheels
  Running setup.py bdist_wheel for six
  Destination directory: /home/travis/build/numenta/nupic/dist/wheels
Successfully built asteval coverage mock ordereddict pillow psutil pycapnp pylint pytest pytest-cov pytest-xdist python-dateutil PyYAML unittest2 validictory PyMySQL DBUtils numpy tweepy pyproj prettytable logilab-common astroid py cov-core execnet six
Failed to build nupic

This was not fixed by switching to gcc instead of clang. gcc also has errors.

gcc-4.8: internal compiler error: Killed (program cc1plus)

Please submit a full bug report,

with preprocessed source if appropriate.

See <file:///usr/share/doc/gcc-4.8/README.Bugs> for instructions.

error: command 'gcc-4.8' failed with exit status 4

----------------------------------------
  Failed building wheel for nupic
@rhyolight rhyolight self-assigned this Jan 19, 2015
@rhyolight rhyolight added this to the 0.2.0 milestone Jan 19, 2015
@rhyolight rhyolight changed the title Wheel creating fails in Travis-CI: clang error Wheel creation fails in Travis-CI: clang error Jan 19, 2015
@rhyolight
Copy link
Member Author

@david-ragazzi Since merging #1579, seeing this problem building python wheels. Any clue?

@rhyolight
Copy link
Member Author

Could be a clang version problem. Travis-CI is using clang 3.4, which also comes on Ubuntu 12 (and it works there). Not sure what's going on yet.

@rhyolight
Copy link
Member Author

Works with gcc on my Ubuntu laptop. Installing clang now...

@rhyolight
Copy link
Member Author

I think the problem might be that nupic.core binaries are built with gcc, but the NuPIC deployment is building wheels using the clang job. I'm going to try to adjust the NuPIC build to use gcc for wheel deployment and see if that helps.

@rhyolight
Copy link
Member Author

I cannot replicate this problem on my Ubuntu machine. I have tried building from local nupic.core source as well as from the binary hosted on S3, and each time I can run pip wheel --wheel-dir=dist/wheels . without any problems. I still don't know what is going wrong.

@rhyolight rhyolight changed the title Wheel creation fails in Travis-CI: clang error Wheel creation fails in Travis-CI: compile error in clang and gcc Jan 22, 2015
@rhyolight
Copy link
Member Author

@david-ragazzi @breznak @scottpurdy @oxtopus I need more eyes on this problem. The error message I'm getting back from both clang and gcc are generic and ask me to file bug reports against the compilers themselves. There doesn't seem to be any indication of a root cause, although I could be missing it. Please see the issue description for links to the complete logs and error messages.

I'm assuming that this will prevent us from releasing 0.2.0 if binary wheels can't be created.

@rhyolight
Copy link
Member Author

It's a long shot, but I noticed that the fake C extension was still in the setup.py. Perhaps removing it will help? Not sure, but worth a shot.

@rhyolight
Copy link
Member Author

Yes! Turns out it was the fake C extension that was screwing things up. 🤘 #1769 fixed this.

@david-ragazzi
Copy link
Contributor

Congratulations @rhyolight ! (and sorry for I didn't help you on this, I was very busy working on Windows build job.. 😞 ).

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants