« 2013年8月 | トップページ | 2013年12月 »

2013年9月24日 (火)

Wheezyにia32-libを入れる

0. イントロダクション

 Androidの開発機をDebian GNU/Linux amd64に変更したんだけど、amd64なのでちょいとハマったことについてメモ。

1. Androidとia32-libs

 Android SDKをセットアップしていると、adbにパスを通しているにも関わらず「そんなファイルはない」と怒られることしきりなんだが、その原因がこれ。
 早い話、Wheezyのベースシステムにx86互換レイヤーが含まれていないから、という理由らしい。

 で、入れればいいでしょ?というわけになるんだが、ここでハマったのでメモっておく。

2. 最初の一歩

 ダイレクトに

# apt-get install ia32-libs

とかやっても「依存関係が壊れている」とか言われてNGなので、i386をアーキテクチャに追加する。

# dpkg --add-architecture i386
# apt-get update
# apt-get install ia32-libs

 とここで、libtinfo5:i386のインストールでつまづいた。コンソールいわく、「依存関係の解決法がわからなけりゃ、apt-get -f installをやるしかないかもね」だそうだが....。

3. 非常手段に打って出る

 しかたないので強制インストール。

# apt-get -f install libtinfo5:i386

 ここで再度apt-get install ia32-libsを実行してやることで、依存関係の解決をみた。あんまりスマートな方法ではなかったかもしれないが....。

 とはいえ、これで「adbがない」とか怒られずに済むので、AVDも自由に作成できるようになる。

 あと、確認はしていないけど、NDKを使うときもこれが引っかかるんじゃないか、とか疑っているので、NDKを使うことになる時はこれをやっとかないといけないかもしれない。

 あとは、Yahoo!知恵袋の「Android仮想デバイス(AVD)の高速化」ノートを参考に、qemu-kvmとlibvirt-binパッケージをapt-getで入れてAtom System ImageでAVDを作れば、エミュレータもキビキビ動いて快適になるはずだ。

 というところで寝る。

| | コメント (0) | トラックバック (0)

2013年9月14日 (土)

リモートGitリポジトリにHTTPSでアクセスする

 俺得アプリ開発に使っているVCSを、SubversionからGitに変えてかなり経つが、今回はGitでHTTPSアクセスするときにハマった時の、自分用メモだったりする(汗)。

 今の開発環境は、以下のとおり。

  • OS : Debian GNU/Linux 7.1 amd64
  • JDK : Oracle社のJDK7u40 for Linux x64
  • VCS : git 1.7.10.4
  • IDE : Eclipse 4.3 for Java Developers Linux x64
  • ADT : 22.0.5を、Google Plugin for Eclipseとしてセットアップ

 とある事情によりプライベートリポジトリにしている開発リポジトリがあるんだけど、そいつにgit pushかけようとしたら、こんな状況に。

error: Problem with the SSL CA cert (path? access rights?) while accessing https://path/to/repo.git/info/refs
fatal: HTTP request failed

 はて?「パスかアクセス権に問題」とな? なんだろうと思っていろいろググってみた。

 よく似た事象で言えば、GitHubでのHTTPSアクセスに関する部分か。GitHub(実はこのプライベートリポジトリにはGitHubを使っていないんだけど)の公式には、「おたくんところのCAが古いんじゃない?」という解説があったんだけど、そんなこといわれてもなぁ。

 念のためSSL周りのパッケージを調べてみたけど、当然のことながら最新。

 まぁ、自分でCAたてたりApacheにSSL仕込んだりするわけではないから、巷に出回っているSSLの設定とやらでは対処できそうにない。それにしても、クライアント証明書を独自に作らなきゃいけない、ってとれるんだけど、同じリポジトリにWindowsでアクセスした時には、そんなことを強いられた記憶はない。

 じゃあどうするんだい? ってことになるんだが、GitリポジトリにHTTPSでアクセスするときの作業ログを残している方がおられた。
 この方の場合、「オレオレ証明書のGitリポジトリにアクセスする場合」として「SSL証明書の検証をバイパスする」という方法をとっていた。

 ということで、.gitconfigに

git config http.sslVerify false

を追加してみると、すんなり通った。
 git configにあえて--globalをつけていないのは、「デフォルトはSSL証明書の検証をするけど、このプロジェクトではやらない」という方針にしたほうがいいように思ったから。

 まぁ、こいつのトラブルシュートで半日費やすことになったし、根本的な解決になっていないような気もするが、問題自体は解決できたし、とりあえずよしとするか。

| | コメント (0) | トラックバック (0)

« 2013年8月 | トップページ | 2013年12月 »