Warning on import `ld: unsupported tapi file type '!tapi-tbd' in YAML file`

When I import pymc as pm I get the warning:

ld: unsupported tapi file type '!tapi-tbd' in YAML file '/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/lib/libSystem.tbd' for architecture x86_64
clang-12: error: linker command failed with exit code 1 (use -v to see invocation)

This is on an M1 Mac, Mac OS 12.4, with standard v4 install using

cd git
git clone https://github.com/pymc-devs/pymc/
cd pymc
conda env create -f ./conda-envs/environment-dev-py39.yml
conda activate pymc-dev-py39
pip install .
Python implementation: CPython
Python version       : 3.9.12
aesara               : 2.5.1
aeppl                : 0.0.27
pymc                 : 4.0.0b6

PyMC does run (it’s a warning not an error), but I’m trying to contribute to pymc-examples and need to get rid of the warning for a polished notebook.

EDIT: Also get the warnings when sampling…

Auto-assigning NUTS sampler...
Initializing NUTS using jitter+adapt_diag...
/Users/benjamv/opt/miniconda3/envs/pymc-dev-py39/lib/python3.9/site-packages/pymc/aesaraf.py:1005: UserWarning: The parameter 'updates' of aesara.function() expects an OrderedDict, got <class 'dict'>. Using a standard dictionary here results in non-deterministic behavior. You should use an OrderedDict if you are using Python 2.7 (collections.OrderedDict for older python), or use a list of (shared, update) pairs. Do not just convert your dictionary to this type before the call as the conversion will still be non-deterministic.
  aesara_function = aesara.function(
Multiprocess sampling (4 chains in 4 jobs)
NUTS: [μ, σ, w]
ld: unsupported tapi file type '!tapi-tbd' in YAML file '/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/lib/libSystem.tbd' for architecture x86_64
clang-12: error: linker command failed with exit code 1 (use -v to see invocation)
ld: unsupported tapi file type '!tapi-tbd' in YAML file '/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/lib/libSystem.tbd' for architecture x86_64
clang-12: error: linker command failed with exit code 1 (use -v to see invocation)
ld: unsupported tapi file type '!tapi-tbd' in YAML file '/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/lib/libSystem.tbd' for architecture x86_64
clang-12: error: linker command failed with exit code 1 (use -v to see invocation)
ld: unsupported tapi file type '!tapi-tbd' in YAML file '/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/lib/libSystem.tbd' for architecture x86_64
clang-12: error: linker command failed with exit code 1 (use -v to see invocation)
1 Like

This may be related to this issue?

My environment was made using (possibly old) instructions

cd git
git clone https://github.com/pymc-devs/pymc/
cd pymc
conda env create -f ./conda-envs/environment-dev-py39.yml
conda activate pymc-dev-py39
pip install .

Problem seems to go away when using the current install instructions. But at the moment that gives me PyMC 4.0.0b5 (not 4.0.0b6), but no big problem.

1 Like

Someone forgot to (manually) add conda-forge during the b6 release process (b2 was missed as well). If b5 works, great. Otherwise, you can open and issue and try to get b6 released there (you’re not the only one missing out on it).

1 Like