Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

attribute error during check_overlinking in conda-build-3.3.0 #2651

Closed
marscher opened this issue Jan 25, 2018 · 9 comments
Closed

attribute error during check_overlinking in conda-build-3.3.0 #2651

marscher opened this issue Jan 25, 2018 · 9 comments
Labels
locked [bot] locked due to inactivity

Comments

@marscher
Copy link

marscher commented Jan 25, 2018

A long working recipe now fails with the recent conda-build release.
recipe: https://github.com/markovmodel/PyEMMA/blob/a004721bfdcbcf97da861e7c7f1b894cb026e795/devtools/conda-recipe/meta.yaml

travis log: https://travis-ci.org/markovmodel/PyEMMA/jobs/333273095#L1740

WARNING (pyemma-dev,_ext.cpython-36m-x86_64-linux-gnu.so): lib/libstdc++.so.6 found in multiple packages:
WARNING (pyemma-dev,_ext.cpython-36m-x86_64-linux-gnu.so): defaults::gcc-4.8.5-7
Traceback (most recent call last):
  File "/home/travis/miniconda/bin/conda-build", line 11, in <module>
    sys.exit(main())
  File "/home/travis/miniconda/lib/python3.6/site-packages/conda_build/cli/main_build.py", line 413, in main
    execute(sys.argv[1:])
  File "/home/travis/miniconda/lib/python3.6/site-packages/conda_build/cli/main_build.py", line 404, in execute
    verify=args.verify)
  File "/home/travis/miniconda/lib/python3.6/site-packages/conda_build/api.py", line 188, in build
    need_source_download=need_source_download, config=config, variants=variants)
  File "/home/travis/miniconda/lib/python3.6/site-packages/conda_build/build.py", line 1913, in build_tree
    notest=notest,
  File "/home/travis/miniconda/lib/python3.6/site-packages/conda_build/build.py", line 1343, in build
    built_package = bundlers[output_d.get('type', 'conda')](output_d, m, env)
  File "/home/travis/miniconda/lib/python3.6/site-packages/conda_build/build.py", line 806, in bundle_conda
    files = post_process_files(metadata, initial_files)
  File "/home/travis/miniconda/lib/python3.6/site-packages/conda_build/build.py", line 707, in post_process_files
    post_build(m, new_files, build_python=python)
  File "/home/travis/miniconda/lib/python3.6/site-packages/conda_build/post.py", line 592, in post_build
    check_overlinking(m, files)
  File "/home/travis/miniconda/lib/python3.6/site-packages/conda_build/post.py", line 528, in check_overlinking
    _inspect_file_linking(m, path, files, errors, pkg_name, run_reqs, sysroots)
  File "/home/travis/miniconda/lib/python3.6/site-packages/conda_build/post.py", line 505, in _inspect_file_linking
    msg_prelude, info_prelude)
  File "/home/travis/miniconda/lib/python3.6/site-packages/conda_build/post.py", line 440, in _find_needed_dso_in_prefix
    if pkg.dist_name not in m.meta.requirements.host:
AttributeError: 'dict' object has no attribute 'requirements'
@marscher
Copy link
Author

forgot to mention that I'm using conda-forge as highest priority channel.

@mingwandroid
Copy link
Contributor

Ah ok, this is my fault. This codepath was probably never exercised. Working on a fix now.

@mingwandroid
Copy link
Contributor

OK, with that PR on macOS and with conda set to error on overlinking via this in ~/.condarc:

conda_build:
  error_overlinking: true

.. I now get:

  ERROR (pyemma-dev,_covartools.cpython-35m-darwin.so): Needed DSO lib/libstdc++.6.dylib in _covartools.cpython-35m-darwin.so found in defaults::gcc-4.8.5-8
  ERROR (pyemma-dev,_covartools.cpython-35m-darwin.so): .. but gcc not in reqs/run, i.e. it is overlinked (likely) or a missing dependency (less likely)
  ERROR (pyemma-dev,_covartools.cpython-35m-darwin.so): Needed DSO lib/libgomp.1.dylib in _covartools.cpython-35m-darwin.so found in defaults::gcc-4.8.5-8
  ERROR (pyemma-dev,_covartools.cpython-35m-darwin.so): .. but gcc not in reqs/run, i.e. it is overlinked (likely) or a missing dependency (less likely)
   INFO (pyemma-dev,_covartools.cpython-35m-darwin.so): Needed DSO /usr/lib/libSystem.B.dylib not found in any CDT/compiler package?!
  ERROR (pyemma-dev,_covartools.cpython-35m-darwin.so): lib/libgcc_s.1.dylib found in multiple packages:
  ERROR (pyemma-dev,_covartools.cpython-35m-darwin.so): defaults::gcc-4.8.5-8
  ERROR (pyemma-dev,_covartools.cpython-35m-darwin.so): .. but gcc-4.8.5-8 not in reqs/host (is transitive)
  ERROR (pyemma-dev,_covartools.cpython-35m-darwin.so): conda-forge::libgfortran-3.0.0-0
  ERROR (pyemma-dev,_covartools.cpython-35m-darwin.so): .. but libgfortran-3.0.0-0 not in reqs/host (is transitive)

@marscher
Copy link
Author

Looks good. Thank you!

@msarahan
Copy link
Contributor

Fixed in #2652, new release coming soon.

@Colelyman
Copy link

I am experiencing the same problem. Is there an ETA for the new release with this fix?

@msarahan
Copy link
Contributor

@Colelyman later today. Sorry for the inconvenience.

@msarahan
Copy link
Contributor

msarahan commented Feb 1, 2018

@Colelyman conda-build 3.4.0 is available now.

@github-actions
Copy link

Hi there, thank you for your contribution!

This issue has been automatically locked because it has not had recent activity after being closed.

Please open a new issue if needed.

Thanks!

@github-actions github-actions bot added the locked [bot] locked due to inactivity label Mar 22, 2022
@github-actions github-actions bot locked as resolved and limited conversation to collaborators Mar 22, 2022
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
locked [bot] locked due to inactivity
Projects
None yet
Development

No branches or pull requests

4 participants