как решить проблему не удается выделить память в статическом блоке TLS ошибка для пакетов python

#python #ubuntu #conda #oserror

Вопрос:

Я использую ubuntu 20.04 и conda 4.8.3 . Я установил пакет в одной из своих сред с помощью pip ( pip install --force-reinstall --no-cache-dir gmsh-dev ), но при попытке импортировать пакет в ноутбук jupyter я сталкиваюсь со следующей ошибкой:

 OSError: /home/alid/miniconda3/envs/new_env/lib/python3.9/site-packages/gmsh-git-Linux64-sdk/lib/libgmsh.so: cannot allocate memory in static TLS block
 

Я понятия не имею, в чем моя проблема, и очень признателен за любую помощь.

Ответ №1:

Основываясь на том, как другие решали подобные проблемы, попробуйте добавить его LD_PRELOAD .

 ## set the env var for "new_env" environment
conda env config vars set -n new_env LD_PRELOAD='/home/alid/miniconda3/envs/new_env/lib/python3.9/site-packages/gmsh-git-Linux64-sdk/lib/libgmsh.so'

## test importing
conda run -n new_env python -c "import gmsh"
 

См. Документацию по управлению переменными среды в среде Conda envs.

Комментарии:

1. Уважаемый @merv, Во-первых, я очень признателен вам за то, что вы уделили время моей проблеме. Я попробовал свою первую строку кода, и после того, когда я запускаю jupyter notebook в моем терминале я сталкиваюсь следующее сообщение об ошибке: /home/alid/miniconda3/envs/new_env/bin/python: /usr/lib/x86_64-linux-gnu/libstdc .so.6: version GLIBCXX_3.4.26′ не найдена (требуется для /home/alid/miniconda3/envs/new_env/lib/python3.9/site-packages/gmsh-git-Linux64-sdk/lib/libgmsh.so)`.

2. @Ali_d кажется новой проблемой и стоит нового вопроса