https://github.com/Toroid-io/vcd2wavedrom
когда я запускаю свой терминал, приведенный ниже код работает нормально
Код: Выделить всё
source /var/www/xxx/vcd2wavedrom/verilog-env/bin/activate &&
python3 /var/www/xxx/vcd2wavedrom/vcd2wavedrom/vcd2wavedrom.py
-i /var/www/xxx/uuids/abcd/dump.vcd
-o /var/www/xxx/uuids/abcd/dump.json
Код: Выделить всё
$env = 'source /var/www/xxx/vcd2wavedrom/verilog-env/bin/activate';
cmd = "python3 /var/www/xxx/vcd2wavedrom/vcd2wavedrom/vcd2wavedrom.py -i ".$uuid_dir."/dump.vcd -o ".$uuid_dir."/dump.json";
#!/bin/sh
shell_exec($env ." && ". $cmd);
Как установить venv из php-скрипта .
Я не разработчик Python. Пожалуйста, разработайте свой ответ как можно подробнее, чтобы я мог лучше понять.
Я пытался удалить источник, но получил
Код: Выделить всё
sh: 1: /var/www/xxx/vcd2wavedrom/verilog-env/bin/activate: Permission denied
Traceback (most recent call last):
File "/var/www/xxx/vcd2wavedrom/vcd2wavedrom/vcd2wavedrom.py", line 9, in
from vcdvcd.vcdvcd import VCDVCD
ModuleNotFoundError: No module named 'vcdvcd'
Ответ
Я побежал
Код: Выделить всё
pip install vcdvcd --break-system-packages
https://stackoverflow.com/questions/756 ... y-managed- Environment-ever-time-i-use-pip-3[]
и удалил настройку venv
Код: Выделить всё
$env = '/var/www/xxx/vcd2wavedrom/verilog-env/bin/python3';
$cmd = "python3 /var/www/xxx/vcd2wavedrom/vcd2wavedrom/vcd2wavedrom.py -i ".$uuid_dir."/dump.vcd -o ".$uuid_dir."/dump.json";
shell_exec($cmd);
Подробнее здесь: https://stackoverflow.com/questions/789 ... php-script
Мобильная версия