問題タブ [cross-build]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
scala - 複数の Scala バージョンを持つ SBT サブプロジェクトを作成するには?
Scala 2.10 を使用するプロジェクトと Scala 2.11 を使用するプロジェクトがあります。それらは、両方でコンパイルできる共通のプロジェクトに依存しています。
その後
baz
両方のプロジェクトで使用できるようにするにはどうすればよいですか?
scala - crossScalaVersion が scalaVersion ではないのはなぜですか?
build.sbt
project/build.properties
それで
のようcrossScalaVersions
ですList(2.11.4)
。
SBT のソース コードを見てください。私もそう思います。
crossScalaVersions
に対応しないのはなぜscalaVersion
ですか?
scala - 集約と依存関係を含む SBT Scala クロス バージョン
crossScalaVersions
サブプロジェクトでの動作に苦労しています。
2.10 (foo) でコンパイルするプロジェクトと 2.11 (bar) でコンパイルするプロジェクトがあります。クロス コンパイルされたプロジェクトを共有します (共通)。
プロジェクト foo および bar をコンパイルするにはどうすればよいですか?
build.sbt
project/build.properties
foo/src/main/scala/Foo.scala
bar/src/main/scala/Bar.scala
共通/src/main/scala/Common.scala
試行 1
試行 2
試行 3
試行 4
試行 5
ベースディレクトリは同じですが、scala バージョンが異なるプロジェクトを定義common_2_10
してみました。common_2_11
ターゲットが Scala バージョンによって名前空間化されていることを読んだことを思い出しましたが、SBT は競合があると言っています。
私が仕事を得た唯一のことは、手動でバージョンを指定することです:
しかし、これは多くのコマンドであり、並列処理を使用することはできず、(1) プロジェクトの集約と (2) クロス ビルドの全体的な使用を不要にします。
の意図について基本的な何かが欠けていcrossScalaVersions
ますか? それとも、SBT の残りの部分とうまく連携させ、異種プロジェクトをコンパイルする方法はありますか?
apache - アームのapache2クロスビルドに失敗しました
Apache2 2.4.12 のクロスビルドでは、コンパイル中に次のエラーが発生します。
ファイル make_exports.awk からコンパイル時に httpd-2.4.12/server/exports.c を生成する汚いハックがあるようです
この make_exports.awk ファイルを調整して、arm のクロスビルドを機能させるにはどうすればよいですか?
c++ - 複数のクロスビルドを同時に処理するメタビルド ツール
Linux、Windows、および Mac OS X (32 ビットと 64 ビットの両方) で実行される中規模の C++ プロジェクトがあります。一部のプラットフォームでは、複数のバリアントがあります (Linux の Gtk-2 および Gtk-3 バリアントなど)。主に趣味のプログラマであるため、各プラットフォーム専用のビルド マシン用のリソースはありません。そのため、すべてのビルドが Linux ボックスで行われるように、それぞれにクロスコンパイラをインストールしました。
1 つのコマンドで 10 種類ほどのバリアントすべてをビルドできるようにしたいと考えています。今のところ、makefile を作成する簡単で汚い Python スクリプトを使用してこれを実現しています (実際、最近 ninja に切り替えましたが、あまり関連性がないと思います)。バリアントごとに Windows インストーラー、Debian パッケージなどを作成します。しかし、プロジェクトが大きくなるにつれてスクリプトがうまくスケーリングされないため、よりクリーンなソリューションが必要です。
私の質問は次のとおりです。複数のツールキット (クロスコンパイラ) とカスタム コマンド (インストーラーなどを作成するため) を処理できる単一の Makefile (または忍者ビルド ファイルのような類似のもの) を作成できるメタビルド ツールは何ですか?
CMake (およびその他のいくつか) を試しましたが、複数のツールキットを操作する方法がわかりません。ほとんどのツールは、構成ごとに 1 つの Makefile を作成するようです。
編集:今、この答えはそれが不可能であると主張しています。理由がわかりません。15 分間の Python スクリプトでそれを実行できるのであれば、それを実行できるツールが必要だと思います。
arm - Linux64 で Windows64 用の Qemu (ARM エミュレーション) をビルドする
QEmu で ARM VExpress のエミュレーションを実行しようとしています。私のエンドプラットフォームはWindows64です。私のビルドシステムは Linux64 を実行しています。QEmu バージョン 2.3.0 と x86_64-w64-mingw32 ツールチェーンを使用しています。
ビルド中にかなり多くの問題に直面しましたが、いくつかは自力で解決しました。そのうちの 1 つは、インストール時のツール チェーンに glib ライブラリが含まれておらず、インターネットで検索して入手したものをインポートする必要があったことです。そのため、いくつかの pkg-config ファイルを追加し、この一連の glib を lib フォルダーにコピーした後、すべてをコンパイルし始めました。
今、私は新しい問題に直面しています。ツールチェーンに librt がないときに、librt をチェックしています。librt のバージョンを取得し、それをツールチェーンの lib フォルダーに追加すると、コンパイルで以下のエラーがスローされます。どのステップでも助けていただければ幸いです。
編集 1: LIBS および LIBS_QGA の先頭にある config-host.mak ファイルに -lole32 を追加して、上記の問題を修正しました。
しかし、現在、以下の問題に直面しています
これから進んだ。
gettext パッケージから libintl をダウンロードしてコンパイルし、ツールチェーンに手動でインストールしました。libiconv と libffi についても同じことを行いました。
現在、次のエラーが表示されます。
これを解決するために glib ライブラリをコンパイルしようとしています。助けてくれてありがとう。
macos - OCaml のデフォルトのインクルード ディレクトリとデフォルトの ocamlrun の場所
Mac (ホスト) でソースから OCaml をコンパイルしましたが、問題はありません。また、いくつかのターゲット (ホストとは異なる) に対して Mac で OCaml をクロスコンパイルしましたが、この場合、次の問題があります。
1)ホスト上ocamlrun
とocamlyacc
同様に、(ターゲット上で)直接使用でき、「純粋な」バイナリであるため、問題なく使用できます。$INSTALL/bin
のように(はターゲット上の$INSTALL
のインストール ディレクトリ)から他のバイナリを使用したい場合、 のパスが間違っているというエラーが表示されます。実際、16 進エディタでバイナリを開くと、ターゲット バージョンへのパスではなく、クロスビルドを実行したホスト (私の Mac)へのパスであるa で始まることがわかります。 ..もちろん、このパスをターゲット上のパスに置き換えれば、もう何もする必要はありません。すべて問題ありません。、およびからの他のすべてのバイナリについても同じocaml
ocamlopt
ocamlrun
ocamlopt
#!/not/target/but/host/path/to/ocamlrun
ocamlrun
configure
ocamlrun ocamlopt
$INSTALL/bin
ocamlrun
ocamlyacc
脇に置く。(上で書いたように、最後の2つは直接機能します。)ターゲット上の正しいパスがバイナリの先頭に直接表示されるようにconfigure
(ホスト上で)ocaml
クロスビルドする方法はありますか?ocamlrun
$INSTALL/bin
2)フラグで$INSTALL/lib/ocaml
ディレクトリを指定しないとコードをコンパイルできません。-I
この標準ライブラリのパスを強制する方法はありconfigure
ますか? または、それを処理する「内部」環境変数で、ライブラリをocaml
確実に検索できるように編集できますか?(私は環境変数の解決策について非常に悲観的です。ホスト上では(で) 2つの環境変数しかなく、誰もこの種のものを扱っていないようです。そのため、なぜそれが異なる/より良いものになるのかわかりませんターゲットに...)ocaml
$INSTALL/lib/ocaml
printenv
ocaml
libz - arm-linux-ar: 無効なオプション -- z
libzをクロスビルドしたいのですが、エラーが発生し、Googleで検索しても答えが見つかりません。助けてください。また、ウェブサイトを見つけましたが、これはよくわかりません。 https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=444727
コード: