2016-08-28 9 views
4

私はでbuck testを使ってテストをビルドしようとしていますが、GitHubを使ってC++のターゲットをトラビスのCIサーバに置いていますが、2つのことがわかりません。トラビスサーバでバックを使ってビルドする

  1. 私はbuckをTravisサーバーにインストールする必要があります。 Ubuntuの代わりにOSXサーバを使用するにはどうしたらいいですか? Travisのドキュメンテーションでは、OS Xサーバーも提供しています。このようにすれば、私は先に進み、brew tap facebook/fb && brew install buckをやることができます。
  2. buckでは、リポジトリの.buckconfigファイルで使用するコンパイラを指定する必要があります。ただし、これはコンパイラが使用する絶対パスのみを受け入れます。 Travis CIの設定は、コンパイラへのパスを含む環境変数のみを提供するようです。ただし、環境変数は.buckconfigでは使用できません。 コンパイラ(C++ 14を完全にサポートするコンパイラ)をインストールし、Travisサーバーにインストールされているパスを取得する方法はありますか?

EDIT:私はまだ疑問に答えるために(バックとTravisCI)を言及したすべてのものとの経験を持っていない人のための、簡単になるように、私は質問を強調しました。

答えて

5

UbuntuではなくOSXサーバーを使用するにはどうすればよいですか?

これはos directiveの対象である必要があります。

値はlinux(デフォルト)またはosxである必要があります。または既知のエイリアスのいずれかOSX

ためのOSXのためのLinux用
ubuntumac又は macos

は(皮肉なことに、buck itself has its own tavis.yml

環境変数しかし.buckconfigに使用することができません。

次のいずれかの可能性:

  • は、環境varibleから実際のいずれかによって固定パスを交換する.buckconfigに行わSEDを使用してtravisCIジョブを開始することを検討してください。
  • または(特定の環境変数の置換からと利益)すべてcxx_...()あなたが欲しいコマンドを指定できるgenrule()によってルールの答えのための
+0

感謝を交換してください! 'genrule'は私のためにこれについて行く正しい方法のように感じません。 'buckconfig'ファイルの' sed'を実行するのがこれを行う適切な方法でしょうか?また、新しいC++ 14準拠のコンパイラがTravisサーバー上のどこに配置されているかを見つける方法はありますか?今は 'g ++'や 'clang'が' -std = C++ 14'フラグを認識しないので、 – Curious

+0

@Curious私はsedのアプローチで行くでしょう。ただし、C++ 14に関しては、まずインストールする必要があります。http://stackoverflow.com/a/35113462/6309 – VonC

関連する問題