• 締切済み

/usr/loca/binに実行ファイルをコピーし

Linux(cygwin)の環境で /usr/srcでビルドして作った実行ファイルを パスを通した/usr/local/binにコピー(cp -a)して実行するとなぜか出力は何も出ず終了し、 コピー元の/usr/src以下の実行ファイルをフルパスを指定して実行した場合のみ 正しく実行されますがこれはなぜでしょう? 具体的には /usr/srcでビルドしたbinutilsのas-newなどを #cp -a /usr/src/binutils/as-new /usr/local/bin/as-copy したときに test.sがあるホームディレクトリで #as-copy test.s #→何も表示されず実行終了。 #/usr/src/binutils/as-new test.s →a.outが出力されます。(正常に実行)

みんなの回答

noname#259146
noname#259146
回答No.1

ライブラリー等の必要なファイルが正しく配置されいないのが原因だと思います。 ビルドし場合は通常 make install でインストールをするのが正しいやり方です。 #cd /usr/src # make install インストール先はMakefileで設定しています。 >#cp -a /usr/src/binutils/as-new /usr/local/bin/as-copy ファイル名を変更して使いたい場合は、今後のことも考えて #ln -s as-new as-copy とシンボリック・リンクを作ると良いです。

関連するQ&A