2016-04-12 8 views
1

私の質問は短く簡単です。私はソースディレクトリmySrcDirを持っています。そこには私のMakefileもあり、ビルドディレクトリmyBuildDirにコンパイルしたいと思っています。ビルドディレクトリのsrcディレクトリからの作成方法は?

にはどうすれば/another/path/myBuildDirに私/some/path/mySrcDirの内容をmakeのですか?

P.S:OSのUbuntu 14.04

+0

を**まったく**あなたのメイクに。デフォルトの組み込みmakeルールは、それを直接行うことをサポートしていません。 –

+0

あなたの質問は非常に幅広いです。どのようにしてこの問題の部分を見せてもらえますか(例えば、 'mySrcDir'のターゲットを構築するなど)? – Beta

+0

1)myBuildDirを作成します。2)../mySrcDir/configureを呼び出します。3)makeを呼び出します。4)sudo make installを呼び出します。ここまでは順調ですね。今私は変更されたMakefileでmySrcDir(mySrcDir/mySubSrcDir)の下のサブディレクトリを再コンパイルしたいと思う。私はmake&sudoをmySubSrcDirにインストールすることができますが、これは私が考えるエレガントな方法ではありません。だからこそ私はmyBuildDirでコンパイルしてからインストールしたいのです。 – OnurA

答えて

1

1)ビルドディレクトリのコールこの中で:

make -f /some/path/mySrcDir/your-makefile 

-fオプションを使用すると、 '作る' しようとしているファイルを指定することです。 Makefileには、GNUのautotoolsのによって生成された場合

2)あなたはこれを試すことができます。

./configure --prefix=/another/path/myBuildDir 

と異なり、その後make

+0

私は私のビルドディレクトリに私のソースディレクトリ全体を設定しました。今私はカスタムオプションでサブディレクトリを再コンパイルしたいと思う。私はどこかで "サブビルド"ディレクトリを作成し、ソースフォルダ内のサブディレクトリに対して 'make'を呼び出すことができると思いました。 – OnurA

+0

これを試してみてください: 'make -C/another/path/myBuildDir' –

+0

メイクファイルがあるsrcディレクトリ内でmakeコマンドを実行すると、 make:'/another/path/myBuildDir'ディレクトリに入ります。 make:***ターゲットが指定されておらず、メークファイルが見つかりません。やめる。 make:ディレクトリ '/ another/path/myBuildDir'を残す – OnurA