問題タブ [premake]
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.
static - 外部静的ライブラリを含めるための Premake ディレクティブ
外部で構築された静的ライブラリがあります (プリメイクの外部)。それをmakeファイルに含めるように指示するために、どのようなライブラリディレクティブを使用しますか。私は OSX でビルドしていますが、コンパイル コマンドの ".o" オブジェクト ファイルに静的ライブラリを含める必要があるようです。今、私はこれをメイクファイルに手動でハッキングしていますが、それは醜いです。これを何週間も試みましたが、解決策が見つかりませんでした。私は数ヶ月後に戻ってきて、もう一度やり直すことにしました。
何か案は?たぶん、痛いほど明白な何かがあります。
thx エリス
premake - premake での構成タイプによる変数の特殊化
Visual Studio 2013 で premake5 を使用しており、サードパーティ ライブラリをプロジェクトにリンクしようとしています。このライブラリのデバッグ バージョンには、通常どおり "d" サフィックスが付きます。サンプルスクリプトです。
ただし、このスクリプトは両方の構成 (デバッグとリリース) で icuin.lib と icuuc.lib をリンクします。構成「リリース」ブロックのd = ""割り当てを削除すると、両方の構成がicuind.libとicuucd.libライブラリをリンクします。%{d} プレースホルダーの解決で、premake が変数の最新の定義を使用しているかのように見えます。スクリプトを変更して正しい動作を得るにはどうすればよいですか? ありがとう!
premake - 指定されたリンクに基づいて、プロジェクト スコープ内のプリメイク プロジェクトをフェッチする
私の現在のスコープがプロジェクトであることを認める
premake-devを使用しています
リンク関数で参照されているプロジェクトのリストにアクセスするにはどうすればよいですか? 目的は、生成されたライブラリの一部を特定のフォルダーにコピーするビルド後のコマンドを実行することです。
プロジェクトの戻り値を保存する必要がありますか?
それに基づいて、リンクにリストされているプロジェクトをリストするにはどうすればよいですか?
アップデート
小さなコードを使用して、リンクされたプロジェクトを正常に一覧表示しました。
premake がこのコード部分 (リンク宣言の直後のプロジェクト内にあります) に到達したとき、問題は異なります。構成はまだセットアップされていません。
premake.project.eachconfig(prj)エラーがスローされるため、: は使用できません。
だから私はAPIを使用して新しいアクションを登録することを考えています.これが最良の選択であるかどうかはわかりません.
premake5 エクスポート --target=...
premake - マルチプラットフォームのプリメイク スクリプト
私は、Inferno と LuaJIT を組み合わせてインタラクティブな分散開発環境を作成するホスト型ハイブリッド OS である Node9 の作成者です。ここでプロジェクトを参照してください: https://github.com/jvburnes/node9
基本的な 4.x プリメイク スクリプトを作成して、すべての依存関係と OSX のメイン ソース コードをコンパイルしましたが、現在、人々は Linux、BSD、および Windows のビルド構成を求めています。これを行うためのコードがあり、これらの OS 上で Node9 をビルドして実行するための premake 構成を作成したいと考えています。ライブラリを設定し、検索パス、コンパイラ名、およびプラットフォームごとの定義を含める必要があります。
- 誰かが良いマルチプラットフォームのプリメイクスクリプトを教えてくれますか?
- 「premake gmake」を使用して何らかの方法でネイティブ プラットフォームを認識しますか?それともコマンド ラインにターゲット プラットフォームを明示的に配置し、premake の構成セクションとプラットフォーム セクションでそのプラットフォームを参照する必要がありますか?
- プリメイク 4.x はレガシーであり、プリメイク 5.x が今後のソリューションであると聞きました。これらすべてのプラットフォーム用にビルドするのに十分な安定性と可用性がありますか?
たくさんの質問があることは承知していますが、私はこれを正しく行いたいと思っています。
ありがとう。
premake - Premake5 prebuildcommands ディレクトリ
premake4 の設定を premake5 に変換しています。prebuildcommands が含まれている premake5.lua があるディレクトリではなく、ルート作業ディレクトリからコマンドが実行されるため、prebuildcommands が失敗します。premake4 は、prebuildcommands 呼び出しを含むサブディレクトリでそれらを実行しました。
これは新しい意図された動作ですか? もしそうなら、私が見つけることができるどこにも文書化されていません。バグでない限り、パスを修正してもかまいません。
linker - premakeでlibdirsの優先度を変更するには?
premake4.lua ファイルに次の行があります
次に、生成された Makefile には以下が含まれます。
カスタム ライブラリ ディレクトリを優先することはできますか? つまり、次の行が必要です。
私は premake4 を使用していますが、必要に応じて premake5 に切り替えることができます。