Я использую стандартную учетную запись пользователя для своих повседневных задач в Mac OS. После обновления до Snow Leopard меня просят сделать следующее, когда программа запускается из Xcode:
«Введите имя и пароль пользователя в группе« Инструменты разработчика », чтобы разрешить доступ к инструментам разработчика для внесения изменений»
Хотя я знаю имя пользователя и пароль администратора, это меня раздражает (хотя требуется только один раз для входа в систему).
При доступе к инструментам разработчика запрашиваются права на «system.privilege.taskport.debug» из приложения gdb-i386-apple-darwin.
Как лучше всего обойти это?
источник
-u <name-of-account-with-root-access>
параметры. Итак, моя полная команда былаdscl -u <root-account> . append /Groups/_developer GroupMembership <my-account>
Наконец, я смог избавиться от него с помощью
DevToolsSecurity -enable
терминала. Спасибо @joar_at_work !К вашему сведению : я использую Xcode 4.3 и нажал кнопку отключения при его первом запуске, не спрашивайте почему, просто предположите, что моя собака заставила меня сделать это :)
источник
-enable
на,-disable
и он работает, как ожидалось!dscl -u <root-account> . append /Groups/_developer GroupMembership <my-account>
источник
Вам следует добавить себя в группу инструментов разработчика. Общий синтаксис для добавления пользователя в группу в OS X следующий:
Я считаю, что группа DevTools называется
_developer
.источник
Решение Неда Дейли работает отлично, если вашему пользователю это разрешено
sudo
.Если это не так, вы можете
su
войти в учетную запись администратора, а затем использовать егоdscl . append /Groups/_developer GroupMembership $user
, где $ user - имя пользователя.Однако я ошибочно подумал, что это не так, потому что я неправильно ввел имя пользователя в команде, и она молча терпит неудачу.
Следовательно, после ввода этой команды вы должны проверить ее. Это проверит, находится ли $ user в группе $ group, где переменные представляют соответственно имя пользователя и имя группы.
Эта команда либо напечатает сообщение,
user is not a member of the group
либоuser is a member of the group
.источник
dscl . append /Groups/_developer GroupMembership username
иdsmemberutil checkmembership -U "username goes here" -G "group goes here"
Ответ предложен @Stacy Simpson:
Мы боремся с проблемой, описанной в этих потоках, и ни одно из решений, похоже, не работает:
Поскольку я новичок в SO, я не могу публиковать сообщения ни в одной из веток. (Первый фактически закрыт, и я не согласен с соображениями локализации ...)
В любом случае, мы создали обходной путь с использованием AppleScript, который может заинтересовать людей. Приведенный ниже сценарий должен выполняться асинхронно до запуска вашего автоматического теста:
Вот сценарий:
Возможно, это не очень безопасно, но это лучший обходной путь, который мы придумали, позволяющий запускать тесты без вмешательства пользователя.
Надеюсь, я смогу набрать достаточно очков, чтобы опубликовать ответ; или кто-то может снять защиту с этого вопроса. С уважением.
источник
Вот лучшее решение от
Mac OS X, которое хочет использовать системную связку ключей при компиляции проекта.
источник
Мне помогло предложение из следующей ветки:
Остановить предупреждение "Для продолжения отладки требуется доступ к инструментам разработчика, чтобы взять под контроль другой процесс"
Он предлагал запустить следующую команду в приложении Терминал :
источник
Я использую Snow Leopard, и этот мне не совсем подходит. Но сработала следующая процедура:
источник
После запуска:
согласно приведенному выше ответу, вам все равно может быть предложено ввести собственный пароль:
Нам нужна авторизация от администратора для запуска отладчика. Это произойдет только один раз за сеанс входа в систему.
На самом деле это означает, что любой пользователь группы _developer, поэтому здесь будет работать только ваш пользователь / пароль, не являющийся администратором, но чтобы полностью избавиться от него (без запросов после перезагрузки), вам также необходимо запустить:
(запуск его с помощью sudo от имени администратора / от имени пользователя root сделает это так, чтобы вы могли делать это удаленно без запроса пароля графического интерфейса)
источник