Я пытаюсь запустить OpenAI roboschool в Google Colab (есть настройка виртуального дисплея, которая записывает среду во время обучения и отображает видео после). Библиотека roboschool будет импортирована, но среды не отображаются должным образом (вообще), когда я запускаю:
import roboschool, gym;
print("\n".join(['- ' + spec.id for spec in
gym.envs.registry.all() if spec.id.startswith('Roboschool')]))
список пуст, и он должен включать среды.
Когда cmake связывает dll, это происходит с переменными окружения? Переменные окружения в Colab не работают как обычно, и я думаю, что это может быть проблемой. Я не знаю достаточно, чтобы знать наверняка.
Этот вывод мне кажется подозрительным, не похоже, что путь времени выполнения будет удален. Их несколько, поэтому я взял, к примеру, только две.
-- Set runtime path of "/content/roboschool/roboschool/cpp-
household/bullet_local_install/lib/libBulletDynamics.so.2.87" to ""
-- Set runtime path of "/content/roboschool/roboschool/cpp-
household/bullet_local_install/lib/libBullet3Geometry.so.2.87" to "
Вот последовательность команд.
cmake -DBUILD_SHARED_LIBS=ON -DUSE_DOUBLE_PRECISION=1 -
DCMAKE_INSTALL_PREFIX:PATH=/content/roboschool/roboschool/cpp-
household/bullet_local_install -DBUILD_CPU_DEMOS=OFF -
DBUILD_BULLET2_DEMOS=OFF -DBUILD_EXTRAS=OFF -DBUILD_UNIT_TESTS=OFF -
DBUILD_CLSOCKET=OFF -DBUILD_ENET=OFF -DBUILD_OPENGL3_DEMOS=OFF ..
make -j4
make install
Есть ли способ, которым я могу переопределить способ определения путей для связанных библиотек, чтобы они связывались с правильными путями, если это правильно? Похоже, что заглядывание в RPATH может быть шагом в правильном направлении?
Заранее спасибо. Пожалуйста, дайте мне знать, если необходимы дополнительные детали.