カレンダー
前月2021年 10月翌月
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
   
WordPress カテゴリ一覧
WordPress 最近のコメント
WordPress 最近の投稿
WordPress 月別過去ログ

2012年2月13日(月曜日)

homebrew でsubversion1.7+perlをインストール

カテゴリー: - watanabe @ 22時28分34秒
homebrewでsubversion 1.7をperlモジュール付きでインストールしようとしたらはまったでござるの巻 ↓普通にインストールを試す
% brew install subversion --perl --python
==> Downloading http://www.apache.org/dyn/closer.cgi?path=subversion/subversion-1.7.2.tar.bz2
File already downloaded in /Users/watanabe/Library/Caches/Homebrew
==> ./configure --disable-debug --prefix=/usr/local/Cellar/subversion/1.7.2 --with-ssl --with-zlib=/usr --with-sqlite=/usr/local --disable-neon-version-check --disable-mod-act
==> make
==> make install
==> make swig-py
==> make install-swig-py
==> make swig-pl
==> make install-swig-pl
if test "`/usr/bin/perl -e 'use Cwd; print Cwd::realpath(shift)' /private/tmp/homebrew-subversion-1.7.2-gqXr/subversion-1.7.2/subversion/bindings/swig/perl`" != "`/usr/bin/perl -e 'use Cwd; print Cwd::realpath(shift)' /private/tmp/homebrew-subversion-1.7.2-gqXr/subversion-1.7.2/subversion/bindings/swig/perl`"; then 
       ln -sf /private/tmp/homebrew-subversion-1.7.2-gqXr/subversion-1.7.2/subversion/bindings/swig/perl/native/*.c /private/tmp/homebrew-subversion-1.7.2-gqXr/subversion-1.7.2/subversion/bindings/swig/perl/native; 
     fi
cd /private/tmp/homebrew-subversion-1.7.2-gqXr/subversion-1.7.2/subversion/bindings/swig/perl/native; make OPTIMIZE="" OTHERLDFLAGS="-L/usr/local/Cellar/readline/6.2.2/lib -L/usr/local/Cellar/neon/0.29.6/lib "
/usr/bin/install -c -d /usr/local/Cellar/subversion/1.7.2/lib
cd subversion/bindings/swig/perl/libsvn_swig_perl ; /bin/sh /private/tmp/homebrew-subversion-1.7.2-gqXr/subversion-1.7.2/libtool --mode=install /usr/bin/install -c libsvn_swig_perl-1.la /usr/local/Cellar/subversion/1.7.2/lib/libsvn_swig_perl-1.la
libtool: install: /usr/bin/install -c .libs/libsvn_swig_perl-1.0.dylib /usr/local/Cellar/subversion/1.7.2/lib/libsvn_swig_perl-1.0.dylib
libtool: install: (cd /usr/local/Cellar/subversion/1.7.2/lib && { ln -s -f libsvn_swig_perl-1.0.dylib libsvn_swig_perl-1.dylib || { rm -f libsvn_swig_perl-1.dylib && ln -s libsvn_swig_perl-1.0.dylib libsvn_swig_perl-1.dylib; }; })
libtool: install: /usr/bin/install -c .libs/libsvn_swig_perl-1.lai /usr/local/Cellar/subversion/1.7.2/lib/libsvn_swig_perl-1.la
libtool: install: /usr/bin/install -c .libs/libsvn_swig_perl-1.a /usr/local/Cellar/subversion/1.7.2/lib/libsvn_swig_perl-1.a
libtool: install: chmod 644 /usr/local/Cellar/subversion/1.7.2/lib/libsvn_swig_perl-1.a
libtool: install: ranlib /usr/local/Cellar/subversion/1.7.2/lib/libsvn_swig_perl-1.a
cd /private/tmp/homebrew-subversion-1.7.2-gqXr/subversion-1.7.2/subversion/bindings/swig/perl/native; make install
Files found in blib/arch: installing files in blib/lib into architecture dependent library tree
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
ERROR: Can't create '/Library/Perl/5.12/darwin-thread-multi-2level/SVN'
mkdir /Library/Perl/5.12/darwin-thread-multi-2level/SVN: Permission denied at /System/Library/Perl/5.12/ExtUtils/Install.pm line 494

!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
 at -e line 1
make[1]: *** [pure_site_install] Error 13
make: *** [install-swig-pl] Error 2
==> Exit Status: 2
http://github.com/mxcl/homebrew/blob/master/Library/Formula/subversion.rb#L110
==> Environment
HOMEBREW_VERSION: 0.8.1
HEAD: bfe50e38d5ad8a8e1e1241b1982ed417ac6017db
HOMEBREW_PREFIX: /usr/local
HOMEBREW_CELLAR: /usr/local/Cellar
Hardware: quad-core 64-bit sandybridge
OS X: 10.7.3
Kernel Architecture: x86_64
Xcode: 4.2.1
GCC-4.0: N/A
GCC-4.2: N/A
LLVM: build 2336
Clang: 3.0 build 211
MacPorts or Fink? false
X11 installed? true
System Ruby: 1.8.7-249
/usr/bin/ruby => /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/bin/ruby
Which Perl:   /usr/bin/perl
Which Python: /usr/bin/python
Which Ruby:   /Users/watanabe/.rvm/rubies/ruby-1.9.2-p136/bin/ruby
==> Build Flags
CC: /usr/bin/llvm-gcc => /usr/llvm-gcc-4.2/bin/llvm-gcc-4.2
CXX: /usr/bin/llvm-g++ => /usr/llvm-gcc-4.2/bin/llvm-g++-4.2
LD: /usr/bin/llvm-gcc => /usr/llvm-gcc-4.2/bin/llvm-gcc-4.2
CFLAGS: -O3 -w -pipe -march=core2 -msse4
CXXFLAGS: -O3 -w -pipe -march=core2 -msse4
CPPFLAGS: -I/usr/local/Cellar/readline/6.2.2/include -I/usr/local/Cellar/neon/0.29.6/include
LDFLAGS: -L/usr/local/Cellar/readline/6.2.2/lib -L/usr/local/Cellar/neon/0.29.6/lib
PKG_CONFIG_PATH: /usr/local/Cellar/readline/6.2.2/lib/pkgconfig:/usr/local/Cellar/neon/0.29.6/lib/pkgconfig

Error: Failed executing: make install-swig-pl
If `brew doctor' does not help diagnose the issue, please report the bug:
    https://github.com/mxcl/homebrew/wiki/checklist-before-filing-a-new-issue
どうも Perlのモジュールをシステム領域にインストールしようとしている模様 ↓brewがダウンロードしたファイルを適当な場所に展開して中身を見る
~/Library/Caches/Homebrew/subversion-1.7.2.tar.bz2 subversion/bindings/swig/INSTALL にperlモジュールのビルド方法が載っていたのでFormulaを変更
抜粋
*  Perl

   Perl 5.8.0 is required.  You can specify the perl binary by passing
   PERL=/path/to/perl as part of the configure command in the top level
   of the Subversion source tree.  Make sure that the Perl version used
   is the same one that you configured SWIG to run against during the
   SWIG configure (see above).

   1.  Run `make swig-pl' from the top of the Subversion source tree.

   2.  Run `make check-swig-pl' from the top of the Subversion source
       tree, to test the bindings 

   3.  to install run `make install-swig-pl' from the top of the
       Subversion source tree.

   If you need to pass extra parameters to Perl build process (Makefile.PL),
   then you need to do this process somewhat different:

   1.  Run `make swig-pl-lib' from the top of the Subversion source tree.

   2.  Run `make install-swig-pl-lib'

   3.  cd subversion/bindings/swig/perl/native 

   4.  Run `perl Makefile.PL EXTRAOPTIONSHERE` 

   5.  Run `make install'

   To install the Perl bindings in a location other than the system
   Perl directory, use the above instructions with the extra option
   PREFIX=/your/prefix/here.

差分
diff --git a/Library/Formula/subversion.rb b/Library/Formula/subversion.rb
index 8bc206d..113af37 100644
--- a/Library/Formula/subversion.rb
+++ b/Library/Formula/subversion.rb
@@ -99,15 +99,16 @@ class Subversion < Formula
      if MacOS.leopard?
         perl_version = "5.8.8"
       else
-        perl_version = "5.10.0"
+        perl_version = "5.12"
       end

       inreplace "Makefile" do |s|
         s.change_make_var! "SWIG_PL_INCLUDES",
           "$(SWIG_INCLUDES) #{arches} -g -pipe -fno-common -DPERL_DARWIN -fno-strict-aliasing -I/usr/local/include -I/System/Library/Perl/#{perl_version}/darwin-thread-multi-2level/CORE"
       end
-      system "make swig-pl"
-      system "make install-swig-pl"
+      system "make swig-pl-lib"
+      system "make install-swig-pl-lib"
+      system "(cd subversion/bindings/swig/perl/native;perl Makefile.PL PREFIX=#{prefix};make install)"
     end

     if build_java?
無事インストールできますた。

2011年12月22日(木曜日)

本日のワンライナー

カテゴリー: - watanabe @ 23時51分47秒
for d in $(find . -name .svn -prune -o -type d -print); do \
test -z "$(ls -A $d|grep -v .svn)" -a -d "$d/.svn" && (echo $d;svn rm $d); \
done
svnの空ディレクトリを削除する git-svn使ってると git上で消した空になったディレクトリがsvn上に残ってしまう。 それを削除するワンライナー でも上のワンライナーは再帰的に空になるディレクトリを消せないので もうひと工夫必要

2011年11月22日(火曜日)

Scientific Linux 6.1でlvを入れる

カテゴリー: - watanabe @ 17時55分48秒
最近のredhat系でlvを入れる方法
Scientific Linux release 6.1 (Carbon)
$ sudo yum install compat-libtermcap
$ sudo rpm -ivh lv-4.51-8.1.x86_64.rpm
posted at 16:21:35
lv-4.51-8.1.x86_64.rpm はscientificlinux 5.7 のアーカイブとかから取ってくる
これとか→http://t.co/P2Po3uWS
posted at 16:25:00

2011年8月27日(土曜日)

netbeans 文字コード設定

カテゴリー: - watanabe @ 18時59分37秒
twitterに呟いた発言を手動で転記するとかやってみる
netbeans起動時にエンコード指定方法 netbeans.conf に
export JAVA_TOOL_OPTIONS='-Dfile.encoding=UTF-8' netbeans_default_optionsを上書きしない為JAVA_TOOL_OPTIONSを使う

posted at 18:27:29
netbeans起動時のオプションの指定のしかた
netbeans7 の場合 ${HOME}/.netbeans/7.0/etc/netbeans.conf を書くと起動時に読んでくれる
netbeans.conf はMac版ではただのシェルスクリプト

posted at 18:25:34

2011年1月26日(水曜日)

macにRuby/GTK2をインストールした

カテゴリー: - watanabe @ 16時06分52秒
なんかいろいろハマったのでメモ フツーの方法:
MacPorts入れてsudo port install rb-gnome
参照 私の環境はMacPortsじゃなくてfinkだったのとrubyをrvmでインストールしてたので自前でビルドすることにした
エラーの内容とかメモるの忘れたので覚えてる限りのメモ
環境とか
ruby –version
ruby 1.9.2p136 (2010-12-25 revision 30365) [x86_64-darwin10.6.0]
gem –version
1.3.7
最終的な手順
% fink -v install glib2-dev
% gem fetch glib2
% gem unpack glib2
% cd glib2-0.90.5
% ruby extconf.rb -C . --strict gtk2 --with-opt-include=/sw/include
% make
% cp ext/glib2/glib2.bundle lib
% gem install gemify
% ~/.rvm/gems/ruby-1.9.2-p136/gems/gemify-0.3/bin/gemify
% gem build glib2.gemspec
% gem install glib2-0.90.5.gem
% fink -v install pango1-xft2-ft219-dev
% fink -v install gtk+2-dev
% gem install gtk2
最初にgem install gtk2したらなんか gobject-2.0 が無いとかいうエラーで止った
調べてみるとgobject-2.0はglib2に含まれてるらしい
ライブラリなので fink でglib2-devをインストール
次 rubyのglib2のインストールでコケた
どうもlibintl.hがインクルードできないらしい
見覚えのあるファイルなので調べてみるとgettextに含まれるヘッダーで元々インストールされていた(/sw/includeに存在していた)
あれれ??? と思っていたら glib2のネイティブバイナリをビルドする時、インクルードパスの指定が漏れていた
しょうがないのでbinary gemを生成してインストールすることに
extconf.rbを実行する時 with-opt-includeを指定することでビルドは出来た
gemspecを作るのがメンドーなのでgemifyと言うgemspecを生成してくれるツールを追加
でglib2をgemでインストールした後、gem install gtk2して必要といわれたライブラリが入っているパッケージ
(pango1-xft2-ft219-dev,gtk+2-dev)をインストール
無事インストール完了

2010年10月21日(木曜日)

日本語ファイル名のダウンロード

カテゴリー: - watanabe @ 22時32分17秒
javaというかservletで日本語ファイル名をダウンロードさせる方法について調べてみた。 setCharacterEncoding() はPOSTの時に有効になる(Apache Tomcat,RFC的には正しい仕様)
String#getBytes(String) は指定したエンコードのバイト配列を返してる 日本語ファイル名をダウンロードさせるには↓こうすると概ね上手く動く
なんで"ISO-8859-1″にすると動くのかは調べてないw
(respはHttpServletResponse)
resp.setContentType("application/octet-stream");
resp.setHeader("Content-Disposition", "attachment; filename=" + new String(fname.getBytes("MS932"), "ISO-8859-1"));
動作確認をしたブラウザーはIE6,Firefox 3.6.11,opera 10.63,safari for windows 4.0.5 SJISの場合
OK -> ie,firefox,safari
NG -> opera
UTF-8の場合
OK -> ie,firefox
NG -> opera,safari
因みに↓こういうのも試してみたけど ダメだった。
resp.setContentType("application/octet-stream");
resp.setHeader("Content-Disposition", "attachment; filename*="Shift_JIS''" + URLEncoder.encode(fname, "MS932") + '"');

2010年6月30日(水曜日)

テーブル情報いろいろ

カテゴリー: - watanabe @ 20時07分03秒
PostgreSQLでインデックスとかプライマリキーとか外部キー制約とかユニーク制約の確認方法 * インデックスの確認方法 全テーブルの一覧
psql# \di
テーブルを指定して一覧
psql# \di テーブル名
* 制約の確認 table_constraintsを使う プライマリキー
psql=# select constraint_name,table_name,constraint_type from information_schema.table_constraints 
psql-# where constraint_schema = 'public' and constraint_type = 'PRIMARY KEY';
外部キー制約
psql=# select constraint_name,table_name,constraint_type from information_schema.table_constraints 
psql-# where constraint_schema = 'public' and constraint_type = 'FOREIGN KEY';

2010年4月16日(金曜日)

clamavのビルドでエラー

カテゴリー: - watanabe @ 13時23分52秒
clamavのアップデートしようとしたら怒られた。
% sudo portupgrade security/clamav
** Makefile possibly broken: security/clamav:
  "Makefile", line 112: Could not find bsd.port.options.mk
  make: fatal errors encountered -- cannot continue
** Listing the failed packages (*:skipped / !:failed)
  ! security/clamav (clamav-0.94.1)   (Makefile broken)
--->  Packages processed: 0 done, 0 ignored, 0 skipped and 1 failed
あれ?と思って 確認しても bsd.port.options.mk はある
% ls /usr/ports/Mk/bsd.port.options.mk
困った時のグーグル先生 Re: Could not find bsd.port.options.mk /usr/share/mk 確認しても bsd.port.options.mkがない。。。 んじゃコピーしよう
% sudo cp /usr/ports/Mk/bsd.port.options.mk /usr/share/mk
直った。

2010年1月19日(火曜日)

sqliteがロックされた

カテゴリー: - watanabe @ 21時57分17秒
SQL error: database is lockedが出た ぐぐったけど 対処法がわからん。
* sqliteのロックはFcntlを使っている * (たぶん)ロックをかけた人じゃないとロックを開放できない * (たぶん)ロックをかけた人以外でsqliteのファイルにアクセスするとdatabase is lockedがでる colinuxのdebianでテストしてみた。
% sudo -u www-data perl -MDBI -le '$c = DBI->connect("dbi:SQLite:dbname=SQLite.db"); $c->begin_work; $s = $c->prepare("insert into MailQueue(sendTo,subject,body) values(?, ?, ?)"); $s->execute(q{watanabe@toshiki.net}, q{テスト}, q{全角のテスト〜}); sleep 10; $c->commit;'
# Ctrl-C でストップ
%
% sqlite3 SQLite.db
SQLite version 3.5.9
Enter ".help" for instructions
sqlite> select * from MailQueue;
SQL error: database is locked #← ロックされました
sqlite> .q
ロックされるまで。 www-dataはapacheのユーザ INSERT文を走らせておいて途中でプログラムを停止させるとロック状態になる
% sudo -u www-data perl -MDBI -le '$c = DBI->connect("dbi:SQLite:dbname=SQLite.db"); $c->begin_work; $c->rollback;'
#↑とりあえずロールバックしてみる
% sqlite3 SQLite.db
SQLite version 3.5.9
Enter ".help" for instructions
sqlite> select * from MailQueue;
SQL error: database is locked #← ダメ
sqlite> .q
単純にトランザンクションを張ってロールバックではダメだった
% sudo -u www-data perl -MDBI -le '$c = DBI->connect("dbi:SQLite:dbname=SQLite.db"); $c->begin_work; $s = $c->prepare("insert into MailQueue(sendTo,subject,body) values(?, ?, ?)"); $s->execute(q{watanabe@toshiki.net}, q{テスト}, q{全角のテスト〜}); $c->rollback;'
#↑INSERTを走らせてからロールバックしてみる
% sqlite3 SQLite.db
SQLite version 3.5.9
Enter ".help" for instructions
sqlite> select * from MailQueue;
#↑ おk
sqlite> .q
%
INSERT文を走らせておいてロールバックするとロックが開放される。 ってことは ロック中のオブジェクトをロック→アンロックしないとdatabase is lockedは直らない???

2010年1月6日(水曜日)

puttyで圧縮が有効にならない

カテゴリー: - watanabe @ 19時42分52秒
最近のsshd(openssh)のデフォルト設定では↓こうなっている sshd_config
Compression delayed
このdelayedがなにかというと SSHD_CONFIG (5)によると
Compression (圧縮)
    圧縮を許可するかどうか、あるいは遅延圧縮 (そのユーザが認証されてから初めて圧縮を許可する) をおこなうかどうかを指定します。この引数がとりうる値は"yes ,""delayed"または"no"です。デフォルトでは"delayed (ユーザが認証されてから圧縮を許可する)"になっています。
PuTTY wish zlib-openssh をみるとどうも対応してないらしい。 実験してみた * Compression delayed
>plink -v -load scp watanabe@remote_host pwd
Looking up host "remote_host"
Connecting to remote_host port 22
Server version: SSH-2.0-OpenSSH_5.1p1 FreeBSD-20080901
We claim version: SSH-2.0-PuTTY_Release_0.60_JP_Y_2007_05_10
Using SSH protocol version 2
Doing Diffie-Hellman group exchange
Doing Diffie-Hellman key exchange with hash SHA-256
Host key fingerprint is:
ssh-dss 1024 e8:9f:05:86:ca:e6:09:ae:b8:b7:7a:99:fb:1e:f0:90
Initialised Arcfour-256 client->server encryption
Initialised HMAC-SHA1 client->server MAC algorithm
Initialised Arcfour-256 server->client encryption
Initialised HMAC-SHA1 server->client MAC algorithm
Pageant is running. Requesting keys.
Pageant has 1 SSH-2 keys
Using username "watanabe".
Trying Pageant key #0
Authenticating with public key "dsa-key-20030802" from agent
Sending Pageant's response
Access granted
Opened channel for session
Started a shell/command
/home/watanabe
Server sent command exit status 0
Disconnected: All channels closed
* Compression yes
>plink -v -load scp watanabe@remote_host pwd
Looking up host "remote_host"
Connecting to remote_host port 22
Server version: SSH-2.0-OpenSSH_5.1p1 FreeBSD-20080901
We claim version: SSH-2.0-PuTTY_Release_0.60_JP_Y_2007_05_10
Using SSH protocol version 2
Doing Diffie-Hellman group exchange
Doing Diffie-Hellman key exchange with hash SHA-256
Host key fingerprint is:
ssh-dss 1024 e8:9f:05:86:ca:e6:09:ae:b8:b7:7a:99:fb:1e:f0:90
Initialised Arcfour-256 client->server encryption
Initialised HMAC-SHA1 client->server MAC algorithm
Initialised zlib (RFC1950) compression
Initialised Arcfour-256 server->client encryption
Initialised HMAC-SHA1 server->client MAC algorithm
Initialised zlib (RFC1950) decompression
Pageant is running. Requesting keys.
Pageant has 1 SSH-2 keys
Using username "watanabe".
Trying Pageant key #0
Authenticating with public key "dsa-key-20030802" from agent
Sending Pageant's response
Access granted
Opened channel for session
Started a shell/command
/home/watanabe
Server sent command exit status 0
Disconnected: All channels closed

34 queries. 0.051 sec.
Powered by WordPress Module based on WordPress ME & WordPress