2012-06-13 1 views
1

У меня есть программа на С ++, которая записывает в stdout, что я пытаюсь скомпилировать в утилиту командной строки в XCode. Мне нужна программа, скомпилированная в сборку релиза (которая, кажется, XCode вызывает рисунок Archive-go), а не запускать ее как debug.Как перенаправить STDOUT из XCode скомпилированной командной строки?

Я в принципе хочу трубы выход моей программы в текстовый файл, как этот

MyProgram > TextFile.txt

я могу скомпилировать программу в командной строке и запустить его, как это с помощью оболочки Bash, как это:

Open MyProgram

Это порождает новый процесс (не то, что я хочу). Тем не менее, я мог бы жить с этим, если это работает:

Open MyProgram > TextFile.txt

... Но оно не :-(Если я пытаюсь просто запустить MyProgram непосредственно из Bash, я получаю ошибку:. -bash: MyProgram: команда не найдена.

Что я делаю неправильно? Как я могу скомпилировать мой инструмент командной строки не требуется Открыть команду под Mac OSX?

Спасибо за любую помощь вы можете предоставить. Я собирание C++ на платформе Mac, и я начинаю считать, что это немного более неприятно, чем Visual Studio. Неужели это когда-либо становится менее болезненным для wo rk с? :-)

+0

Подождите, вы используете «Открыть MyProgram» в Bash? Разве вы не имеете в виду просто «MyProgram» или, возможно, «./MyProgram»? –

+0

Hi notfed. Да. Я действительно работаю так. Что я хочу сделать, так это просто запустить MyProgram, как вы описали. Но когда я это делаю, я получаю ошибку «команда не найдена». –

+0

Если ваша программа называется «MyProgram» и находится в текущем каталоге, вы вводите «./MyProgram» для ее запуска. –

ответ

3
  • Сделайте свой проект Command Line Tool. Это приведет к тому, что вы можете запустить его из командной строки напрямую.

  • Запустить его, набрав ./MyProgram или ./MyProgram > TextFile.txt не open MyProgram.

+0

Моя программа уже является инструментом командной строки, этого, похоже, недостаточно. Есть ли какой-либо параметр конфигурации, который я должен установить в проекте? –

+0

Нет, он должен вывести двоичный файл, который вы можете запустить, набрав '/ path/to/MyProgram' или'./MyProgram', если вы уже находитесь в том же каталоге, что и ваша программа. – gcochard

+0

Я пропустил требование для текущего пути Грега. Кажется, что Open будет искать в текущем пути, но написание исполняемого файла из bash не будет. –

Смежные вопросы