Моноразработайте не выполняет проект. Когда я пытаюсь работать, ничего не происходит

Я использую keychain управлять моим ssh-agent переменные среды, и это имеет дело с проверкой, что только один агент работает за один раз. От моего .bashrc на соответствующих машинах:

# is this an interactive shell?
if [[ $- == *i* ]]; then
    # set up ssh key server
    if [[ -x /usr/bin/keychain ]]; then
        eval $(keychain --eval --ignore-missing the <keys I want>)
    fi
fi

Это хранит переменные среды в ~/.keychain, выполняет агент, если это не найдено и возвращает новые или существующие переменные eval. Я установил его несколько лет назад и не коснулся его. Если Вы имеете ssh-askpass установленный, это сможет запросить пароль в среде X11, даже когда оболочка рабочая связка ключей не видима (такие как сценарии X11 init).

Существуют другие способы использовать его, но это работает на меня через несколько рабочих станций Linux, включая вхождение в рабочую станцию от удаленного, когда в меня не входят X11 там.

4
23.05.2017, 15:39
2 ответа

Это связано с недавней сменой гном-терминала. Недавний гном-терминал больше не принимает аргумент - disable-factory.

Установите пакет xterm, затем в сеансе работы с gnome-терминалом сделайте следующее:

$ unset GNOME_DESKTOP_SESSION_ID 
$ monodevelop

Это приведет к тому, что моноконверт будет использовать xterm в качестве внешнего терминала, и все должно быть в порядке.

10
27.01.2020, 20:46

Он сработал у меня после того, как я сделал несколько изменений в стоковой установке на CentOS 6.5 64-bit:

  • Я добавил /opt/mono/bin в PATH, и перезапустил мой shell. Пакет mono-opt, по идее, должен это сделать, но он этого не делает.

  • В свежесозданном решении щелкните правой кнопкой мыши проект (на один шаг ниже уровня решения) и выберите Options из контекстного меню. Перейдите в Run > General и выключите Run on external console.

    Возможно, вам не придется этого делать. Я делал это, потому что запускал MonoDevelop через SSH-переадресованную сессию X11. Это может не понадобиться при запуске из Gnome Terminal или подобного. С другой стороны, если вы запускаете MonoDevelop, щелкнув по значку, это может понадобиться, если MonoDevelop по какой-то причине не может открыть внешнее окно консоли.

    В итоге, эта настройка заставляет запускать программу в среде MonoDevelop, с выводом на вкладку Application Output в пользовательском интерфейсе. Вы, вероятно, не сможете использовать программу интерактивно с этой настройкой.

    Если вам нужно запустить консольную программу Mono в интерактивном режиме, лучше всего сделать это прямо из терминала:

    $ mono foo/bin/Debug/foo.exe
    

    Здесь решение называется foo, но при необходимости подставьте свое собственное имя.

5
27.01.2020, 20:46

Теги

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