2017-10-17 9 views
1

私は、アプリケーションファイル上の機能を変更するためにマクロを使用するcmake + makeを使ってプロジェクトをビルドしました。忍者ビルド中のSudo

私はmakeからninjaに切り替えようとしていますが、sudoがsetcapを実行するためにrootのパスワードを要求する必要がある場合、ninjaは要求を表示せず、それを挿入することもできません。

何かできることはありますか?

PS。他の人がmakeを使用しているので、setcapの実行をビルド時間から移動することはオプションではありません。 sudoを実行

答えて

0

ターゲットは1. の深さに事前に定義されたプールの名前コンソールが存在する

コンソール・プールにする必要があり、プール内の任意のタスクを特殊な性質を持っています直接入力 を標準入力に出力し、Ninjaの出力とエラーストリーム は通常、ユーザーのコンソール(したがって名前) に接続されていますが、リダイレクトできます。これは、対話型のタスクや、コンソール上で状態の更新を行う長時間実行するタスク(テストスイートとして など)を実行する場合に便利です。

Docs

+0

それは私が探していたものだった、ありがとうございましたが、私は私のadd_custom_command USES_TERMINAL(cmakeのバージョン3.7.2)に添加したとき、悲しいことは何も変わっていません。 – PeppeDx

+0

生成されたNinja.buildファイルで実際に必要に応じて変換されるかどうかを確認しましたか? – renemilk

+0

あなたは正しいです。私は手動でプール=コンソールをninjaファイルのリンクビルドの中に追加していました。だから、CMakeジェネレータには問題があるようです。 – PeppeDx

関連する問題