Ответ найден в стеке переполнения потока:
https://stackoverflow.com/questions/3287038/cron-and-virtualenv
Решение состоит в том, чтобы ссылаться на исполняемый файл python в самой виртуальной среде. В моем случае я изменил файл bash для запуска этого исполняемого файла:
/home/etlservice/anaconda3/envs/sql_server_etl/bin/python
В дереве исходных текстов ядра Linux есть файлы Makefile (, многие из них на самом деле )содержат все нужные вам флаги, включая -O2
, которые вы можете удалить или заменить на -O0
.
Вот как вы можете изменить флаги компиляции для всех из них (, что может быть рискованно, по словам Стивена Китта):
cd linux
find. -name Makefile -print0 | xargs -0 sed -i 's/-O2/-O0/g'
or
find. -name Makefile -print0 | xargs -0 sed -i 's/-O2/-Og/g'
Или изменить их только для корневого Makefile (, что безопаснее):
cd linux
sed -i 's/-O2/-O0/g' Makefile
or
xargs -0 sed -i 's/-O2/-Og/g' Makefile
man gcc
говорит, что -Og
подходит для целей отладки.