アプリ版:「スタンプのみでお礼する」機能のリリースについて

Vine Linux 3.2 を使用しています。
作業は一般ユーザーアカウントで行っています。

以下のコマンドでビルドを行うと、しばらく作業した後(5,6分後)に、エラーが出ます。

$ rpmbuild --define='with_pkcs11=""' -tb openvpn-2.1.4.tar.gz

( ↑openvpnのバージョン2.1.4をビルドしています。vine 3.2用の pkcs11-helper-devel というパッケージが見つからないので、define を使って回避しています。)

エラー内容は、
「/bash/rpm/RPMS/i386 を作成できません : そのようなファイルやディレクトリはありません」

原因を調べているのですが、よくわかりません。
「/bash」というディレクトリ自体が存在していないのですが、なぜ「/bash」というディレクトリを見にいってしまうのかわかりません。/home/usr/.rpmmacros を見ると、
%_topdir ${HOME}/rpm
と指定されています。(vine linux をインストールした時以来、このファイルは触っていません)

ビルドコマンドによって以下のディレクトリ、ファイルも作成されていました。
 /home/usr/rpm/BUILD/openvpn-2.1.4 ディレクトリとその中のファイル
 /home/usr/rpm/SPECS ディレクトリ内の openvpn.spec
 /var/temp/openvpn-usr ディレクトリとその中のファイル

原因がわからないため、これらのファイルを削除して、
一つ前のバージョン openvpn-2.1.3 で同じようにビルドを試したところ、
全く同じ箇所で同じエラーが出て止まってしまいます。

