ariovistus / pyd

Interoperability between Python and D
MIT License
157 stars 32 forks source link

OSX - the rawexample works but testdll doesn't #144

Open DavidBriant opened 3 years ago

DavidBriant commented 3 years ago

I'm on a macbook - Catalina 10.15.7 with dmd v2.094 and an almost vanilla python 3.8.0, pyd 14.0.0.

I can compile both examples using python3.8 (python3.8 setup.py build) but when I try to run it I get No GC was initialized, please recheck the name of the selected GC ('conservative').. The raw example works.

I've been using autowrap without problem - although I need more control over the interface than what I'm currently getting (hence looking into pyd).

One oddity is that one of the first lines of output is gcc -c /Users/david/repos/github/ariovistus/pyd/infrastructure/d/so_ctor.c -fPIC -o build/temp.macosx-10.9-x86_64-3.8/infra/so_ctor.o - I was expecting 10.15 instead 10.9.

Pointers and/or fixes would be welcome. Thx David

ariovistus commented 3 years ago

I have not build pyd on osx and have no experience on that platform, but your error certainly sounds related to starting the runtime from a shared library, which the raw example doesn't do.

I guess my first question would be is rt_init being called? https://github.com/ariovistus/pyd/blob/master/infrastructure/d/python_so_linux_boilerplate.d#L26