rattler-build icon indicating copy to clipboard operation
rattler-build copied to clipboard

Overlinking warnings against python and some system32 dlls in windows?

Open lgray opened this issue 6 months ago • 5 comments

Over in https://github.com/conda-forge/numpy-feedstock/pull/361, we see a litany of overlinking warnings in windows concerning python<VERSION>.dll and a .dll in System32 (which I assume is OK). Here is an example.

Image

Are these benign? I am assuming so since the build does pass the CI, but for something as big as numpy it becomes necessary to ask.

We also see an overlinking warning against /usr/lib/libSystem.B.dylib on macos, but prior (still open!) issues indicate this is indeed benign.

Any pointers or tips are appreciated!

@rgommers

lgray avatar Jul 08 '25 12:07 lgray

The recipe does contain:

  run:
    - python

so the warnings for python3*.dll are spurious it looks like.

The two Scripts executables are .exe's generated by rattler-build itself from:

  python:
    entry_points:
      - if: win
        then:
          - f2py = numpy.f2py.f2py2e:main
          - numpy-config = numpy._configtool:main

so those warnings have to be spurious as well.

rgommers avatar Jul 08 '25 12:07 rgommers

I agree with your analysis. Still, a sign-off from the rattler-build folks would be helpful.

lgray avatar Jul 08 '25 13:07 lgray

Yeah, they do seem benign to me as well. When we added and made our .dll list for system libraries, it was only for the libraries that are by default in windows/unix systems. I guess we need to think some ways to dynamically enchance the python part without adding python library as system library. But for now, you can indeed ignore these would be my opinion.

zelosleone avatar Jul 09 '25 15:07 zelosleone

Thanks for taking a look and thinking about it. We'll move forward!

lgray avatar Jul 09 '25 16:07 lgray

I guess we need to think some ways to dynamically enchance the python part without adding python library as system library.

Perhaps easy to filter as a separate step, since python*.dll can be added for any Python extension module, and those are easy to recognize from the file extensions (.pyd on Windows, .cpython*.so or abi3.so on other platforms)?

rgommers avatar Jul 09 '25 18:07 rgommers