2011-12-29 4 views
1

これは私のソリューションです:ダイナミックライブラリリンク型のプログラムをポータブルにするには?

libをインストールしていない別のコンピュータにプログラムを移動し、エラーメッセージを読み、libを1つずつコピーします。

必要なすべてのライブラリが提供されるまで数回それを繰り返す必要があります。場合によっては、libがどこに見つからないのかわかりません。

これは簡単ですか?

+0

のVisual Studioからのランタイムライブラリがすでにインストール可能なパッケージ(「再配布可能なランタイム」の検索を行う)として存在します。また、[Dependency walker](http://www.dependencywalker.com/)のようなものを使用して、他のどのDLLがコピーを必要としているかを調べます。 –

+0

Linuxにはどんな解決策がありますか? – snow

+0

あなたはLinuxで解決したいですか?私はあなたもLinuxで投稿をタグ付けし、編集を承認します。 – Paul

答えて

2

Dependency Walkerを使用してください。これは、EXEとDLLをスキャンし、すべての依存モジュールの階層ツリー図を作成する無料のユーティリティです。

編集:Linuxのtry binscan or ELF Library Viewer (SOからJ-16 SDiZにより回答)。

+0

Linuxのソリューションは何ですか? – snow

+0

@snowcakeandicejelly [Here](http://stackoverflow.com/questions/6977298/dependency-walker-equivalent-for-linux)はStack Overflowに関する答えです。 – dasblinkenlight

+1

私はbinscanのページでlddとnmが十分であることがわかります – snow

-1

パッケージ管理システムを使用します。彼らはLinuxの風味に応じて異なりますが、あるマシンから別のマシンへバイナリをコピーするだけでは、ではなく、ボックスにソフトウェアをインストールする方法があります。マシンAからマシンBに/ bin/fooを取得したい場合は、マシンBに/ bin/fooパッケージが属していることを確認してからパッケージBをインストールしてください。すべての依存関係をダウンロードしてインストールするには、

 
$ aptitude install foo # debian and debian derivatives 

または

 
$ yum install foo  # rpm based distributions 
関連する問題