Действительно ли это возможно к контролю учётных записей, поднимают процесс, не запуская другой процесс

Все приведенные выше ответы не сработали для меня , однако, после целого дня борьбы, я наконец-то решил эту проблему.

Чтобы иметь cv2.so, нам нужно:

  1. По крайней мере Python 2 или 3 установлены. вот почему люди говорят: sudo apt-get install python-dev. Но это не обязательно , в моем случае я использую anaconda python . (Есть много способов установить Python)
  2. numpy также является обязательным. Итак, какой бы Python вы ни использовали, просто убедитесь, что он загружен. В моем случае я использую anaconda numpy . (anaconda уже установила его, для обычного python, используйте pip install numpy)

Чтобы сказать camke, где находится путь, просто возьмите мою команду в качестве примера:

cmake -D CMAKE_BUILD_TYPE=RELEASE \
      -D CMAKE_INSTALL_PREFIX=/usr/local \
      -D OPENCV_EXTRA_MODULES_PATH=../opencv_contrib/modules \
      -D PYTHON2_EXECUTABLE='/home/parallels/anaconda2/bin/python' \
      -D PYTHON2_LIBRARY='/home/parallels/anaconda2/lib/python2.7' \
      -D PYTHON2_NUMPY_INCLUDE_DIRS='/home/parallels/anaconda2/lib/python2.7/site-packages/numpy/core/include' \
      -D BUILD_EXAMPLES=ON ..

для python3 , вы должны (я использую anaconda python, поэтому я связал все с anaconda):

cmake -D CMAKE_BUILD_TYPE=Release \
      -D CMAKE_INSTALL_PREFIX=/usr/local \
      -D OPENCV_EXTRA_MODULES_PATH=../opencv_contrib-3.3.1/modules \
      -D PYTHON3_EXECUTABLE='/home/test/SoftWare/anaconda3/bin/python3.6m' \
      -D PYTHON_INCLUDE_DIR='/home/test/SoftWare/anaconda3/include/python3.6m' \
      -D PYTHON3_LIBRARY='/home/test/SoftWare/anaconda3/lib/libpython3.6m.so' \
      -D PYTHON3_NUMPY_INCLUDE_DIRS='/home/test/SoftWare/anaconda3/lib/python3.6/site-packages/numpy/core/include' \
      -D PYTHON3_PACKAGES_PATH='/home/test/SoftWare/anaconda3/lib/python3.6/site-packages' ..

Одна вещь, которую нужно запомнить !!! прежде чем войти в cmake ... 1. очистите вашу папку сборки, 2. Только один раз! , иначе вы не можете изменить ** PYTHON3_LIBRARY: НЕТ ** ... (я думаю, что это ошибка)

Я знаю, что могут быть некоторые бесполезные аргументы, но я Я устал, чтобы попытаться очистить их. Вот скриншот моей информации о печати cmake. Снимок экрана с моей информацией о cmake

Вы можете ясно видеть, что только python2 может генерировать cv2.so. Python3 не может! (Оболочки Python3 не могут быть сгенерированы).

13
задан Negs 23 June 2009 в 11:37
поделиться

2 ответа

Нет, вы не можете повысить уровень существующего процесса. Вы правы - вы начали новый процесс с повышенными привилегиями и заставили его делать всю работу за вас.

7
ответ дан 2 December 2019 в 01:31
поделиться

Еще один возможный ответ (который заканчивается по сути тот же ответ) - это иметь службу, которая работает как LocalSystem, которая выполняет повышенную работу за вас.

2
ответ дан 2 December 2019 в 01:31
поделиться
Другие вопросы по тегам:

Похожие вопросы: