'f2py -c --help-fcompiler' зависает - PullRequest
0 голосов
/ 30 января 2019

Когда я запускаю команду

f2py --c -help-fcompiler

f2py печатает следующий вывод, а затем зависает бесконечно

Gnu95FCompiler instance properties:
  archiver        = ['/usr/bin/gfortran', '-cr']
  compile_switch  = '-c'
  compiler_f77    = ['/usr/bin/gfortran', '-Wall', '-g', '-ffixed-form', '-
                    fno-second-underscore', '-fPIC', '-O3', '-funroll-loops']
  compiler_f90    = ['/usr/bin/gfortran', '-Wall', '-g', '-fno-second-
                    underscore', '-fPIC', '-O3', '-funroll-loops']
  compiler_fix    = ['/usr/bin/gfortran', '-Wall', '-g', '-ffixed-form', '-
                    fno-second-underscore', '-Wall', '-g', '-fno-second-
                    underscore', '-fPIC', '-O3', '-funroll-loops']
  libraries       = ['gfortran']
  library_dirs    = ['/usr/lib/gcc/x86_64-linux-gnu/7', '/usr/lib/gcc/x86_64
                    -linux-gnu/7']
  linker_exe      = ['/usr/bin/gfortran', '-Wall', '-Wall']
  linker_so       = ['/usr/bin/gfortran', '-Wall', '-g', '-Wall', '-g', '-
                    shared']
  object_switch   = '-o '
  ranlib          = ['/usr/bin/gfortran']
  version         = LooseVersion ('7')
  version_cmd     = ['/usr/bin/gfortran', '-dumpversion']

Когда я убиваю процесс вручную с помощью ctrl+c, это выглядит так, как будтозастрял здесь:

TEST_ENV/lib/python3.6/site-packages/numpy/distutils/fcompiler/__init__.py", line 472, in customize
    posix=(os.name == 'posix'))
  File "/usr/lib/python3.6/shlex.py", line 305, in split
    return list(lex)
  File "/usr/lib/python3.6/shlex.py", line 295, in __next__
    token = self.get_token()
  File "/usr/lib/python3.6/shlex.py", line 105, in get_token
    raw = self.read_token()
  File "/usr/lib/python3.6/shlex.py"

Это все внутри чистой виртуальной среды с использованием numpy 1.16.0

У кого-нибудь есть идеи, почему это происходит?

1 Ответ

0 голосов
/ 31 января 2019

Это известная ошибка в numpy (исправлена ​​и портирована на 1.16.1):

См. https://github.com/numpy/numpy/pull/12843

Причина

f2py -c --help-compiler

висит на неопределенное времяUbuntu 18.04 является результатом вызова shlex.split() на None.

Это происходит в строке 471 в fcompiler/__init__.py, когда show_fcompilers() вызывает customize() и self.command_vars.compiler_f77 = f77, self.command_vars.compiler_f90 = None

...