(参考にしたサイト1:http://tsuttayo.jpn.org/ssh/openvpn/
(参考にしたサイト2:http://dar66dar.blog74.fc2.com/

何が原因なのでしょうか。
どなたかお詳しい方、アドバイス頂けないでしょうか


以下、エラー直前の出力内容。

--------------------------------------
(~前略~)
Provides を探しています: (/usr/lib/rpm/find-provides を使用)...
Provides: openvpn-auth-pam.so openvpn-down-root.so
PreReq: /bin/sh /bin/sh rpmlib(PayloadFilesHavePrefix) <= 4.0-1 rpmlib(CompressedFileNames) <= 3.0.4-1
Requires(interp): /bin/sh /bin/sh
Requires(rpmlib): rpmlib(PayloadFilesHavePrefix) <= 4.0-1 rpmlib(CompressedFileNames) <= 3.0.4-1
Requires(post): /bin/sh
Requires(preun): /bin/sh
Requires: openssl >= 0.9.6 lzo >= 1.07 pam
エラー: /bash/rpm/RPMS/i386 を作成出来ません: そのようなファイルやディレクトリはありません
エラー: /bash/rpm/RPMS/i386/openvpn-2.1.4-1.i386.rpm のオープンに失敗: そのようなファイルやディレクトリはありません


RPM ビルドエラー:
/bash/rpm/RPMS/i386 を作成出来ません: そのようなファイルやディレクトリはありません
/bash/rpm/RPMS/i386/openvpn-2.1.4-1.i386.rpm のオープンに失敗: そのようなファイルやディレクトリはありません
[usr@host SOURCES]$ ■

A 回答 (3件)

specファイルでビルドできたと書いたのは、pkcs11のことです。

舌足らずですみません。
こちらはCentOS5ですので、Vineでもできるかどうかは?ですが、試してみてください。

この回答への補足

お礼の続きとなります、失礼致します。

pkcs11 のインストールについて、お陰様で成功致しました。教えて頂いた URL から tar ball をダウンロードした後、私の環境では
$ rpmbuild -tb pkcs11-helper-1.07.tar.bz2
と tar ball から直接ビルドすることができました。これによって、pkcs11-helper と pkcs11-helper-devel の二つの RPM パッケージが作成され、この順にビルド、インストールし、依存関係を解消させることができました。
誠に有難うございました。
ちなみに、tar ball を展開し、SPEC ファイルを取り出してインストールする方法については、私の勘違いのためか、うまくいきませんでした。
($ rpmbuild -bp /home/shand/rpm/SPECS/pkcs11-helper.spec
としてみたところ、ビルドがあっという間に終わってしまい、rpm ファイルは作成されませんでした。)

また、pkcs11-helper のビルドで作成された RPM パッケージは、正規の場所 /home/usr/rpm/RPMS/i386 に作成されていました。

OpenVPN の方は、再度ビルドしなおし、完全な形でインストールしなおすことができました。
本当に有難うございました。

また、別の掲示板で同様の質問をし、解決の報告をして参りましたことを付け加えさせて頂きます。アドバイスして下さった方々への感謝とともに、ご迷惑おかけしてしまったことを深くお詫び申し上げます。

補足日時:2010/11/30 05:32
    • good
    • 0
この回答へのお礼

今朝入力したと思ってら反映されておらず失礼しました。

貴重な情報ありがとうございます。
お陰様で昨夜、OpenVPN の pkcs11 なしインストールが成功しました。

pkcs11 を spec ファイルからビルドを試してみます。

また、pkcs11 のインストール時に必要な依存パッケージが多い件については、私の知識では回避できるのかどうかわかりませんが、試してみたいと思います。ビルド時に /bash/rpm/RPMS/i386 を見にいってしまうかどうかを調べるのにも、丁度良いテストですね。

ありがとうございました。

お礼日時:2010/11/29 22:19

>/home/usr/.rpmmacros を見ると、


>%_topdir ${HOME}/rpm

「_topdirを参照しようとした時」に環境変数HOMEを見に行くように見えますが…。
固定で設定しておいた方が安全かと。
    • good
    • 0
この回答へのお礼

ありがとうございます。
.rpmmacros の ${HOME} を疑うことは全く頭にありませんでした。
こんなところにも調べるべき点があるんだな、と感心させられました。
慌てて環境変数を調べましたが、一応 /home/usr と正しく入っておりました。
固定で設定した方が安全ということで、大変勉強になりました。
ありがとうございました。

お礼日時:2010/11/29 02:37

何らかの理由でパッケージの作成場所がこんがらがっているようですね。


新規にユーザーを作成してやってみてはどうですか?
それでもだめなら、強引ですが、/bash/rpm/RPMS/i386 ディレクトリを作成してからやればパッケージはできそうです。

なお、pkcs11-helper は、http://www.opensc-project.org/opensc

にありますね。
rpmbuild -tb ではだめでしたが、tar ball に含まれる spec ファイルを使用したら、問題なくビルドできました。
    • good
    • 0
この回答へのお礼

ありがとうございます!

強引な方法ですが、/bash/rpm/RPMS/i386 ディレクトリを作成して、rpm パッケージを作成することができました。

パッケージの作成場所が /bash/rpm/RPMS/i386 になってしまったのでしょうか。
以前、他のパッケージをソースからビルドした時はうまくいったのですが、環境が変わったのでしょうか。
今後も続くようでしたら、アカウントの作り直しも考えようと思います。
何にしても、うまくいって良かったです。ありがとうございました。

ちなみに、tar ball に含まれる spec ファイルを使って、

$ rpmbuild --define='with_pkcs11=""' -bp /home/shand/rpm/SPECS/openvpn.spec

と実行したところ、エラーは出ませんでしたが、ビルドがすぐに終わってしまって、
rpm 作成までいきませんでした。

もしよろしければ、astronaut さんは、どのようにして spec ファイルからビルドできたのか
後学のため、お教えいただけませんでしょうか。

pkcs11-helper は大変なパッケージですね・・・
pkcs11-helper-devel を rpm -ivh でインストールしようとしたら
少なくとも下図のような依存関係があることがわかり、
途中で保留とさせていただきました。

教えてもらったサイトを見たところ、pkcs11-helper はありましたが、
他のパッケージがなかったようです。

pkcs11-helper-devel
    |
    +-- pkcs11-helper (…ここまで rpm -ivh を試しました)
    |      |
    |      +---libcrypto.so.6
    |      |
    |      +---libgnutls.so.13
    |      |
    |      +---libgnutls.so.13(GNUTLS_1_3)
    |      |
    |      +---libnssutil3.so
    |
    +--libpkcs11-helper.so.1

できれば pkcs11-helper も入れた完全な形で openvpn を導入したいものです。

お礼日時:2010/11/29 02:32

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!