Get rid of pyximport

I am trying to use cython. I am trying to use setup.py and build, and not let pyximport do this. However, every time I try to import my module, it seems that pyximport is being called. Pyximport fails to build and everything crashes.

I am using spyder. I don't have a single pyximport reference in my project, but spyder doesn't seem to care and keeps calling pyximprot.

I tried calling my python program in a command window (outside of spyder) and it went fine.

How can I get rid of the pyximport call? Or is something else going on?

import c_result Traceback (most recent call last): File "<ipython-input-2-3e92d1c50179>", line 1, in <module> import c_result File "C:\Users\ac22376.ONEADR\AppData\Local\Continuum\Anaconda3\lib\site-packages\pyximport\pyximport.py", line 458, in load_module language_level=self.language_level) File "C:\Users\ac22376.ONEADR\AppData\Local\Continuum\Anaconda3\lib\site-packages\pyximport\pyximport.py", line 231, in load_module raise exc.with_traceback(tb) File "C:\Users\ac22376.ONEADR\AppData\Local\Continuum\Anaconda3\lib\site-packages\pyximport\pyximport.py", line 215, in load_module inplace=build_inplace, language_level=language_level) File "C:\Users\ac22376.ONEADR\AppData\Local\Continuum\Anaconda3\lib\site-packages\pyximport\pyximport.py", line 191, in build_module reload_support=pyxargs.reload_support) File "C:\Users\ac22376.ONEADR\AppData\Local\Continuum\Anaconda3\lib\site-packages\pyximport\pyxbuild.py", line 102, in pyx_to_dll dist.run_commands() File "C:\Users\ac22376.ONEADR\AppData\Local\Continuum\Anaconda3\lib\distutils\dist.py", line 955, in run_commands self.run_command(cmd) File "C:\Users\ac22376.ONEADR\AppData\Local\Continuum\Anaconda3\lib\distutils\dist.py", line 974, in run_command cmd_obj.run() File "C:\Users\ac22376.ONEADR\AppData\Local\Continuum\Anaconda3\lib\site-packages\Cython\Distutils\old_build_ext.py", line 185, in run _build_ext.build_ext.run(self) File "C:\Users\ac22376.ONEADR\AppData\Local\Continuum\Anaconda3\lib\distutils\command\build_ext.py", line 339, in run self.build_extensions() File "C:\Users\ac22376.ONEADR\AppData\Local\Continuum\Anaconda3\lib\site-packages\Cython\Distutils\old_build_ext.py", line 192, in build_extensions ext.sources = self.cython_sources(ext.sources, ext) File "C:\Users\ac22376.ONEADR\AppData\Local\Continuum\Anaconda3\lib\site-packages\Cython\Distutils\old_build_ext.py", line 327, in cython_sources self.mkpath(os.path.dirname(target)) File "C:\Users\ac22376.ONEADR\AppData\Local\Continuum\Anaconda3\lib\distutils\cmd.py", line 338, in mkpath dir_util.mkpath(name, mode, dry_run=self.dry_run) File "C:\Users\ac22376.ONEADR\AppData\Local\Continuum\Anaconda3\lib\distutils\dir_util.py", line 74, in mkpath "could not create '%s': %s" % (head, exc.args[-1])) ImportError: Building module c_result failed: ["distutils.errors.DistutilsFileError: could not create 'C:\\Windows\\system32\\config\\systemprofile': Kan ikke opprette en fil når filen allerede finnes\n"] 
+5
source share
1 answer

The problem appeared in Spyder, because initializing the package actually loads pyximport and calls pyximport.install() in the utils / site / sitecustomize.py file .

Others have complained about this on GitHub:

A solution that is not elegant (for example, it will not support spyder updates), but it should work to manually edit the sitecustomize.py file in your spyder installation and delete the section under if HAS_PYXIMPORT:

+5
source

Source: https://habr.com/ru/post/1272123/


All Articles