Fingindo um ambiente Linux sem chroot

1

Para um projeto universitário, quero testar um programa C ++ 11 em uma máquina de 32 núcleos. Infelizmente, a máquina tem o Ubuntu 12.04 com o GCC 4.6 instalado (precisamos do GCC 4.7 devido a alguns recursos de encadeamento do C ++ 11). Em tal ambiente eu normalmente executaria um chroot com um linux customizado (digamos um debootstrap com o Ubuntu 12.10). Como não temos acesso root na máquina, não podemos usar o chroot.

Até agora eu preparei um ambiente de tempo de execução usando o debootstrap para o nosso código, eu o compilei no ambiente do debootstrap. Então copiei para o servidor (usando rsync). Para executar nosso código C ++, eu configurei o LD_LIBRARY_PATH para

export LD_LIBRARY_PATH=~/debootstrap/usr/lib/:~/debootstrap/lib64/:~/debootstrap/usr/lib/x86_64-linux-gnu/:~/debootstrap/lib/x86_64-linux-gnu/:$LD_LIBRARY_PATH

e até agora nosso código parece rodar. No entanto, estou preso ao nosso código python. Não parece ser suficiente para definir os caminhos manualmente.

export PYTHONPATH=~/debootstrap/usr/lib/python2.7/dist-packages:~/debootstrap/usr/lib/python2.7:~/debootstrap/usr/lib/python2.7/plat-linux2:~/debootstrap/usr/lib/python2.7/lib-tk:~/debootstrap/usr/lib/python2.7/lib-dynload:~/debootstrap/usr/local/lib/python2.7/dist-packages:~/debootstrap/usr/lib/pymodules/python2.7:~/debootstrap/usr/lib/python2.7/dist-packages/PIL:~/debootstrap/usr/lib/python2.7/dist-packages/gtk-2.0:~/debootstrap/usr/lib/python2.7

Executando nossos resultados de script em

ImportError: No module named _path

Existe uma maneira mais fácil de realizar uma "falsa" -chroot do que simplesmente sobrescrevendo e criando variáveis de ambiente?

Note que eu preciso do python desde que criamos um módulo C ++ - Python personalizado para executar nossos testes. Talvez eu deva criar duas perguntas a partir disso.

    
por Pascal 10.12.2012 / 22:48

0 respostas