最新 追記

これ日記なん?


2008-02-02(Sat) [長年日記] この日を編集

_ [Ruby]VS2008Expressで1.8.6をビルド(失敗)

VS2008ExpressのVC++をインストールしたので、Rubyのビルドをやってみたのだけど、失敗してしまった。きっとなにか初歩的なことをやってないかなにかなんだろうけど、全然わけわかめなのでここにさらしておきます。ぐぐった感じでは結構あっさり成功してるように思えたんですけど...

材料

_ 手順

  • sed, bison, byaccはPATHに通します。
  • byaccは実行ファイル名がyacc.exeだったのでbyacc.exeにrenameしました。
  • コマンドライン
"%VS90COMNTOOLS%vsvars32"
svn co http://svn.ruby-lang.org/repos/ruby/branches/ruby_1_8_6/
cd ruby_1_8_6\win32
configure
nmake
  • 結果 ...かなり長いけど載せちゃえ
Microsoft(R) Program Maintenance Utility Version 9.00.21022.08
Copyright (C) Microsoft Corporation.  All rights reserved.

Creating config.h
config.h unchanged.
Creating config.status
	cl -nologo -MD  -O2b2xty-  -DRUBY_EXPORT -I. -I./.. -I./../missing  -D_CRT_SECURE_NO_DEPRECATE -D_CRT_NONSTDC_NO_DEPRECATE -c -Tc./../array.c
array.c
./../array.c : warning C4819: ファイルは、現在のコード ページ (932) で表示できない文字を含んでいます。データの損失を防ぐために、ファイルを Unicode 形式で保存してください。
c:\home\kog\src\ruby_1_8_6\defines.h : warning C4819: ファイルは、現在のコード ページ (932) で表示できない文字を含んでいます。データの損失を防ぐために、ファイルを Unicode 形式で保存してください。
	cl -nologo -MD  -O2b2xty-  -DRUBY_EXPORT -I. -I./.. -I./../missing  -D_CRT_SECURE_NO_DEPRECATE -D_CRT_NONSTDC_NO_DEPRECATE -c -Tc./../bignum.c
bignum.c
c:\home\kog\src\ruby_1_8_6\defines.h : warning C4819: ファイルは、現在のコード ページ (932) で表示できない文字を含んでいます。データの損失を防ぐために、ファイルを Unicode 形式で保存してください。
	cl -nologo -MD  -O2b2xty-  -DRUBY_EXPORT -I. -I./.. -I./../missing  -D_CRT_SECURE_NO_DEPRECATE -D_CRT_NONSTDC_NO_DEPRECATE -c -Tc./../class.c
class.c
c:\home\kog\src\ruby_1_8_6\defines.h : warning C4819: ファイルは、現在のコード ページ (932) で表示できない文字を含んでいます。データの損失を防ぐために、ファイルを Unicode 形式で保存してください。
	cl -nologo -MD  -O2b2xty-  -DRUBY_EXPORT -I. -I./.. -I./../missing  -D_CRT_SECURE_NO_DEPRECATE -D_CRT_NONSTDC_NO_DEPRECATE -c -Tc./../compar.c
compar.c
c:\home\kog\src\ruby_1_8_6\defines.h : warning C4819: ファイルは、現在のコード ページ (932) で表示できない文字を含んでいます。データの損失を防ぐために、ファイルを Unicode 形式で保存してください。
	cl -nologo -MD  -O2b2xty-  -DRUBY_EXPORT -I. -I./.. -I./../missing  -D_CRT_SECURE_NO_DEPRECATE -D_CRT_NONSTDC_NO_DEPRECATE -c -Tc./../dir.c
dir.c
c:\home\kog\src\ruby_1_8_6\defines.h : warning C4819: ファイルは、現在のコード ページ (932) で表示できない文字を含んでいます。データの損失を防ぐために、ファイルを Unicode 形式で保存してください。
	cl -nologo -MD  -O2b2xty-  -DRUBY_EXPORT -I. -I./.. -I./../missing  -D_CRT_SECURE_NO_DEPRECATE -D_CRT_NONSTDC_NO_DEPRECATE -c -Tc./../dln.c
dln.c
c:\home\kog\src\ruby_1_8_6\defines.h : warning C4819: ファイルは、現在のコード ページ (932) で表示できない文字を含んでいます。データの損失を防ぐために、ファイルを Unicode 形式で保存してください。
	cl -nologo -MD  -O2b2xty-  -DRUBY_EXPORT -I. -I./.. -I./../missing  -D_CRT_SECURE_NO_DEPRECATE -D_CRT_NONSTDC_NO_DEPRECATE -c -Tc./../enum.c
enum.c
c:\home\kog\src\ruby_1_8_6\defines.h : warning C4819: ファイルは、現在のコード ページ (932) で表示できない文字を含んでいます。データの損失を防ぐために、ファイルを Unicode 形式で保存してください。
	cl -nologo -MD  -O2b2xty-  -DRUBY_EXPORT -I. -I./.. -I./../missing  -D_CRT_SECURE_NO_DEPRECATE -D_CRT_NONSTDC_NO_DEPRECATE -c -Tc./../error.c
error.c
c:\home\kog\src\ruby_1_8_6\defines.h : warning C4819: ファイルは、現在のコード ページ (932) で表示できない文字を含んでいます。データの損失を防ぐために、ファイルを Unicode 形式で保存してください。
c:\home\kog\src\ruby_1_8_6\env.h : warning C4819: ファイルは、現在のコード ページ (932) で表示できない文字を含んでいます。データの損失を防ぐために、ファイルを Unicode 形式で保存してください。
	cl -nologo -MD  -O2b2xty-  -DRUBY_EXPORT -I. -I./.. -I./../missing  -D_CRT_SECURE_NO_DEPRECATE -D_CRT_NONSTDC_NO_DEPRECATE -c -Tc./../eval.c
eval.c
c:\home\kog\src\ruby_1_8_6\defines.h : warning C4819: ファイルは、現在のコード ページ (932) で表示できない文字を含んでいます。データの損失を防ぐために、ファイルを Unicode 形式で保存してください。
c:\home\kog\src\ruby_1_8_6\env.h : warning C4819: ファイルは、現在のコード ページ (932) で表示できない文字を含んでいます。データの損失を防ぐために、ファイルを Unicode 形式で保存してください。
	cl -nologo -MD  -O2b2xty-  -DRUBY_EXPORT -I. -I./.. -I./../missing  -D_CRT_SECURE_NO_DEPRECATE -D_CRT_NONSTDC_NO_DEPRECATE -c -Tc./../file.c
file.c
./../file.c : warning C4819: ファイルは、現在のコード ページ (932) で表示できない文字を含んでいます。データの損失を防ぐために、ファイルを Unicode 形式で保存してください。
c:\home\kog\src\ruby_1_8_6\defines.h : warning C4819: ファイルは、現在のコード ページ (932) で表示できない文字を含んでいます。データの損失を防ぐために、ファイルを Unicode 形式で保存してください。
	cl -nologo -MD  -O2b2xty-  -DRUBY_EXPORT -I. -I./.. -I./../missing  -D_CRT_SECURE_NO_DEPRECATE -D_CRT_NONSTDC_NO_DEPRECATE -c -Tc./../gc.c
gc.c
./../gc.c : warning C4819: ファイルは、現在のコード ページ (932) で表示できない文字を含んでいます。データの損失を防ぐために、ファイルを Unicode 形式で保存してください。
c:\home\kog\src\ruby_1_8_6\defines.h : warning C4819: ファイルは、現在のコード ページ (932) で表示できない文字を含んでいます。データの損失を防ぐために、ファイルを Unicode 形式で保存してください。
c:\home\kog\src\ruby_1_8_6\env.h : warning C4819: ファイルは、現在のコード ページ (932) で表示できない文字を含んでいます。データの損失を防ぐために、ファイルを Unicode 形式で保存してください。
	cl -nologo -MD  -O2b2xty-  -DRUBY_EXPORT -I. -I./.. -I./../missing  -D_CRT_SECURE_NO_DEPRECATE -D_CRT_NONSTDC_NO_DEPRECATE -c -Tc./../hash.c
hash.c
c:\home\kog\src\ruby_1_8_6\defines.h : warning C4819: ファイルは、現在のコード ページ (932) で表示できない文字を含んでいます。データの損失を防ぐために、ファイルを Unicode 形式で保存してください。
	cl -nologo -MD  -O2b2xty-  -DRUBY_EXPORT -I. -I./.. -I./../missing  -D_CRT_SECURE_NO_DEPRECATE -D_CRT_NONSTDC_NO_DEPRECATE -c -Tc./../inits.c
inits.c
c:\home\kog\src\ruby_1_8_6\defines.h : warning C4819: ファイルは、現在のコード ページ (932) で表示できない文字を含んでいます。データの損失を防ぐために、ファイルを Unicode 形式で保存してください。
	cl -nologo -MD  -O2b2xty-  -DRUBY_EXPORT -I. -I./.. -I./../missing  -D_CRT_SECURE_NO_DEPRECATE -D_CRT_NONSTDC_NO_DEPRECATE -c -Tc./../io.c
io.c
c:\home\kog\src\ruby_1_8_6\defines.h : warning C4819: ファイルは、現在のコード ページ (932) で表示できない文字を含んでいます。データの損失を防ぐために、ファイルを Unicode 形式で保存してください。
c:\home\kog\src\ruby_1_8_6\env.h : warning C4819: ファイルは、現在のコード ページ (932) で表示できない文字を含んでいます。データの損失を防ぐために、ファイルを Unicode 形式で保存してください。
	cl -nologo -MD  -O2b2xty-  -DRUBY_EXPORT -I. -I./.. -I./../missing  -D_CRT_SECURE_NO_DEPRECATE -D_CRT_NONSTDC_NO_DEPRECATE -c -Tc./../marshal.c
marshal.c
c:\home\kog\src\ruby_1_8_6\defines.h : warning C4819: ファイルは、現在のコード ページ (932) で表示できない文字を含んでいます。データの損失を防ぐために、ファイルを Unicode 形式で保存してください。
	cl -nologo -MD  -O2b2xty-  -DRUBY_EXPORT -I. -I./.. -I./../missing  -D_CRT_SECURE_NO_DEPRECATE -D_CRT_NONSTDC_NO_DEPRECATE -c -Tc./../math.c
math.c
c:\home\kog\src\ruby_1_8_6\defines.h : warning C4819: ファイルは、現在のコード ページ (932) で表示できない文字を含んでいます。データの損失を防ぐために、ファイルを Unicode 形式で保存してください。
	cl -nologo -MD  -O2b2xty-  -DRUBY_EXPORT -I. -I./.. -I./../missing  -D_CRT_SECURE_NO_DEPRECATE -D_CRT_NONSTDC_NO_DEPRECATE -c -Tc./../numeric.c
numeric.c
c:\home\kog\src\ruby_1_8_6\defines.h : warning C4819: ファイルは、現在のコード ページ (932) で表示できない文字を含んでいます。データの損失を防ぐために、ファイルを Unicode 形式で保存してください。
c:\home\kog\src\ruby_1_8_6\env.h : warning C4819: ファイルは、現在のコード ページ (932) で表示できない文字を含んでいます。データの損失を防ぐために、ファイルを Unicode 形式で保存してください。
	cl -nologo -MD  -O2b2xty-  -DRUBY_EXPORT -I. -I./.. -I./../missing  -D_CRT_SECURE_NO_DEPRECATE -D_CRT_NONSTDC_NO_DEPRECATE -c -Tc./../object.c
object.c
./../object.c : warning C4819: ファイルは、現在のコード ページ (932) で表示できない文字を含んでいます。データの損失を防ぐために、ファイルを Unicode 形式で保存してください。
c:\home\kog\src\ruby_1_8_6\defines.h : warning C4819: ファイルは、現在のコード ページ (932) で表示できない文字を含んでいます。データの損失を防ぐために、ファイルを Unicode 形式で保存してください。
	cl -nologo -MD  -O2b2xty-  -DRUBY_EXPORT -I. -I./.. -I./../missing  -D_CRT_SECURE_NO_DEPRECATE -D_CRT_NONSTDC_NO_DEPRECATE -c -Tc./../pack.c
pack.c
c:\home\kog\src\ruby_1_8_6\defines.h : warning C4819: ファイルは、現在のコード ページ (932) で表示できない文字を含んでいます。データの損失を防ぐために、ファイルを Unicode 形式で保存してください。
	cl -nologo -MD  -O2b2xty-  -DRUBY_EXPORT -I. -I./.. -I./../missing  -D_CRT_SECURE_NO_DEPRECATE -D_CRT_NONSTDC_NO_DEPRECATE -c -Tcparse.c
parse.c
	cl -nologo -MD  -O2b2xty-  -DRUBY_EXPORT -I. -I./.. -I./../missing  -D_CRT_SECURE_NO_DEPRECATE -D_CRT_NONSTDC_NO_DEPRECATE -c -Tc./../process.c
process.c
./../process.c : warning C4819: ファイルは、現在のコード ページ (932) で表示できない文字を含んでいます。データの損失を防ぐために、ファイルを Unicode 形式で保存してください。
c:\home\kog\src\ruby_1_8_6\defines.h : warning C4819: ファイルは、現在のコード ページ (932) で表示できない文字を含んでいます。データの損失を防ぐために、ファイルを Unicode 形式で保存してください。
	cl -nologo -MD  -O2b2xty-  -DRUBY_EXPORT -I. -I./.. -I./../missing  -D_CRT_SECURE_NO_DEPRECATE -D_CRT_NONSTDC_NO_DEPRECATE -c -Tc./../prec.c
prec.c
c:\home\kog\src\ruby_1_8_6\defines.h : warning C4819: ファイルは、現在のコード ページ (932) で表示できない文字を含んでいます。データの損失を防ぐために、ファイルを Unicode 形式で保存してください。
	cl -nologo -MD  -O2b2xty-  -DRUBY_EXPORT -I. -I./.. -I./../missing  -D_CRT_SECURE_NO_DEPRECATE -D_CRT_NONSTDC_NO_DEPRECATE -c -Tc./../random.c
random.c
c:\home\kog\src\ruby_1_8_6\defines.h : warning C4819: ファイルは、現在のコード ページ (932) で表示できない文字を含んでいます。データの損失を防ぐために、ファイルを Unicode 形式で保存してください。
	cl -nologo -MD  -O2b2xty-  -DRUBY_EXPORT -I. -I./.. -I./../missing  -D_CRT_SECURE_NO_DEPRECATE -D_CRT_NONSTDC_NO_DEPRECATE -c -Tc./../range.c
range.c
./../range.c : warning C4819: ファイルは、現在のコード ページ (932) で表示できない文字を含んでいます。データの損失を防ぐために、ファイルを Unicode 形式で保存してください。
c:\home\kog\src\ruby_1_8_6\defines.h : warning C4819: ファイルは、現在のコード ページ (932) で表示できない文字を含んでいます。データの損失を防ぐために、ファイルを Unicode 形式で保存してください。
	cl -nologo -MD  -O2b2xty-  -DRUBY_EXPORT -I. -I./.. -I./../missing  -D_CRT_SECURE_NO_DEPRECATE -D_CRT_NONSTDC_NO_DEPRECATE -c -Tc./../re.c
re.c
c:\home\kog\src\ruby_1_8_6\defines.h : warning C4819: ファイルは、現在のコード ページ (932) で表示できない文字を含んでいます。データの損失を防ぐために、ファイルを Unicode 形式で保存してください。
	cl -nologo -MD  -O2b2xty-  -DRUBY_EXPORT -I. -I./.. -I./../missing  -D_CRT_SECURE_NO_DEPRECATE -D_CRT_NONSTDC_NO_DEPRECATE -c -Tc./../regex.c
regex.c
c:\home\kog\src\ruby_1_8_6\defines.h : warning C4819: ファイルは、現在のコード ページ (932) で表示できない文字を含んでいます。データの損失を防ぐために、ファイルを Unicode 形式で保存してください。
	cl -nologo -MD  -O2b2xty-  -DRUBY_EXPORT -I. -I./.. -I./../missing  -D_CRT_SECURE_NO_DEPRECATE -D_CRT_NONSTDC_NO_DEPRECATE -c -Tc./../ruby.c
ruby.c
./../ruby.c : warning C4819: ファイルは、現在のコード ページ (932) で表示できない文字を含んでいます。データの損失を防ぐために、ファイルを Unicode 形式で保存してください。
c:\home\kog\src\ruby_1_8_6\defines.h : warning C4819: ファイルは、現在のコード ページ (932) で表示できない文字を含んでいます。データの損失を防ぐために、ファイルを Unicode 形式で保存してください。
	cl -nologo -MD  -O2b2xty-  -DRUBY_EXPORT -I. -I./.. -I./../missing  -D_CRT_SECURE_NO_DEPRECATE -D_CRT_NONSTDC_NO_DEPRECATE -c -Tc./../signal.c
signal.c
c:\home\kog\src\ruby_1_8_6\defines.h : warning C4819: ファイルは、現在のコード ページ (932) で表示できない文字を含んでいます。データの損失を防ぐために、ファイルを Unicode 形式で保存してください。
	cl -nologo -MD  -O2b2xty-  -DRUBY_EXPORT -I. -I./.. -I./../missing  -D_CRT_SECURE_NO_DEPRECATE -D_CRT_NONSTDC_NO_DEPRECATE -c -Tc./../sprintf.c
sprintf.c
c:\home\kog\src\ruby_1_8_6\defines.h : warning C4819: ファイルは、現在のコード ページ (932) で表示できない文字を含んでいます。データの損失を防ぐために、ファイルを Unicode 形式で保存してください。
	cl -nologo -MD  -O2b2xty-  -DRUBY_EXPORT -I. -I./.. -I./../missing  -D_CRT_SECURE_NO_DEPRECATE -D_CRT_NONSTDC_NO_DEPRECATE -c -Tc./../st.c
st.c
c:\home\kog\src\ruby_1_8_6\defines.h : warning C4819: ファイルは、現在のコード ページ (932) で表示できない文字を含んでいます。データの損失を防ぐために、ファイルを Unicode 形式で保存してください。
	cl -nologo -MD  -O2b2xty-  -DRUBY_EXPORT -I. -I./.. -I./../missing  -D_CRT_SECURE_NO_DEPRECATE -D_CRT_NONSTDC_NO_DEPRECATE -c -Tc./../string.c
string.c
./../string.c : warning C4819: ファイルは、現在のコード ページ (932) で表示できない文字を含んでいます。データの損失を防ぐために、ファイルを Unicode 形式で保存してください。
c:\home\kog\src\ruby_1_8_6\defines.h : warning C4819: ファイルは、現在のコード ページ (932) で表示できない文字を含んでいます。データの損失を防ぐために、ファイルを Unicode 形式で保存してください。
	cl -nologo -MD  -O2b2xty-  -DRUBY_EXPORT -I. -I./.. -I./../missing  -D_CRT_SECURE_NO_DEPRECATE -D_CRT_NONSTDC_NO_DEPRECATE -c -Tc./../struct.c
struct.c
c:\home\kog\src\ruby_1_8_6\defines.h : warning C4819: ファイルは、現在のコード ページ (932) で表示できない文字を含んでいます。データの損失を防ぐために、ファイルを Unicode 形式で保存してください。
c:\home\kog\src\ruby_1_8_6\env.h : warning C4819: ファイルは、現在のコード ページ (932) で表示できない文字を含んでいます。データの損失を防ぐために、ファイルを Unicode 形式で保存してください。
	cl -nologo -MD  -O2b2xty-  -DRUBY_EXPORT -I. -I./.. -I./../missing  -D_CRT_SECURE_NO_DEPRECATE -D_CRT_NONSTDC_NO_DEPRECATE -c -Tc./../time.c
time.c
c:\home\kog\src\ruby_1_8_6\defines.h : warning C4819: ファイルは、現在のコード ページ (932) で表示できない文字を含んでいます。データの損失を防ぐために、ファイルを Unicode 形式で保存してください。
	cl -nologo -MD  -O2b2xty-  -DRUBY_EXPORT -I. -I./.. -I./../missing  -D_CRT_SECURE_NO_DEPRECATE -D_CRT_NONSTDC_NO_DEPRECATE -c -Tc./../util.c
util.c
c:\home\kog\src\ruby_1_8_6\defines.h : warning C4819: ファイルは、現在のコード ページ (932) で表示できない文字を含んでいます。データの損失を防ぐために、ファイルを Unicode 形式で保存してください。
	cl -nologo -MD  -O2b2xty-  -DRUBY_EXPORT -I. -I./.. -I./../missing  -D_CRT_SECURE_NO_DEPRECATE -D_CRT_NONSTDC_NO_DEPRECATE -c -Tc./../variable.c
variable.c
c:\home\kog\src\ruby_1_8_6\defines.h : warning C4819: ファイルは、現在のコード ページ (932) で表示できない文字を含んでいます。データの損失を防ぐために、ファイルを Unicode 形式で保存してください。
c:\home\kog\src\ruby_1_8_6\env.h : warning C4819: ファイルは、現在のコード ページ (932) で表示できない文字を含んでいます。データの損失を防ぐために、ファイルを Unicode 形式で保存してください。
	cl -nologo -MD  -O2b2xty-  -DRUBY_EXPORT -I. -I./.. -I./../missing  -D_CRT_SECURE_NO_DEPRECATE -D_CRT_NONSTDC_NO_DEPRECATE -c -Tc./../version.c
version.c
c:\home\kog\src\ruby_1_8_6\defines.h : warning C4819: ファイルは、現在のコード ページ (932) で表示できない文字を含んでいます。データの損失を防ぐために、ファイルを Unicode 形式で保存してください。
	cl -nologo -MD  -O2b2xty-  -DRUBY_EXPORT -I. -I./.. -I./../missing  -D_CRT_SECURE_NO_DEPRECATE -D_CRT_NONSTDC_NO_DEPRECATE -c -Tc./../missing/acosh.c
acosh.c
	cl -nologo -MD  -O2b2xty-  -DRUBY_EXPORT -I. -I./.. -I./../missing  -D_CRT_SECURE_NO_DEPRECATE -D_CRT_NONSTDC_NO_DEPRECATE -c -Tc./../missing/crypt.c
crypt.c
	cl -nologo -MD  -O2b2xty-  -DRUBY_EXPORT -I. -I./.. -I./../missing  -D_CRT_SECURE_NO_DEPRECATE -D_CRT_NONSTDC_NO_DEPRECATE -c -Tc./../missing/erf.c
erf.c
	cl -nologo -MD  -O2b2xty-  -DRUBY_EXPORT -I. -I./.. -I./../missing  -D_CRT_SECURE_NO_DEPRECATE -D_CRT_NONSTDC_NO_DEPRECATE -c -Tcwin32.c
win32.c
c:\home\kog\src\ruby_1_8_6\defines.h : warning C4819: ファイルは、現在のコード ページ (932) で表示できない文字を含んでいます。データの損失を防ぐために、ファイルを Unicode 形式で保存してください。
	cl -nologo -MD  -O2b2xty-  -DRUBY_EXPORT -I. -I./.. -I./../missing  -D_CRT_SECURE_NO_DEPRECATE -D_CRT_NONSTDC_NO_DEPRECATE -c -Tc./../dmyext.c
dmyext.c
	lib -nologo -machine:x86 -out:msvcr90-ruby18-static.lib array.obj  bignum.obj  class.obj  compar.obj  dir.obj  dln.obj  enum.obj  error.obj  eval.obj  file.obj  gc.obj  hash.obj  inits.obj  io.obj  marshal.obj  math.obj  numeric.obj  object.obj  pack.obj  parse.obj  process.obj  prec.obj  random.obj  range.obj  re.obj  regex.obj  ruby.obj  signal.obj  sprintf.obj  st.obj  string.obj  struct.obj  time.obj  util.obj  variable.obj  version.obj  acosh.obj crypt.obj erf.obj win32.obj dmyext.obj
	cl -nologo -MD  -O2b2xty-  -DRUBY_EXPORT -I. -I./.. -I./../missing  -D_CRT_SECURE_NO_DEPRECATE -D_CRT_NONSTDC_NO_DEPRECATE -c -Tc./../main.c
main.c
c:\home\kog\src\ruby_1_8_6\defines.h : warning C4819: ファイルは、現在のコード ページ (932) で表示できない文字を含んでいます。データの損失を防ぐために、ファイルを Unicode 形式で保存してください。
 oldnames.lib user32.lib advapi32.lib wsock32.lib
	 cl -nologo main.obj dmydln.obj msvcr90-ruby18-static.lib oldnames.lib user32.lib advapi32.lib wsock32.lib  -Feminiruby.exe -link -incremental:no -debug -opt:ref -opt:icf
msvcr90-ruby18-static.lib(hash.obj) : error LNK2019: 未解決の外部シンボル _rb_id2name が関数 _rb_hash_foreach で参照されました。
msvcr90-ruby18-static.lib(struct.obj) : error LNK2001: 外部シンボル "_rb_id2name" は未解決です。
msvcr90-ruby18-static.lib(marshal.obj) : error LNK2001: 外部シンボル "_rb_id2name" は未解決です。
msvcr90-ruby18-static.lib(array.obj) : error LNK2001: 外部シンボル "_rb_id2name" は未解決です。
msvcr90-ruby18-static.lib(class.obj) : error LNK2001: 外部シンボル "_rb_id2name" は未解決です。
msvcr90-ruby18-static.lib(signal.obj) : error LNK2001: 外部シンボル "_rb_id2name" は未解決です。
msvcr90-ruby18-static.lib(re.obj) : error LNK2001: 外部シンボル "_rb_id2name" は未解決です。
msvcr90-ruby18-static.lib(numeric.obj) : error LNK2001: 外部シンボル "_rb_id2name" は未解決です。
msvcr90-ruby18-static.lib(variable.obj) : error LNK2001: 外部シンボル "_rb_id2name" は未解決です。
msvcr90-ruby18-static.lib(io.obj) : error LNK2001: 外部シンボル "_rb_id2name" は未解決です。
msvcr90-ruby18-static.lib(string.obj) : error LNK2001: 外部シンボル "_rb_id2name" は未解決です。
msvcr90-ruby18-static.lib(eval.obj) : error LNK2001: 外部シンボル "_rb_id2name" は未解決です。
msvcr90-ruby18-static.lib(gc.obj) : error LNK2001: 外部シンボル "_rb_id2name" は未解決です。
msvcr90-ruby18-static.lib(error.obj) : error LNK2001: 外部シンボル "_rb_id2name" は未解決です。
msvcr90-ruby18-static.lib(object.obj) : error LNK2001: 外部シンボル "_rb_id2name" は未解決です。
msvcr90-ruby18-static.lib(enum.obj) : error LNK2001: 外部シンボル "_rb_node_newnode" は未解決です。
msvcr90-ruby18-static.lib(eval.obj) : error LNK2019: 未解決の外部シンボル _rb_node_newnode が関数 _rb_add_method で参照されました。
msvcr90-ruby18-static.lib(variable.obj) : error LNK2001: 外部シンボル "_rb_node_newnode" は未解決です。
msvcr90-ruby18-static.lib(ruby.obj) : error LNK2001: 外部シンボル "_rb_node_newnode" は未解決です。
msvcr90-ruby18-static.lib(class.obj) : error LNK2001: 外部シンボル "_rb_node_newnode" は未解決です。
msvcr90-ruby18-static.lib(enum.obj) : error LNK2019: 未解決の外部シンボル _rb_intern が関数 _Init_Enumerable で参照されました。
msvcr90-ruby18-static.lib(struct.obj) : error LNK2001: 外部シンボル "_rb_intern" は未解決です。
msvcr90-ruby18-static.lib(marshal.obj) : error LNK2001: 外部シンボル "_rb_intern" は未解決です。
msvcr90-ruby18-static.lib(range.obj) : error LNK2001: 外部シンボル "_rb_intern" は未解決です。
msvcr90-ruby18-static.lib(dir.obj) : error LNK2001: 外部シンボル "_rb_intern" は未解決です。
msvcr90-ruby18-static.lib(compar.obj) : error LNK2001: 外部シンボル "_rb_intern" は未解決です。
msvcr90-ruby18-static.lib(prec.obj) : error LNK2001: 外部シンボル "_rb_intern" は未解決です。
msvcr90-ruby18-static.lib(array.obj) : error LNK2001: 外部シンボル "_rb_intern" は未解決です。
msvcr90-ruby18-static.lib(class.obj) : error LNK2001: 外部シンボル "_rb_intern" は未解決です。
msvcr90-ruby18-static.lib(signal.obj) : error LNK2001: 外部シンボル "_rb_intern" は未解決です。
msvcr90-ruby18-static.lib(hash.obj) : error LNK2001: 外部シンボル "_rb_intern" は未解決です。
msvcr90-ruby18-static.lib(numeric.obj) : error LNK2001: 外部シンボル "_rb_intern" は未解決です。
msvcr90-ruby18-static.lib(variable.obj) : error LNK2001: 外部シンボル "_rb_intern" は未解決です。
msvcr90-ruby18-static.lib(io.obj) : error LNK2001: 外部シンボル "_rb_intern" は未解決です。
msvcr90-ruby18-static.lib(string.obj) : error LNK2001: 外部シンボル "_rb_intern" は未解決です。
msvcr90-ruby18-static.lib(eval.obj) : error LNK2001: 外部シンボル "_rb_intern" は未解決です。
msvcr90-ruby18-static.lib(gc.obj) : error LNK2001: 外部シンボル "_rb_intern" は未解決です。
msvcr90-ruby18-static.lib(error.obj) : error LNK2001: 外部シンボル "_rb_intern" は未解決です。
msvcr90-ruby18-static.lib(object.obj) : error LNK2001: 外部シンボル "_rb_intern" は未解決です。
msvcr90-ruby18-static.lib(eval.obj) : error LNK2019: 未解決の外部シンボル _rb_id_attrset が関数 _rb_attr で参照されました。
msvcr90-ruby18-static.lib(struct.obj) : error LNK2001: 外部シンボル "_rb_id_attrset" は未解決です。
msvcr90-ruby18-static.lib(eval.obj) : error LNK2019: 未解決の外部シンボル _rb_is_const_id が関数 _rb_attr で参照されました。
msvcr90-ruby18-static.lib(object.obj) : error LNK2001: 外部シンボル "_rb_is_const_id" は未解決です。
msvcr90-ruby18-static.lib(variable.obj) : error LNK2001: 外部シンボル "_rb_is_const_id" は未解決です。
msvcr90-ruby18-static.lib(struct.obj) : error LNK2001: 外部シンボル "_rb_is_const_id" は未解決です。
msvcr90-ruby18-static.lib(eval.obj) : error LNK2019: 未解決の外部シンボル _rb_is_local_id が関数 _rb_attr で参照されました。
msvcr90-ruby18-static.lib(struct.obj) : error LNK2001: 外部シンボル "_rb_is_local_id" は未解決です。
msvcr90-ruby18-static.lib(eval.obj) : error LNK2019: 未解決の外部シンボル _ruby_sourceline が関数 _ruby_set_current_source で参照されました。
msvcr90-ruby18-static.lib(error.obj) : error LNK2001: 外部シンボル "_ruby_sourceline" は未解決です。
msvcr90-ruby18-static.lib(ruby.obj) : error LNK2001: 外部シンボル "_ruby_sourceline" は未解決です。
msvcr90-ruby18-static.lib(eval.obj) : error LNK2019: 未解決の外部シンボル _ruby_sourcefile が関数 _ruby_set_current_source で参照されました。
msvcr90-ruby18-static.lib(gc.obj) : error LNK2001: 外部シンボル "_ruby_sourcefile" は未解決です。
msvcr90-ruby18-static.lib(error.obj) : error LNK2001: 外部シンボル "_ruby_sourcefile" は未解決です。
msvcr90-ruby18-static.lib(ruby.obj) : error LNK2001: 外部シンボル "_ruby_sourcefile" は未解決です。
msvcr90-ruby18-static.lib(eval.obj) : error LNK2019: 未解決の外部シンボル _rb_compile_string が関数 _compile で参照されました。
msvcr90-ruby18-static.lib(ruby.obj) : error LNK2001: 外部シンボル "_rb_compile_string" は未解決です。
msvcr90-ruby18-static.lib(eval.obj) : error LNK2019: 未解決の外部シンボル _rb_backref_set が関数 _rb_thread_save_context で参照されました。
msvcr90-ruby18-static.lib(string.obj) : error LNK2001: 外部シンボル "_rb_backref_set" は未解決です。
msvcr90-ruby18-static.lib(re.obj) : error LNK2001: 外部シンボル "_rb_backref_set" は未解決です。
msvcr90-ruby18-static.lib(eval.obj) : error LNK2019: 未解決の外部シンボル _rb_backref_get が関数 _rb_thread_save_context で参照されました。
msvcr90-ruby18-static.lib(variable.obj) : error LNK2001: 外部シンボル "_rb_backref_get" は未解決です。
msvcr90-ruby18-static.lib(string.obj) : error LNK2001: 外部シンボル "_rb_backref_get" は未解決です。
msvcr90-ruby18-static.lib(re.obj) : error LNK2001: 外部シンボル "_rb_backref_get" は未解決です。
msvcr90-ruby18-static.lib(eval.obj) : error LNK2019: 未解決の外部シンボル _rb_lastline_set が関数 _rb_thread_save_context で参照されました。
msvcr90-ruby18-static.lib(io.obj) : error LNK2001: 外部シンボル "_rb_lastline_set" は未解決です。
msvcr90-ruby18-static.lib(string.obj) : error LNK2001: 外部シンボル "_rb_lastline_set" は未解決です。
msvcr90-ruby18-static.lib(eval.obj) : error LNK2019: 未解決の外部シンボル _rb_lastline_get が関数 _rb_thread_save_context で参照されました。
msvcr90-ruby18-static.lib(io.obj) : error LNK2001: 外部シンボル "_rb_lastline_get" は未解決です。
msvcr90-ruby18-static.lib(string.obj) : error LNK2001: 外部シンボル "_rb_lastline_get" は未解決です。
msvcr90-ruby18-static.lib(re.obj) : error LNK2001: 外部シンボル "_rb_lastline_get" は未解決です。
msvcr90-ruby18-static.lib(eval.obj) : error LNK2019: 未解決の外部シンボル _ruby_in_compile が関数 _call_trace_func で参照されました。
msvcr90-ruby18-static.lib(gc.obj) : error LNK2001: 外部シンボル "_ruby_in_compile" は未解決です。
msvcr90-ruby18-static.lib(re.obj) : error LNK2001: 外部シンボル "_ruby_in_compile" は未解決です。
msvcr90-ruby18-static.lib(eval.obj) : error LNK2019: 未解決の外部シンボル _ruby_eval_tree_begin が関数 _eval_node で参照されました。
msvcr90-ruby18-static.lib(ruby.obj) : error LNK2001: 外部シンボル "_ruby_eval_tree_begin" は未解決です。
msvcr90-ruby18-static.lib(eval.obj) : error LNK2019: 未解決の外部シンボル _ruby_eval_tree が関数 _ruby_exec_internal で参照されました。
msvcr90-ruby18-static.lib(ruby.obj) : error LNK2001: 外部シンボル "_ruby_eval_tree" は未解決です。
msvcr90-ruby18-static.lib(gc.obj) : error LNK2019: 未解決の外部シンボル _ruby_parser_stack_on_heap が関数 _gc_sweep で参照されました。
msvcr90-ruby18-static.lib(ruby.obj) : error LNK2001: 外部シンボル "_ruby_parser_stack_on_heap" は未解決です。
msvcr90-ruby18-static.lib(gc.obj) : error LNK2019: 未解決の外部シンボル _rb_gc_mark_parser が関数 _garbage_collect で参照されました。
msvcr90-ruby18-static.lib(object.obj) : error LNK2019: 未解決の外部シンボル _rb_is_instance_id が関数 _inspect_i で参照されました。
msvcr90-ruby18-static.lib(variable.obj) : error LNK2001: 外部シンボル "_rb_is_instance_id" は未解決です。
msvcr90-ruby18-static.lib(object.obj) : error LNK2019: 未解決の外部シンボル _rb_symname_p が関数 _sym_inspect で参照されました。
msvcr90-ruby18-static.lib(object.obj) : error LNK2019: 未解決の外部シンボル _rb_is_class_id が関数 _rb_mod_cvar_get で参照されました。
msvcr90-ruby18-static.lib(variable.obj) : error LNK2001: 外部シンボル "_rb_is_class_id" は未解決です。
msvcr90-ruby18-static.lib(object.obj) : error LNK2019: 未解決の外部シンボル _rb_sym_all_symbols が関数 _Init_Object で参照されました。
msvcr90-ruby18-static.lib(string.obj) : error LNK2019: 未解決の外部シンボル _rb_sym_interned_p が関数 _rb_str_intern で参照されました。
msvcr90-ruby18-static.lib(ruby.obj) : error LNK2019: 未解決の外部シンボル _ruby__end__seen が関数 _load_file で参照されました。
msvcr90-ruby18-static.lib(ruby.obj) : error LNK2019: 未解決の外部シンボル _rb_compile_file が関数 _load_file で参照されました。
msvcr90-ruby18-static.lib(ruby.obj) : error LNK2019: 未解決の外部シンボル _ruby_yydebug が関数 _proc_options で参照されました。
msvcr90-ruby18-static.lib(ruby.obj) : error LNK2019: 未解決の外部シンボル _rb_parser_while_loop が関数 _ruby_process_options で参照されました。
msvcr90-ruby18-static.lib(ruby.obj) : error LNK2019: 未解決の外部シンボル _rb_parser_append_print が関数 _ruby_process_options で参照されました。
msvcr90-ruby18-static.lib(inits.obj) : error LNK2019: 未解決の外部シンボル _Init_sym が関数 _rb_call_inits で参照されました。
miniruby.exe : fatal error LNK1120: 外部参照 29 が未解決です。

NMAKE : fatal error U1077: '"C:\Program Files\Microsoft Visual Studio 9.0\VC\BIN
\cl.EXE"' : リターン コード '0x2'
Stop.

_ [7.10ja]ubuntu入れなおし

rubygemsが古すぎることに業をにやし、いろいろいじっていたらわけわかめになったので、さっくり入れなおすことにする。

次はいろいろブログで語られてるみたいに /opt/rubygems に入れてみようかなあ。

しかし、なんでLinuxディストリビューションてカーネルとアプリを同一のパッケージシステムで管理しちゃうのかなー。rpmもdebもportageも。FreeBSDみたいにコア+portsな構成にすればいいんちゃうん、と思ってしまうのだが...。パッケージシステムからちょっとだけ離れたいときに、いきなりtar玉での作業になるんだよねえ...せめて portsみたいにfetchからpatchからbuildから記録まではサポートしてくれればいいのに...コアの部分はそうそういじらないんだからそれこそdebでもyumでもどっちでもよくって、バイナリで入れ替えられればいうことないんだけど。

本日のツッコミ(全1件) [ツッコミを入れる]

_ サイロス誠 [はじめまして。 上のエラーメッセージですが、もしかしたら、Subversionから落とした時に、ソースの日付欄が日本..]


2008-02-07(Thu) [長年日記] この日を編集

_ [Rails]Fastladder

早速Windows版をダウンロードしてインストール。mswin32版rubyを中心に構成されてて、サービス登録までインストーラでやってくれる。データベースはsqlite3。

ちょうど会社でサーバインストールタイプのRSSリーダがほしいなあ、と思ってたところだったのでちょうどいいや。明日会社でもインスコしてみよう。


2008-02-08(Fri) [長年日記] この日を編集

_ [Ruby]VS2008Expressで1.8.6をビルド(成功)

ツッコミありがとうございます>サイロスさん

おかげさまでうまくいきました。 svn:keyword ってつかったことなかったからまさかこういう挙動とは思いつかなかったorz.

さすがにWindowsの"コントロールパネルの「地域と言語のオプション」−「標準と形式」を英語に..."ではしんどいので、以下の方法でやってみた。ICONVがなければasciiで変換しちゃうでしょう。てことでAPR_ICONV_PATHを直前でクリアする。

SET APR_ICONV_PATH=
"%VS90COMNTOOLS%vsvars32"
svn co http://svn.ruby-lang.org/repos/ruby/branches/ruby_1_8_6/
cd ruby_1_8_6\win32
configure
nmake
nmake test
nmake install DESTDIR=c:/opt/ruby186-mswin90

うまくいったw

C:\opt\ruby186-mswin90\bin>ruby -v
ruby 1.8.6 (2007-12-03 patchlevel 113) [i386-mswin32_90]

2008-02-09(Sat) [長年日記] この日を編集

_ [Ruby]gemで拡張ライブラリを含むものの命名規則がもしかして揺れてる?

fastladderをsvnから落としたものを実行してみようと思ったら、sqlite3のロードに失敗した。

lib/ruby/gems/1.8/gems/sqlite3* をざくっと削除して、gem install sqlite3-ruby で入れなおすと直ったのだけれど、今度は lib/ruby/gems/1.8/gems/sqlite3-ruby-1.2.1-x86-mswin32 に展開されたみたい。他のフォルダを見ると、*-mswin32-60 のものと、*-mswin32が混在している模様。

$ gem pristine --all

でもフォルダ名に変化は見られないし...

C:\tmp>gem environment
RubyGems Environment:
  - RUBYGEMS VERSION: 1.0.1 (1.0.1)
  - RUBY VERSION: 1.8.6 (2007-09-24 patchlevel 111) [i386-mswin32]
  - INSTALLATION DIRECTORY: c:/opt/ruby18/lib/ruby/gems/1.8
  - RUBY EXECUTABLE: c:/opt/ruby18/bin/ruby.exe
  - RUBYGEMS PLATFORMS:
    - ruby
    - x86-mswin32-60
  - GEM PATHS:
     - c:/opt/ruby18/lib/ruby/gems/1.8
  - GEM CONFIGURATION:
     - :update_sources => true
     - :verbose => true
     - :benchmark => false
     - :backtrace => false
     - :bulk_threshold => 1000
  - REMOTE SOURCES:
     - http://gems.rubyforge.org

の出力からすると、*-mswin32-60 が正しい気もするんだけど。


2008-02-10(Sun) [長年日記] この日を編集

_ [Linux]Centos5.1を入れる

VMWareServer上にcentos5.1の環境を作る。...といってもインストーラを動かしてシェルに入ってから、

# yum install yum-fastestmirror
# yum update
# adduser -p 1001 kog 

とやっただけだけど。とりあえず慣れないといけなそうなので、ここに環境を作ってみる。puppet動かしてみたいな。


2008-02-11(Mon) [長年日記] この日を編集

_ [Redmine]ヘルプを redmine.jpに

http://redmine.jp/guide/ にて日本語訳が公開されたのでヘルプをそちらに振り向ける。前回 redmine_custom っていうプラグインをでっち上げたのでそれに追記する方向で。

$ vi vendor/plugins/redmine_custom/lib/redmine_custom.rb
User
class User
  def name
    "#{lastname} #{firstname}"
  end
end

Redmine::Info
module Redmine::Info
  def self.help_url; 'http://redmine.jp/guide/' end
end

$ mongrel_rails restart

これでおk。http://capsctrl.que.jp/kdmsnr/diary/20080201.html#p02に従い、require '..' はやめて、railsのauto-requireにやらせる方向で。

_ [Linux][Centos51]sudo

とりあえず。

# vi /etc/sudoers
%wheel  ALL=(ALL)       ALL    # 有効化する

_ [Linux]CentOSにRuby1.8-stableをインストール

これより前にも作業してるから漏れあるかも。

# yum install subversion autoconf readline-devel zlib-devel
$ svn co http://svn.ruby-lang.org/repos/ruby/branches/ruby_1_8 ruby18
$ cd ruby18
$ autoconf
$ ./configure
$ make 
$ sudo make install
$ ruby -v
ruby 1.8.6 (2008-02-09 patchlevel 5000) [i686-linux]

_ [Linux][Centos51]rubygemsインストール

$ wget http://rubyforge.org/frs/download.php/29548/rubygems-1.0.1.tgz
$ tar -xvf rubygems-1.0.1.tgz
$ cd rubygems-1.0.1
$ sudo ruby setup.rb

_ [Linux][Centos51]openssl追加インストール

rake db:migrateで opensslのロードに失敗..mysql-serverインストールでopenssl-develは入ったみたいなので、ext/opensslを追加インストール。

$ cd ext/openssl
$ ruby extconf.rb
$ make
$ sudo make install

_ [VMWareServer]Linuxゲストで時刻が進む...

ぐぐっていろいろ試したけど、撃沈

  • /boot/grub/grub.conf にて clock=pit nosmp noapic nolapic を追加
  • vmxにて tools.syncTime = "TRUE" を追加

...利かん! カーネル再構築しかないのかしらw


2008-02-17(Sun) [長年日記] この日を編集

_ Windowsでmod_auth_sspiでリバースプロキシで構成するときにREMOTE_USERって効かないよね?

HikiとかtdiaryとかCGIで直接使う場合は、REMOTE_USERにログイン名が入るから簡単なんだが、RailsでリバースプロキシでNTLM認証かけたい場合、環境変数ってセットされませんよね?あくまでリクエストのパラメータに入ってこないといかんのだけど普通はセットされてないみたい。

ぐぐってみた感じでは、mod_rewrite使ってURLに含める手法とか、mod_headersでヘッダに追記する手法とかがあるみたいなんだが、手元ではうまくいってない。パラメータにはここでいうtype-3 messageはセットされているみたいなので、ここから user-string が取り出せたらいいんじゃね?とか思った。

こういうのって誰かプラグイン作ってないのかしら...

_ mod_auth_sspiの設定ができた

自宅環境でApache2.2.8にあげる必要があったので、ついでにmod_auth_sspi+reverse proxyでRails接続の環境を作ってみた。

LoadModule sspi_auth_module modules/mod_auth_sspi.so

ProxyRequests Off

<Proxy *>
Order deny,allow
Allow from all
</Proxy>

ProxyPass /t http://192.168.0.25:3000/t
ProxyPassReverse /t http://192.168.0.25:3000/t
<Location /t>
    AuthName "Windows"
    AuthType SSPI
    SSPIAuth On
    SSPIAuthoritative On
    Require valid-user
</Location>

Railsでテスト用のコントローラと.rhtmlをでっちあげる

<h1>Test#index</h1>
<ul>
<% request.env.sort.each do |k,v| %>
  <li><%=k%> = <%=v%></li>
<% end %>
</ul>

結果

GATEWAY_INTERFACE = CGI/1.2 
HTTP_ACCEPT = */* 
HTTP_ACCEPT_ENCODING = gzip, deflate 
HTTP_ACCEPT_LANGUAGE = ja 
HTTP_AUTHORIZATION = NTLM TlRMTVNTUAADAAAAAAAAAEg...(ここにこんな感じでbase64エンコードされたtype-3メッセージが入ってる)
HTTP_CONNECTION = Keep-Alive 
HTTP_HOST = 192.168.0.25:3000 
HTTP_USER_AGENT = Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1) 
HTTP_VERSION = HTTP/1.1 
HTTP_X_FORWARDED_FOR = 127.0.0.1 
HTTP_X_FORWARDED_HOST = localhost 
HTTP_X_FORWARDED_SERVER = 192.168.0.51 
PATH_INFO = /test 
REMOTE_ADDR = 192.168.0.51 
REQUEST_METHOD = GET 
REQUEST_PATH = /t/test 
REQUEST_URI = /t/test 
SCRIPT_NAME = /t 
SERVER_NAME = 192.168.0.25 
SERVER_PORT = 3000 
SERVER_PROTOCOL = HTTP/1.1 
SERVER_SOFTWARE = Mongrel 1.1.3 

_ うーん。なんか違う。

自宅の環境だとHTTP_AUTHORIZATIONにちゃんと値が入ってないみたいだ。そもそもAD環境下で試したときと文字列の長さが違いすぎる。

ApacheのAccessLogにはきちんと記録はされてるようなんだけど。

mod_auth_sspi用の設定もまあ微妙に違うのでそのあたりなのかも。

ちなみにテストコードの断片はこんなの(うまくいかない例):

<h1>ntlm</h1>
<%
  keys = %w(header lm_resp_len lm_resp_off nt_resp_len nt_resp_off dom_len dom_off user_len user_off host_len host_off msg_len rest)
  ntlm_param = request.env['HTTP_AUTHORIZATION'].unpack('x5 m*')[0]
  vals = ntlm_param.unpack('a12 x2ssx2 x2ssx2 x2ssx2 x2ssx2 x2ssx2 x4 s a*')
  ntlm = Hash[*keys.zip(vals).flatten]
%>
<ul>
<% ntlm.sort.each do |k, v| %>
  <li><%=k %>= <%=v.inspect%></li>
<% end %>
</ul>
dom_len= 0 
dom_off= 72 
header= "NTLMSSP\000\003\000\000\000" 
host_len= 0 
host_off= 72 
lm_resp_len= 0 
lm_resp_off= 72 
msg_len= 72 
nt_resp_len= 0 
nt_resp_off= 72 
rest= "\000\000\005&#136;\242\005\001(\n\000\000\000\017" 
user_len= 0 
user_off= 72 

_ mod_rewriteで引き渡す方法がうまくいった。

http://www.ruby-forum.com/topic/83067#151189 の方法でうまくいった。

ProxyRequests Off

<Proxy *>
Order deny,allow
Allow from all
</Proxy>

ProxyPass /t http://192.168.0.25:3000/t
ProxyPassReverse /t http://192.168.0.25:3000/t
<Location /t>
    AuthName "Windows"
    AuthType SSPI
    SSPIAuth On
    SSPIAuthoritative On
    Require valid-user
    SSPIOmitDomain On
    SSPIUsernameCase upper
    RewriteEngine On
    RewriteCond %{LA-U:REMOTE_USER} (.+)
    RewriteRule . - [E=RU:%1]
    RequestHeader add X-Forwarded-User %{RU}e
</Location>
...
HTTP_X_FORWARDED_SERVER = 192.168.0.51 
HTTP_X_FORWARDED_USER = LOGO\KOG 
PATH_INFO = /test 
.....

やはりmod_rewriteはちゃんと理解したほうがよさそうだ。


2008-02-18(Mon) [長年日記] この日を編集

_ HP-UX td176 B.11.23 U ia64 での rubyビルド時のワーニング

ia64で -R'RPATHFLAG'がついてしまう件はなかださんのパッチで解決できたけれど、それ以外にビルドしたときに大量にワーニングが出るのが気になってます。

一応 scriptで採ったやつ、大量だけど載せときます。これどの程度まずいのかしら?

$ gmake
cc -O -D_XOPEN_SOURCE_EXTENDED  -DRUBY_EXPORT  -I. -I.  -c array.c
cc -O -D_XOPEN_SOURCE_EXTENDED  -DRUBY_EXPORT  -I. -I.  -c bignum.c
"bignum.c", line 1351: warning #2068-D: integer conversion resulted in a
          change of sign
      while ((q & (1<<(BITSPERDIG-1))) == 0) {
                  ^

"bignum.c", line 1906: warning #2140-D: too many arguments in function call
            shift = big2ulong(y, "long", Qtrue);
                                         ^

"bignum.c", line 1975: warning #2140-D: too many arguments in function call
            shift = big2ulong(y, "long", Qtrue);
                                         ^

"bignum.c", line 2065: warning #2140-D: too many arguments in function call
        shift = big2ulong(y, "long", Qfalse);
                                     ^

"bignum.c", line 1551: warning #2177-D: function "big_shift" was declared but
          never referenced
  static VALUE big_shift(x, n)
               ^

cc -O -D_XOPEN_SOURCE_EXTENDED  -DRUBY_EXPORT  -I. -I.  -c class.c
cc -O -D_XOPEN_SOURCE_EXTENDED  -DRUBY_EXPORT  -I. -I.  -c compar.c
cc -O -D_XOPEN_SOURCE_EXTENDED  -DRUBY_EXPORT  -I. -I.  -c dir.c
"dir.c", line 471: warning #2177-D: function "dir_inspect" was declared but
          never referenced
  dir_inspect(dir)
  ^

cc -O -D_XOPEN_SOURCE_EXTENDED  -DRUBY_EXPORT  -I. -I.  -c dln.c
"dln.c", line 1366: warning #2185-D: dynamic initialization in unreachable code
        shl_t lib = NULL;
              ^

cc -O -D_XOPEN_SOURCE_EXTENDED  -DRUBY_EXPORT  -I. -I.  -c enum.c
cc -O -D_XOPEN_SOURCE_EXTENDED  -DRUBY_EXPORT  -I. -I.  -c error.c
"error.c", line 883: warning #3197-D: the prototype declaration of
          "char *strerror(int)" (declared at line 104 of
          "/usr/include/string.h") is ignored after this unprototyped
          redeclaration
      char *strerror();
            ^

"error.c", line 1088: warning #3305-D: function declared with "noreturn" does
          return
  }
  ^

"error.c", line 1157: warning #3305-D: function declared with "noreturn" does
          return
  }
  ^

"error.c", line 1164: warning #3305-D: function declared with "noreturn" does
          return
  }
  ^

cc -O -D_XOPEN_SOURCE_EXTENDED  -DRUBY_EXPORT  -I. -I.  -c eval.c
"eval.c", line 5170: warning #2111-D: statement is unreachable
      return Qnil;              /* dummy */
      ^

"eval.c", line 6680: warning #2180-D: argument is incompatible with formal
          parameter
      return exec_under(eval_under_i, under, under, args);
                                                    ^

"eval.c", line 6695: warning #2180-D: argument is incompatible with formal
          parameter
      return exec_under(yield_under_i, under, 0, self);
                                                 ^

"eval.c", line 10450: warning #3305-D: function declared with "noreturn" does
          return
  }
  ^

"eval.c", line 10520: warning #3305-D: function declared with "noreturn" does
          return
  }
  ^

"eval.c", line 10535: warning #3305-D: function declared with "noreturn" does
          return
  }
  ^

"eval.c", line 12140: warning #2180-D: argument is incompatible with formal
          parameter
      return rb_thread_start_0(rb_thread_yield, args, th);
                                                ^

"eval.c", line 12161: warning #2180-D: argument is incompatible with formal
          parameter
      return rb_thread_start_0(rb_thread_yield, args, rb_thread_alloc(klass));
                                                ^

cc -O -D_XOPEN_SOURCE_EXTENDED  -DRUBY_EXPORT  -I. -I.  -c file.c
cc -O -D_XOPEN_SOURCE_EXTENDED  -DRUBY_EXPORT  -I. -I.  -c gc.c
"gc.c", line 893: warning #2180-D: argument is incompatible with formal
          parameter
            if (is_pointer_to_heap(obj->as.node.u1.node)) {
                                   ^

"gc.c", line 896: warning #2180-D: argument is incompatible with formal
          parameter
            if (is_pointer_to_heap(obj->as.node.u2.node)) {
                                   ^

"gc.c", line 899: warning #2180-D: argument is incompatible with formal
          parameter
            if (is_pointer_to_heap(obj->as.node.u3.node)) {
                                   ^

"gc.c", line 996: warning #2180-D: argument is incompatible with formal
          parameter
               is_pointer_to_heap(obj) ? "corrupted object" : "non object");
                                  ^

cc -O -D_XOPEN_SOURCE_EXTENDED  -DRUBY_EXPORT  -I. -I.  -c hash.c
cc -O -D_XOPEN_SOURCE_EXTENDED  -DRUBY_EXPORT  -I. -I.  -c inits.c
cc -O -D_XOPEN_SOURCE_EXTENDED  -DRUBY_EXPORT  -I. -I.  -c io.c
cc -O -D_XOPEN_SOURCE_EXTENDED  -DRUBY_EXPORT  -I. -I.  -c marshal.c
"marshal.c", line 1094, procedure r_object0: warning #20010-D: Floating-point
          DIVIDE BY ZERO exception generated

"marshal.c", line 1091, procedure r_object0: warning #20010-D: Floating-point
          DIVIDE BY ZERO exception generated

"marshal.c", line 1088, procedure r_object0: warning #20009-D: Floating-point
          INVALID exception generated

cc -O -D_XOPEN_SOURCE_EXTENDED  -DRUBY_EXPORT  -I. -I.  -c math.c
cc -O -D_XOPEN_SOURCE_EXTENDED  -DRUBY_EXPORT  -I. -I.  -c numeric.c
cc -O -D_XOPEN_SOURCE_EXTENDED  -DRUBY_EXPORT  -I. -I.  -c object.c
cc -O -D_XOPEN_SOURCE_EXTENDED  -DRUBY_EXPORT  -I. -I.  -c pack.c
cc -O -D_XOPEN_SOURCE_EXTENDED  -DRUBY_EXPORT  -I. -I.  -c parse.c
"parse.c", line 7083: warning #2177-D: label "yyerrorlab" was declared but
          never referenced
  yyerrorlab:
  ^

"parse.y", line 3134: warning #2068-D: integer conversion resulted in a change
          of sign
            quote->nd_func = -1;
                             ^

"parse.y", line 3338: warning #2068-D: integer conversion resulted in a change
          of sign
      lex_strterm = NEW_STRTERM(-1, 0, 0);
                    ^

cc -O -D_XOPEN_SOURCE_EXTENDED  -DRUBY_EXPORT  -I. -I.  -c process.c
"process.c", line 2570: warning #2068-D: integer conversion resulted in a
          change of sign
      if (ngroups == -1)
                     ^

cc -O -D_XOPEN_SOURCE_EXTENDED  -DRUBY_EXPORT  -I. -I.  -c prec.c
cc -O -D_XOPEN_SOURCE_EXTENDED  -DRUBY_EXPORT  -I. -I.  -c random.c
cc -O -D_XOPEN_SOURCE_EXTENDED  -DRUBY_EXPORT  -I. -I.  -c range.c
"range.c", line 363: warning #2180-D: argument is incompatible with formal
          parameter
            range_each_func(range, step_i, b, e, args);
                                   ^

"range.c", line 363: warning #2180-D: argument is incompatible with formal
          parameter
            range_each_func(range, step_i, b, e, args);
                                                 ^

cc -O -D_XOPEN_SOURCE_EXTENDED  -DRUBY_EXPORT  -I. -I.  -c re.c
cc -O -D_XOPEN_SOURCE_EXTENDED  -DRUBY_EXPORT  -I. -I.  -c regex.c
"regex.c", line 1164: warning #2068-D: integer conversion resulted in a change
          of sign
      if (c != '-') return -1;
                           ^

"regex.c", line 1516: warning #2068-D: integer conversion resulted in a change
          of sign
            last = -1;
                   ^

"regex.c", line 1527: warning #2068-D: integer conversion resulted in a change
          of sign
            last = -1;
                   ^

"regex.c", line 1535: warning #2068-D: integer conversion resulted in a change
          of sign
            last = -1;
                   ^

"regex.c", line 1545: warning #2068-D: integer conversion resulted in a change
          of sign
            last = -1;
                   ^

"regex.c", line 1552: warning #2068-D: integer conversion resulted in a change
          of sign
            last = -1;
                   ^

"regex.c", line 1562: warning #2068-D: integer conversion resulted in a change
          of sign
            last = -1;
                   ^

"regex.c", line 2318: warning #2186-D: pointless comparison of unsigned
          integer with zero
        GET_UNSIGNED_NUMBER(c1);
        ^

"regex.c", line 2590: warning #2177-D: function "insert_op" was declared but
          never referenced
  insert_op(op, there, current_end)
  ^

"regex.c", line 1002: warning #2177-D: function "print_compiled_pattern" was
          declared but never referenced
  print_compiled_pattern(bufp)
  ^

cc -O -D_XOPEN_SOURCE_EXTENDED  -DRUBY_EXPORT  -I. -I.  -c ruby.c
cc -O -D_XOPEN_SOURCE_EXTENDED  -DRUBY_EXPORT  -I. -I.  -c signal.c
cc -O -D_XOPEN_SOURCE_EXTENDED  -DRUBY_EXPORT  -I. -I.  -c sprintf.c
cc -O -D_XOPEN_SOURCE_EXTENDED  -DRUBY_EXPORT  -I. -I.  -c st.c
cc -O -D_XOPEN_SOURCE_EXTENDED  -DRUBY_EXPORT  -I. -I.  -c string.c
"string.c", line 1560: warning #2111-D: statement is unreachable
      return Qnil;              /* not reached */
      ^

"string.c", line 4361: warning #3197-D: the prototype declaration of
          "char *crypt(const char *, const char *)" (declared at line 258 of
          "/usr/include/sys/unistd.h") is ignored after this unprototyped
          redeclaration
      extern char *crypt();
                   ^

cc -O -D_XOPEN_SOURCE_EXTENDED  -DRUBY_EXPORT  -I. -I.  -c struct.c
cc -O -D_XOPEN_SOURCE_EXTENDED  -DRUBY_EXPORT  -I. -I.  -c time.c
cc -O -D_XOPEN_SOURCE_EXTENDED  -DRUBY_EXPORT  -I. -I.  -c util.c
cc -O -D_XOPEN_SOURCE_EXTENDED  -DRUBY_EXPORT  -I. -I.  -c variable.c
cc -O -D_XOPEN_SOURCE_EXTENDED  -DRUBY_EXPORT  -I. -I.  -c version.c
cc -O -D_XOPEN_SOURCE_EXTENDED  -DRUBY_EXPORT  -I. -I.  -c ./missing/flock.c
cc -O -D_XOPEN_SOURCE_EXTENDED  -DRUBY_EXPORT  -I. -I.  -c ./missing/isinf.c
cc -O -D_XOPEN_SOURCE_EXTENDED  -DRUBY_EXPORT  -c ia64.s
cc -O -D_XOPEN_SOURCE_EXTENDED  -DRUBY_EXPORT  -I. -I.  -c dmyext.c
ar rcu libruby-static.a array.o bignum.o class.o compar.o dir.o dln.o enum.o error.o eval.o file.o gc.o hash.o inits.o io.o marshal.o math.o numeric.o object.o pack.o parse.o process.o prec.o random.o range.o re.o regex.o ruby.o signal.o sprintf.o st.o string.o struct.o time.o util.o variable.o version.o flock.o isinf.o ia64.o  dmyext.o
cc -O -D_XOPEN_SOURCE_EXTENDED  -DRUBY_EXPORT  -I. -I.  -c main.c
cc -O -D_XOPEN_SOURCE_EXTENDED  -DRUBY_EXPORT  -L.  -Wl,-E   main.o dmydln.o libruby-static.a -ldld -ldl -lm   -o miniruby
rbconfig.rb unchanged
compiling Win32API
compiling bigdecimal
gmake[1]: Entering directory `/house/kogkog/src/ruby186/ext/bigdecimal'
mkdir -p ../../.ext/ia64-hpux11.23
cc -I. -I../.. -I../../. -I../.././ext/bigdecimal  +Z -O -D_XOPEN_SOURCE_EXTENDED  -c bigdecimal.c
"bigdecimal.c", line 442: warning #2068-D: integer conversion resulted in a
          change of sign
      if(!VpIsDef(a) || !VpIsDef(b)) return (-1L);
                                            ^

"bigdecimal.c", line 663: warning #2068-D: integer conversion resulted in a
          change of sign
      if(mx==(-1L)) {
             ^

"bigdecimal.c", line 704: warning #2068-D: integer conversion resulted in a
          change of sign
      if(mx==(-1L)) {
             ^

"bigdecimal.c", line 2814: warning #2068-D: integer conversion resulted in a
          change of sign
      if(word_shift==-1L) return 0; /* Overflow */
                     ^

"bigdecimal.c", line 2815: warning #2068-D: integer conversion resulted in a
          change of sign
      if(b_pos == -1L) goto Assign_a;
                  ^

"bigdecimal.c", line 2907: warning #2068-D: integer conversion resulted in a
          change of sign
      if(word_shift==-1L) return 0; /* Overflow */
                     ^

"bigdecimal.c", line 2908: warning #2068-D: integer conversion resulted in a
          change of sign
      if(b_pos == -1L) goto Assign_a;
                  ^

"bigdecimal.c", line 3048: warning #2068-D: integer conversion resulted in a
          change of sign
                  *b_pos = -1L;
                           ^

"bigdecimal.c", line 3072: warning #2068-D: integer conversion resulted in a
          change of sign
      if(!AddExponent(c,(S_LONG)1)) return (-1L);
                                           ^

"bigdecimal.c", line 3180: warning #2186-D: pointless comparison of unsigned
          integer with zero
                  while((--ii) >= 0) {
                               ^

"bigdecimal.c", line 3924: warning #2186-D: pointless comparison of unsigned
          integer with zero
      if(ni >= 0) {
            ^

"bigdecimal.c", line 4236: warning #2111-D: statement is unreachable
          goto Exit;
          ^

"bigdecimal.c", line 2171: warning #2177-D: function "VpIsNegDoubleZero" was
          declared but never referenced
  VpIsNegDoubleZero(double v)
  ^

"bigdecimal.c", line 4156: warning #2177-D: function "VpItoV" was declared but
          never referenced
  VpItoV(Real *m, S_INT ival)
  ^

ld -b -o ../../.ext/ia64-hpux11.23/bigdecimal.sl bigdecimal.o -L. -L../.. -L.   -E   -ldld -ldl -lm   -lc
mkdir -p ../../.ext/common/bigdecimal
cp ../.././ext/bigdecimal/lib/bigdecimal/util.rb ../../.ext/common/bigdecimal
cp ../.././ext/bigdecimal/lib/bigdecimal/newton.rb ../../.ext/common/bigdecimal
cp ../.././ext/bigdecimal/lib/bigdecimal/math.rb ../../.ext/common/bigdecimal
cp ../.././ext/bigdecimal/lib/bigdecimal/jacobian.rb ../../.ext/common/bigdecimal
cp ../.././ext/bigdecimal/lib/bigdecimal/ludcmp.rb ../../.ext/common/bigdecimal
gmake[1]: Leaving directory `/house/kogkog/src/ruby186/ext/bigdecimal'
compiling curses
gmake[1]: Entering directory `/house/kogkog/src/ruby186/ext/curses'
cc -I. -I../.. -I../../. -I../.././ext/curses -DHAVE_CURSES_H -DHAVE_BEEP -DHAVE_BKGD -DHAVE_BKGDSET -DHAVE_CURS_SET -DHAVE_DELETELN -DHAVE_DOUPDATE -DHAVE_FLASH -DHAVE_GETBKGD -DHAVE_GETNSTR -DHAVE_ISENDWIN -DHAVE_KEYNAME -DHAVE_KEYPAD -DHAVE_SCRL -DHAVE_SETSCRREG -DHAVE_UNGETCH -DHAVE_WATTROFF -DHAVE_WATTRON -DHAVE_WATTRSET -DHAVE_WBKGD -DHAVE_WBKGDSET -DHAVE_WDELETELN -DHAVE_WGETNSTR -DHAVE_WSCRL -DHAVE_WSETSCRREG -DHAVE_DEF_PROG_MODE -DHAVE_RESET_PROG_MODE -DHAVE_TIMEOUT -DHAVE_WTIMEOUT -DHAVE_NODELAY -DHAVE_INIT_COLOR -DHAVE_WCOLOR_SET  +Z -O -D_XOPEN_SOURCE_EXTENDED  -c curses.c
ld -b -o ../../.ext/ia64-hpux11.23/curses.sl curses.o -L. -L../.. -L.   -E   -lcurses  -ldld -ldl -lm   -lc
gmake[1]: Leaving directory `/house/kogkog/src/ruby186/ext/curses'
compiling dbm
gmake[1]: Entering directory `/house/kogkog/src/ruby186/ext/dbm'
cc -I. -I../.. -I../../. -I../.././ext/dbm -DHAVE_DBM_OPEN -DHAVE_TYPE_DBM -DHAVE_DBM_CLEARERR -DDBM_HDR="<ndbm.h>"  +Z -O -D_XOPEN_SOURCE_EXTENDED  -c dbm.c
ld -b -o ../../.ext/ia64-hpux11.23/dbm.sl dbm.o -L. -L../.. -L.   -E   -ldld -ldl -lm   -lc
gmake[1]: Leaving directory `/house/kogkog/src/ruby186/ext/dbm'
compiling digest
gmake[1]: Entering directory `/house/kogkog/src/ruby186/ext/digest'
cc -I. -I../.. -I../../. -I../.././ext/digest  +Z -O -D_XOPEN_SOURCE_EXTENDED  -c digest.c
ld -b -o ../../.ext/ia64-hpux11.23/digest.sl digest.o -L. -L../.. -L.   -E   -ldld -ldl -lm   -lc
cp ../.././ext/digest/lib/md5.rb ../../.ext/common
cp ../.././ext/digest/lib/sha1.rb ../../.ext/common
cp ../.././ext/digest/lib/digest.rb ../../.ext/common
cp ../.././ext/digest/digest.h ../../.ext/ia64-hpux11.23
gmake[1]: Leaving directory `/house/kogkog/src/ruby186/ext/digest'
compiling digest/bubblebabble
gmake[1]: Entering directory `/house/kogkog/src/ruby186/ext/digest/bubblebabble'
mkdir -p ../../../.ext/ia64-hpux11.23/digest
cc -I. -I../../.. -I../../../. -I../../.././ext/digest/bubblebabble -I../../.././ext/digest/bubblebabble/.. -DHAVE_CONFIG_H  +Z -O -D_XOPEN_SOURCE_EXTENDED  -c bubblebabble.c
ld -b -o ../../../.ext/ia64-hpux11.23/digest/bubblebabble.sl bubblebabble.o -L. -L../../.. -L.   -E   -ldld -ldl -lm   -lc
gmake[1]: Leaving directory `/house/kogkog/src/ruby186/ext/digest/bubblebabble'
compiling digest/md5
gmake[1]: Entering directory `/house/kogkog/src/ruby186/ext/digest/md5'
cc -I. -I../../.. -I../../../. -I../../.././ext/digest/md5 -I../../.././ext/digest/md5/.. -DHAVE_CONFIG_H -DHAVE_OPENSSL_MD5_H -DHAVE_INTTYPES_H -DHAVE_UNISTD_H  +Z -O -D_XOPEN_SOURCE_EXTENDED  -c md5init.c
cc -I. -I../../.. -I../../../. -I../../.././ext/digest/md5 -I../../.././ext/digest/md5/.. -DHAVE_CONFIG_H -DHAVE_OPENSSL_MD5_H -DHAVE_INTTYPES_H -DHAVE_UNISTD_H  +Z -O -D_XOPEN_SOURCE_EXTENDED  -c md5ossl.c
ld -b -o ../../../.ext/ia64-hpux11.23/digest/md5.sl md5init.o md5ossl.o -L. -L../../.. -L.   -E   -lcrypto  -ldld -ldl -lm   -lc
gmake[1]: Leaving directory `/house/kogkog/src/ruby186/ext/digest/md5'
compiling digest/rmd160
gmake[1]: Entering directory `/house/kogkog/src/ruby186/ext/digest/rmd160'
cc -I. -I../../.. -I../../../. -I../../.././ext/digest/rmd160 -I../../.././ext/digest/rmd160/.. -DNDEBUG -DHAVE_CONFIG_H -DHAVE_OPENSSL_RIPEMD_H -DHAVE_INTTYPES_H -DHAVE_UNISTD_H  +Z -O -D_XOPEN_SOURCE_EXTENDED  -c rmd160init.c
cc -I. -I../../.. -I../../../. -I../../.././ext/digest/rmd160 -I../../.././ext/digest/rmd160/.. -DNDEBUG -DHAVE_CONFIG_H -DHAVE_OPENSSL_RIPEMD_H -DHAVE_INTTYPES_H -DHAVE_UNISTD_H  +Z -O -D_XOPEN_SOURCE_EXTENDED  -c rmd160ossl.c
ld -b -o ../../../.ext/ia64-hpux11.23/digest/rmd160.sl rmd160init.o rmd160ossl.o -L. -L../../.. -L.   -E   -lcrypto  -ldld -ldl -lm   -lc
gmake[1]: Leaving directory `/house/kogkog/src/ruby186/ext/digest/rmd160'
compiling digest/sha1
gmake[1]: Entering directory `/house/kogkog/src/ruby186/ext/digest/sha1'
cc -I. -I../../.. -I../../../. -I../../.././ext/digest/sha1 -I../../.././ext/digest/sha1/.. -DHAVE_CONFIG_H -DHAVE_OPENSSL_SHA_H -DHAVE_INTTYPES_H -DHAVE_UNISTD_H  +Z -O -D_XOPEN_SOURCE_EXTENDED  -c sha1init.c
cc -I. -I../../.. -I../../../. -I../../.././ext/digest/sha1 -I../../.././ext/digest/sha1/.. -DHAVE_CONFIG_H -DHAVE_OPENSSL_SHA_H -DHAVE_INTTYPES_H -DHAVE_UNISTD_H  +Z -O -D_XOPEN_SOURCE_EXTENDED  -c sha1ossl.c
ld -b -o ../../../.ext/ia64-hpux11.23/digest/sha1.sl sha1init.o sha1ossl.o -L. -L../../.. -L.   -E   -lcrypto  -ldld -ldl -lm   -lc
gmake[1]: Leaving directory `/house/kogkog/src/ruby186/ext/digest/sha1'
compiling digest/sha2
gmake[1]: Entering directory `/house/kogkog/src/ruby186/ext/digest/sha2'
cc -I. -I../../.. -I../../../. -I../../.././ext/digest/sha2 -I../../.././ext/digest/sha2/.. -DHAVE_CONFIG_H -DHAVE_INTTYPES_H -DHAVE_UNISTD_H -DHAVE_TYPE_UINT64_T  +Z -O -D_XOPEN_SOURCE_EXTENDED  -c sha2.c
cc -I. -I../../.. -I../../../. -I../../.././ext/digest/sha2 -I../../.././ext/digest/sha2/.. -DHAVE_CONFIG_H -DHAVE_INTTYPES_H -DHAVE_UNISTD_H -DHAVE_TYPE_UINT64_T  +Z -O -D_XOPEN_SOURCE_EXTENDED  -c sha2init.c
ld -b -o ../../../.ext/ia64-hpux11.23/digest/sha2.sl sha2.o sha2init.o -L. -L../../.. -L.   -E   -ldld -ldl -lm   -lc
mkdir -p ../../../.ext/common/digest
cp ../../.././ext/digest/sha2/lib/sha2.rb ../../../.ext/common/digest
gmake[1]: Leaving directory `/house/kogkog/src/ruby186/ext/digest/sha2'
compiling dl
gmake[1]: Entering directory `/house/kogkog/src/ruby186/ext/dl'
cc -I. -I../.. -I../../. -I../.././ext/dl -DHAVE_DLFCN_H -DHAVE_DLOPEN -DHAVE_DLCLOSE -DHAVE_DLSYM -DHAVE_DLERROR  -I. +Z -O -D_XOPEN_SOURCE_EXTENDED  -c dl.c
cc -I. -I../.. -I../../. -I../.././ext/dl -DHAVE_DLFCN_H -DHAVE_DLOPEN -DHAVE_DLCLOSE -DHAVE_DLSYM -DHAVE_DLERROR  -I. +Z -O -D_XOPEN_SOURCE_EXTENDED  -c handle.c
"handle.c", line 168: warning #2513-D: a value of type "void *" cannot be
          assigned to an entity of type "void (*)()"
    func = dlsym(handle, name);
         ^

cc -I. -I../.. -I../../. -I../.././ext/dl -DHAVE_DLFCN_H -DHAVE_DLOPEN -DHAVE_DLCLOSE -DHAVE_DLSYM -DHAVE_DLERROR  -I. +Z -O -D_XOPEN_SOURCE_EXTENDED  -c ptr.c
cc -I. -I../.. -I../../. -I../.././ext/dl -DHAVE_DLFCN_H -DHAVE_DLOPEN -DHAVE_DLCLOSE -DHAVE_DLSYM -DHAVE_DLERROR  -I. +Z -O -D_XOPEN_SOURCE_EXTENDED  -c sym.c
"sym.c", line 119: warning #2513-D: a value of type "void *" cannot be
          assigned to an entity of type "freefunc_t"
      func = data->func;
           ^

"sym.c", line 370: warning #2144-D: a value of type "void *" cannot be used to
          initialize an entity of type "void (*)(long, long, long, long, long,
          long, long, long, long, long, long, long, long, long, long)"
        void (*f)(DLSTACK_PROTO) = func;
                                   ^

"sym.c", line 377: warning #2144-D: a value of type "void *" cannot be used to
          initialize an entity of type "void *(*)(long, long, long, long,
          long, long, long, long, long, long, long, long, long, long, long)"
        void * (*f)(DLSTACK_PROTO) = func;
                                     ^

"sym.c", line 384: warning #2144-D: a value of type "void *" cannot be used to
          initialize an entity of type "char (*)(long, long, long, long, long,
          long, long, long, long, long, long, long, long, long, long)"
        char (*f)(DLSTACK_PROTO) = func;
                                   ^

"sym.c", line 391: warning #2144-D: a value of type "void *" cannot be used to
          initialize an entity of type "short (*)(long, long, long, long,
          long, long, long, long, long, long, long, long, long, long, long)"
        short (*f)(DLSTACK_PROTO) = func;
                                    ^

"sym.c", line 398: warning #2144-D: a value of type "void *" cannot be used to
          initialize an entity of type "int (*)(long, long, long, long, long,
          long, long, long, long, long, long, long, long, long, long)"
        int (*f)(DLSTACK_PROTO) = func;
                                  ^

"sym.c", line 405: warning #2144-D: a value of type "void *" cannot be used to
          initialize an entity of type "long (*)(long, long, long, long, long,
          long, long, long, long, long, long, long, long, long, long)"
        long (*f)(DLSTACK_PROTO) = func;
                                   ^

"sym.c", line 412: warning #2144-D: a value of type "void *" cannot be used to
          initialize an entity of type "float (*)(long, long, long, long,
          long, long, long, long, long, long, long, long, long, long, long)"
        float (*f)(DLSTACK_PROTO) = func;
                                    ^

"sym.c", line 419: warning #2144-D: a value of type "void *" cannot be used to
          initialize an entity of type "double (*)(long, long, long, long,
          long, long, long, long, long, long, long, long, long, long, long)"
        double (*f)(DLSTACK_PROTO) = func;
                                     ^

"sym.c", line 426: warning #2144-D: a value of type "void *" cannot be used to
          initialize an entity of type "char *(*)(long, long, long, long,
          long, long, long, long, long, long, long, long, long, long, long)"
        char * (*f)(DLSTACK_PROTO) = func;
                                     ^

ld -b -o ../../.ext/ia64-hpux11.23/dl.sl dl.o handle.o ptr.o sym.o -L. -L../.. -L.   -E   -ldl  -ldld -ldl -lm   -lc
mkdir -p ../../.ext/common/dl
cp ../.././ext/dl/lib/dl/win32.rb ../../.ext/common/dl
cp ../.././ext/dl/lib/dl/types.rb ../../.ext/common/dl
cp ../.././ext/dl/lib/dl/import.rb ../../.ext/common/dl
cp ../.././ext/dl/lib/dl/struct.rb ../../.ext/common/dl
cp dlconfig.h ../../.ext/ia64-hpux11.23
cp ../.././ext/dl/dl.h ../../.ext/ia64-hpux11.23
gmake[1]: Leaving directory `/house/kogkog/src/ruby186/ext/dl'
compiling enumerator
gmake[1]: Entering directory `/house/kogkog/src/ruby186/ext/enumerator'
cc -I. -I../.. -I../../. -I../.././ext/enumerator  +Z -O -D_XOPEN_SOURCE_EXTENDED  -c enumerator.c
ld -b -o ../../.ext/ia64-hpux11.23/enumerator.sl enumerator.o -L. -L../.. -L.   -E   -ldld -ldl -lm   -lc
gmake[1]: Leaving directory `/house/kogkog/src/ruby186/ext/enumerator'
compiling etc
gmake[1]: Entering directory `/house/kogkog/src/ruby186/ext/etc'
cc -I. -I../.. -I../../. -I../.././ext/etc -DHAVE_GETLOGIN -DHAVE_GETPWENT -DHAVE_GETGRENT -DHAVE_ST_PW_GECOS -DHAVE_ST_PW_AGE -DPW_AGE2VAL=safe_setup_str -DHAVE_ST_PW_COMMENT -DHAVE_ST_PW_PASSWD -DHAVE_ST_GR_PASSWD -DHAVE_TYPE_UID_T -DPW_UID2VAL=INT2NUM -DPW_VAL2UID=NUM2INT -DHAVE_TYPE_GID_T -DPW_GID2VAL=INT2NUM -DPW_VAL2GID=NUM2INT  +Z -O -D_XOPEN_SOURCE_EXTENDED  -c etc.c
ld -b -o ../../.ext/ia64-hpux11.23/etc.sl etc.o -L. -L../.. -L.   -E   -ldld -ldl -lm   -lc
gmake[1]: Leaving directory `/house/kogkog/src/ruby186/ext/etc'
compiling fcntl
gmake[1]: Entering directory `/house/kogkog/src/ruby186/ext/fcntl'
cc -I. -I../.. -I../../. -I../.././ext/fcntl  +Z -O -D_XOPEN_SOURCE_EXTENDED  -c fcntl.c
ld -b -o ../../.ext/ia64-hpux11.23/fcntl.sl fcntl.o -L. -L../.. -L.   -E   -ldld -ldl -lm   -lc
gmake[1]: Leaving directory `/house/kogkog/src/ruby186/ext/fcntl'
compiling gdbm
compiling iconv
gmake[1]: Entering directory `/house/kogkog/src/ruby186/ext/iconv'
cc -I. -I../.. -I../../. -I../.././ext/iconv -DHAVE_ICONV  +Z -O -D_XOPEN_SOURCE_EXTENDED  -c iconv.c
"iconv.c", line 199: warning #2068-D: integer conversion resulted in a change
          of sign
      iconv_close(VALUE2ICONV(cd));
                  ^

"iconv.c", line 213: warning #2068-D: integer conversion resulted in a change
          of sign
      if (cd && iconv_close(VALUE2ICONV(cd)) == -1)
                            ^

"iconv.c", line 441: warning #2186-D: pointless comparison of unsigned integer
          with zero
        if (0 <= outlen && outlen <= sizeof(buffer)) {
              ^

"iconv.c", line 549: warning #2068-D: integer conversion resulted in a change
          of sign
      DATA_PTR(self) = (void *)ICONV2VALUE(iconv_create(to, from));
                               ^

"iconv.c", line 572: warning #2068-D: integer conversion resulted in a change
          of sign
      VALUE cd = ICONV2VALUE(iconv_create(to, from));
                 ^

"iconv.c", line 647: warning #2068-D: integer conversion resulted in a change
          of sign
      return rb_ensure(iconv_s_convert, (VALUE)&arg, iconv_free, ICONV2VALUE(arg.cd));
                                                                 ^

"iconv.c", line 674: warning #2068-D: integer conversion resulted in a change
          of sign
      return rb_ensure(iconv_s_convert, (VALUE)&arg, iconv_free, ICONV2VALUE(arg.cd));
                                                                 ^

"iconv.c", line 697: warning #2068-D: integer conversion resulted in a change
          of sign
      return iconv_convert(VALUE2ICONV(cd), Qnil, 0, 0, NULL);
                           ^

"iconv.c", line 761: warning #2068-D: integer conversion resulted in a change
          of sign
      return iconv_convert(VALUE2ICONV(cd), str,
                           ^

ld -b -o ../../.ext/ia64-hpux11.23/iconv.sl iconv.o -L. -L../.. -L.   -E   -ldld -ldl -lm   -lc
gmake[1]: Leaving directory `/house/kogkog/src/ruby186/ext/iconv'
compiling io/wait
gmake[1]: Entering directory `/house/kogkog/src/ruby186/ext/io/wait'
mkdir -p ../../../.ext/ia64-hpux11.23/io
cc -I. -I../../.. -I../../../. -I../../.././ext/io/wait -DFIONREAD_HEADER="<sys/ioctl.h>"  +Z -O -D_XOPEN_SOURCE_EXTENDED  -c wait.c
ld -b -o ../../../.ext/ia64-hpux11.23/io/wait.sl wait.o -L. -L../../.. -L.   -E   -ldld -ldl -lm   -lc
mkdir -p ../../../.ext/common/io
cp ../../.././ext/io/wait/lib/nonblock.rb ../../../.ext/common/io
gmake[1]: Leaving directory `/house/kogkog/src/ruby186/ext/io/wait'
compiling nkf
gmake[1]: Entering directory `/house/kogkog/src/ruby186/ext/nkf'
cc -I. -I../.. -I../../. -I../.././ext/nkf  +Z -O -D_XOPEN_SOURCE_EXTENDED  -c nkf.c
"nkf.c", line 116: warning #4212-D: mismatch between character pointer types
          "char *" and "unsigned char *"
            options(option);
                    ^

"nkf.c", line 124: warning #4212-D: mismatch between character pointer types
          "char *" and "unsigned char *"
        options(option);
                ^

ld -b -o ../../.ext/ia64-hpux11.23/nkf.sl nkf.o -L. -L../.. -L.   -E   -ldld -ldl -lm   -lc
cp ../.././ext/nkf/lib/kconv.rb ../../.ext/common
gmake[1]: Leaving directory `/house/kogkog/src/ruby186/ext/nkf'
compiling openssl
gmake[1]: Entering directory `/house/kogkog/src/ruby186/ext/openssl'
cc -I. -I../.. -I../../. -I../.././ext/openssl -DRUBY_EXTCONF_H=\"extconf.h\"  +Z -O -D_XOPEN_SOURCE_EXTENDED  -c ossl_hmac.c
"ossl_hmac.c", line 97: warning #4212-D: mismatch between character pointer
          types "char *" and "const unsigned char *"
      HMAC_Update(ctx, RSTRING(data)->ptr, RSTRING(data)->len);
                       ^

"ossl_hmac.c", line 115: warning #4212-D: mismatch between character pointer
          types "char *" and "unsigned char *"
      HMAC_Final(&final, *buf, buf_len);
                         ^

"ossl_hmac.c", line 115: warning #2167-D: argument of type "int *" is
          incompatible with parameter of type "unsigned int *"
      HMAC_Final(&final, *buf, buf_len);
                               ^

"ossl_hmac.c", line 163: warning #4212-D: mismatch between character pointer
          types "char *" and "const unsigned char *"
               RSTRING(data)->ptr, RSTRING(data)->len, NULL, &buf_len);
               ^

"ossl_hmac.c", line 163: warning #2167-D: argument of type "int *" is
          incompatible with parameter of type "unsigned int *"
               RSTRING(data)->ptr, RSTRING(data)->len, NULL, &buf_len);
                                                             ^

"ossl_hmac.c", line 162: warning #4212-D: mismatch between character pointer
          types "unsigned char *" and "char *"
      buf = HMAC(GetDigestPtr(digest), RSTRING(key)->ptr, RSTRING(key)->len,
          ^

"ossl_hmac.c", line 179: warning #4212-D: mismatch between character pointer
          types "char *" and "const unsigned char *"
               RSTRING(data)->ptr, RSTRING(data)->len, NULL, &buf_len);
               ^

"ossl_hmac.c", line 179: warning #2167-D: argument of type "int *" is
          incompatible with parameter of type "unsigned int *"
               RSTRING(data)->ptr, RSTRING(data)->len, NULL, &buf_len);
                                                             ^

"ossl_hmac.c", line 178: warning #4212-D: mismatch between character pointer
          types "unsigned char *" and "char *"
      buf = HMAC(GetDigestPtr(digest), RSTRING(key)->ptr, RSTRING(key)->len,
          ^

cc -I. -I../.. -I../../. -I../.././ext/openssl -DRUBY_EXTCONF_H=\"extconf.h\"  +Z -O -D_XOPEN_SOURCE_EXTENDED  -c ossl_pkey_rsa.c
"ossl_pkey_rsa.c", line 239: warning #4212-D: mismatch between character
          pointer types "char *" and "unsigned char *"
      p = RSTRING(str)->ptr;
        ^

"ossl_pkey_rsa.c", line 261: warning #4212-D: mismatch between character
          pointer types "char *" and "const unsigned char *"
      buf_len = RSA_public_encrypt(RSTRING(buffer)->len, RSTRING(buffer)->ptr,
                                                         ^

"ossl_pkey_rsa.c", line 262: warning #4212-D: mismatch between character
          pointer types "char *" and "unsigned char *"
                                 RSTRING(str)->ptr, pkey->pkey.rsa,
                                 ^

"ossl_pkey_rsa.c", line 283: warning #4212-D: mismatch between character
          pointer types "char *" and "const unsigned char *"
      buf_len = RSA_public_decrypt(RSTRING(buffer)->len, RSTRING(buffer)->ptr,
                                                         ^

"ossl_pkey_rsa.c", line 284: warning #4212-D: mismatch between character
          pointer types "char *" and "unsigned char *"
                                 RSTRING(str)->ptr, pkey->pkey.rsa,
                                 ^

"ossl_pkey_rsa.c", line 308: warning #4212-D: mismatch between character
          pointer types "char *" and "const unsigned char *"
      buf_len = RSA_private_encrypt(RSTRING(buffer)->len, RSTRING(buffer)->ptr,
                                                          ^

"ossl_pkey_rsa.c", line 309: warning #4212-D: mismatch between character
          pointer types "char *" and "unsigned char *"
                                  RSTRING(str)->ptr, pkey->pkey.rsa,
                                  ^

"ossl_pkey_rsa.c", line 333: warning #4212-D: mismatch between character
          pointer types "char *" and "const unsigned char *"
      buf_len = RSA_private_decrypt(RSTRING(buffer)->len, RSTRING(buffer)->ptr,
                                                          ^

"ossl_pkey_rsa.c", line 334: warning #4212-D: mismatch between character
          pointer types "char *" and "unsigned char *"
                                  RSTRING(str)->ptr, pkey->pkey.rsa,
                                  ^

cc -I. -I../.. -I../../. -I../.././ext/openssl -DRUBY_EXTCONF_H=\"extconf.h\"  +Z -O -D_XOPEN_SOURCE_EXTENDED  -c ossl_pkey_dh.c
"ossl_pkey_dh.c", line 216: warning #4212-D: mismatch between character
          pointer types "char *" and "unsigned char *"
      p = RSTRING(str)->ptr;
        ^

"ossl_pkey_dh.c", line 338: warning #4212-D: mismatch between character
          pointer types "char *" and "unsigned char *"
      if ((len = DH_compute_key(RSTRING(str)->ptr, pub_key, dh)) < 0) {
                                ^

cc -I. -I../.. -I../../. -I../.././ext/openssl -DRUBY_EXTCONF_H=\"extconf.h\"  +Z -O -D_XOPEN_SOURCE_EXTENDED  -c ossl_engine.c
cc -I. -I../.. -I../../. -I../.././ext/openssl -DRUBY_EXTCONF_H=\"extconf.h\"  +Z -O -D_XOPEN_SOURCE_EXTENDED  -c ossl_asn1.c
"ossl_asn1.c", line 36: warning #4212-D: mismatch between character pointer
          types "unsigned char *" and "const char *"
        if (sscanf(time->data, "%2d%2d%2d%2d%2d%2dZ", &tm.tm_year, &tm.tm_mon,
                   ^

"ossl_asn1.c", line 47: warning #4212-D: mismatch between character pointer
          types "unsigned char *" and "const char *"
        if (sscanf(time->data, "%4d%2d%2d%2d%2d%2dZ", &tm.tm_year, &tm.tm_mon,
                   ^

"ossl_asn1.c", line 83: warning #4212-D: mismatch between character pointer
          types "unsigned char *" and "const char *"
      return rb_str_new(str->data, str->length);
                        ^

"ossl_asn1.c", line 217: warning #4212-D: mismatch between character pointer
          types "char *" and "unsigned char *"
      ASN1_BIT_STRING_set(bstr, RSTRING(obj)->ptr, RSTRING(obj)->len);
                                ^

"ossl_asn1.c", line 359: warning #4212-D: mismatch between character pointer
          types "unsigned char *" and "char *"
      ret = ossl_buf2str(buf, len);
                         ^

"ossl_asn1.c", line 705: warning #4212-D: mismatch between character pointer
          types "char *" and "unsigned char *"
      p = RSTRING(der)->ptr;
        ^

"ossl_asn1.c", line 762: warning #4212-D: mismatch between character pointer
          types "unsigned char *" and "const char *"
            value = rb_str_new(p, len);
                               ^

"ossl_asn1.c", line 827: warning #4212-D: mismatch between character pointer
          types "char *" and "unsigned char *"
      p = RSTRING(tmp)->ptr;
        ^

"ossl_asn1.c", line 843: warning #4212-D: mismatch between character pointer
          types "char *" and "unsigned char *"
      p = RSTRING(tmp)->ptr;
        ^

"ossl_asn1.c", line 860: warning #4212-D: mismatch between character pointer
          types "char *" and "unsigned char *"
      p = RSTRING(tmp)->ptr;
        ^

"ossl_asn1.c", line 957: warning #4212-D: mismatch between character pointer
          types "unsigned char *" and "char *"
      str = ossl_buf2str(buf, reallen); /* buf will be free in ossl_buf2str */
                         ^

"ossl_asn1.c", line 979: warning #4212-D: mismatch between character pointer
          types "char *" and "unsigned char *"
      p = RSTRING(str)->ptr;
        ^

cc -I. -I../.. -I../../. -I../.././ext/openssl -DRUBY_EXTCONF_H=\"extconf.h\"  +Z -O -D_XOPEN_SOURCE_EXTENDED  -c ossl_pkcs12.c
"ossl_pkcs12.c", line 132: warning #4212-D: mismatch between character pointer
          types "char *" and "unsigned char *"
      p = RSTRING(str)->ptr;
        ^

cc -I. -I../.. -I../../. -I../.././ext/openssl -DRUBY_EXTCONF_H=\"extconf.h\"  +Z -O -D_XOPEN_SOURCE_EXTENDED  -c ossl_bn.c
"ossl_bn.c", line 127: warning #4212-D: mismatch between character pointer
          types "char *" and "const unsigned char *"
        if (!BN_mpi2bn(RSTRING(str)->ptr, RSTRING(str)->len, bn)) {
                       ^

"ossl_bn.c", line 132: warning #4212-D: mismatch between character pointer
          types "char *" and "const unsigned char *"
        if (!BN_bin2bn(RSTRING(str)->ptr, RSTRING(str)->len, bn)) {
                       ^

"ossl_bn.c", line 168: warning #4212-D: mismatch between character pointer
          types "char *" and "unsigned char *"
        if (BN_bn2mpi(bn, RSTRING(str)->ptr) != len)
                          ^

"ossl_bn.c", line 174: warning #4212-D: mismatch between character pointer
          types "char *" and "unsigned char *"
        if (BN_bn2bin(bn, RSTRING(str)->ptr) != len)
                          ^

cc -I. -I../.. -I../../. -I../.././ext/openssl -DRUBY_EXTCONF_H=\"extconf.h\"  +Z -O -D_XOPEN_SOURCE_EXTENDED  -c ossl_x509store.c
cc -I. -I../.. -I../../. -I../.././ext/openssl -DRUBY_EXTCONF_H=\"extconf.h\"  +Z -O -D_XOPEN_SOURCE_EXTENDED  -c ossl_ssl.c
"ossl_ssl.c", line 400: warning #4212-D: mismatch between character pointer
          types "char *" and "const unsigned char *"
        if (!SSL_CTX_set_session_id_context(ctx, RSTRING(val)->ptr,
                                                 ^

cc -I. -I../.. -I../../. -I../.././ext/openssl -DRUBY_EXTCONF_H=\"extconf.h\"  +Z -O -D_XOPEN_SOURCE_EXTENDED  -c ossl_x509ext.c
"ossl_x509ext.c", line 283: warning #4212-D: mismatch between character
          pointer types "char *" and "unsigned char *"
        p  = RSTRING(oid)->ptr;
           ^

"ossl_x509ext.c", line 412: warning #4212-D: mismatch between character
          pointer types "char *" and "unsigned char *"
      p = RSTRING(str)->ptr;
        ^

cc -I. -I../.. -I../../. -I../.././ext/openssl -DRUBY_EXTCONF_H=\"extconf.h\"  +Z -O -D_XOPEN_SOURCE_EXTENDED  -c ossl_config.c
cc -I. -I../.. -I../../. -I../.././ext/openssl -DRUBY_EXTCONF_H=\"extconf.h\"  +Z -O -D_XOPEN_SOURCE_EXTENDED  -c ossl_pkey.c
"ossl_pkey.c", line 174: warning #4212-D: mismatch between character pointer
          types "char *" and "unsigned char *"
      if (!EVP_SignFinal(&ctx, RSTRING(str)->ptr, &buf_len, pkey))
                               ^

"ossl_pkey.c", line 174: warning #2167-D: argument of type "int *" is
          incompatible with parameter of type "unsigned int *"
      if (!EVP_SignFinal(&ctx, RSTRING(str)->ptr, &buf_len, pkey))
                                                  ^

"ossl_pkey.c", line 194: warning #4212-D: mismatch between character pointer
          types "char *" and "unsigned char *"
      switch (EVP_VerifyFinal(&ctx, RSTRING(sig)->ptr, RSTRING(sig)->len, pkey)) {
                                    ^

cc -I. -I../.. -I../../. -I../.././ext/openssl -DRUBY_EXTCONF_H=\"extconf.h\"  +Z -O -D_XOPEN_SOURCE_EXTENDED  -c ossl_pkcs7.c
"ossl_pkcs7.c", line 754: warning #4212-D: mismatch between character pointer
          types "char *" and "unsigned char *"
      p = RSTRING(str)->ptr;
        ^

cc -I. -I../.. -I../../. -I../.././ext/openssl -DRUBY_EXTCONF_H=\"extconf.h\"  +Z -O -D_XOPEN_SOURCE_EXTENDED  -c ossl_digest.c
"ossl_digest.c", line 156: warning #4212-D: mismatch between character pointer
          types "char *" and "unsigned char *"
      EVP_DigestFinal_ex(&final, *buf, buf_len);
                                 ^

"ossl_digest.c", line 156: warning #2167-D: argument of type "int *" is
          incompatible with parameter of type "unsigned int *"
      EVP_DigestFinal_ex(&final, *buf, buf_len);
                                       ^

cc -I. -I../.. -I../../. -I../.././ext/openssl -DRUBY_EXTCONF_H=\"extconf.h\"  +Z -O -D_XOPEN_SOURCE_EXTENDED  -c ossl_pkey_dsa.c
"ossl_pkey_dsa.c", line 244: warning #4212-D: mismatch between character
          pointer types "char *" and "unsigned char *"
      p = RSTRING(str)->ptr;
        ^

"ossl_pkey_dsa.c", line 337: warning #4212-D: mismatch between character
          pointer types "char *" and "const unsigned char *"
      if (!DSA_sign(0, RSTRING(data)->ptr, RSTRING(data)->len, RSTRING(str)->ptr,
                       ^

"ossl_pkey_dsa.c", line 337: warning #4212-D: mismatch between character
          pointer types "char *" and "unsigned char *"
      if (!DSA_sign(0, RSTRING(data)->ptr, RSTRING(data)->len, RSTRING(str)->ptr,
                                                               ^

"ossl_pkey_dsa.c", line 338: warning #2167-D: argument of type "int *" is
          incompatible with parameter of type "unsigned int *"
                  &buf_len, pkey->pkey.dsa)) { /* type is ignored (0) */
                  ^

"ossl_pkey_dsa.c", line 357: warning #4212-D: mismatch between character
          pointer types "char *" and "const unsigned char *"
      ret = DSA_verify(0, RSTRING(digest)->ptr, RSTRING(digest)->len,
                          ^

"ossl_pkey_dsa.c", line 358: warning #4212-D: mismatch between character
          pointer types "char *" and "const unsigned char *"
                     RSTRING(sig)->ptr, RSTRING(sig)->len, pkey->pkey.dsa);
                     ^

cc -I. -I../.. -I../../. -I../.././ext/openssl -DRUBY_EXTCONF_H=\"extconf.h\"  +Z -O -D_XOPEN_SOURCE_EXTENDED  -c ossl.c
cc -I. -I../.. -I../../. -I../.././ext/openssl -DRUBY_EXTCONF_H=\"extconf.h\"  +Z -O -D_XOPEN_SOURCE_EXTENDED  -c ossl_ns_spki.c
"ossl_ns_spki.c", line 66: warning #4212-D: mismatch between character pointer
          types "char *" and "unsigned char *"
        p = RSTRING(buffer)->ptr;
          ^

"ossl_ns_spki.c", line 90: warning #4212-D: mismatch between character pointer
          types "char *" and "unsigned char *"
      p = RSTRING(str)->ptr;
        ^

"ossl_ns_spki.c", line 175: warning #4212-D: mismatch between character
          pointer types "unsigned char *" and "const char *"
      return rb_str_new(spki->spkac->challenge->data,
                        ^

cc -I. -I../.. -I../../. -I../.././ext/openssl -DRUBY_EXTCONF_H=\"extconf.h\"  +Z -O -D_XOPEN_SOURCE_EXTENDED  -c ossl_cipher.c
"ossl_cipher.c", line 185: warning #4212-D: mismatch between character pointer
          types "char *" and "const unsigned char *"
                       RSTRING(pass)->ptr, RSTRING(pass)->len, 1, key, NULL);
                       ^

"ossl_cipher.c", line 226: warning #4212-D: mismatch between character pointer
          types "char *" and "unsigned char *"
        salt = RSTRING(vsalt)->ptr;
             ^

"ossl_cipher.c", line 232: warning #4212-D: mismatch between character pointer
          types "char *" and "const unsigned char *"
                   RSTRING(vpass)->ptr, RSTRING(vpass)->len, iter, key, iv); 
                   ^

"ossl_cipher.c", line 255: warning #4212-D: mismatch between character pointer
          types "char *" and "unsigned char *"
      if (!EVP_CipherUpdate(ctx, RSTRING(str)->ptr, &out_len, in, in_len))
                                 ^

"ossl_cipher.c", line 255: warning #4212-D: mismatch between character pointer
          types "char *" and "const unsigned char *"
      if (!EVP_CipherUpdate(ctx, RSTRING(str)->ptr, &out_len, in, in_len))
                                                              ^

"ossl_cipher.c", line 283: warning #4212-D: mismatch between character pointer
          types "char *" and "unsigned char *"
      if (!EVP_CipherFinal_ex(ctx, RSTRING(str)->ptr, &out_len))
                                   ^

"ossl_cipher.c", line 313: warning #4212-D: mismatch between character pointer
          types "char *" and "const unsigned char *"
      if (EVP_CipherInit_ex(ctx, NULL, NULL, RSTRING(key)->ptr, NULL, -1) != 1)
                                             ^

"ossl_cipher.c", line 330: warning #4212-D: mismatch between character pointer
          types "char *" and "const unsigned char *"
      if (EVP_CipherInit_ex(ctx, NULL, NULL, NULL, RSTRING(iv)->ptr, -1) != 1)
                                                   ^

cc -I. -I../.. -I../../. -I../.././ext/openssl -DRUBY_EXTCONF_H=\"extconf.h\"  +Z -O -D_XOPEN_SOURCE_EXTENDED  -c openssl_missing.c
cc -I. -I../.. -I../../. -I../.././ext/openssl -DRUBY_EXTCONF_H=\"extconf.h\"  +Z -O -D_XOPEN_SOURCE_EXTENDED  -c ossl_x509crl.c
cc -I. -I../.. -I../../. -I../.././ext/openssl -DRUBY_EXTCONF_H=\"extconf.h\"  +Z -O -D_XOPEN_SOURCE_EXTENDED  -c ossl_x509req.c
"ossl_x509req.c", line 174: warning #4212-D: mismatch between character
          pointer types "char *" and "unsigned char *"
      p = RSTRING(str)->ptr;
        ^

cc -I. -I../.. -I../../. -I../.././ext/openssl -DRUBY_EXTCONF_H=\"extconf.h\"  +Z -O -D_XOPEN_SOURCE_EXTENDED  -c ossl_x509name.c
"ossl_x509name.c", line 134: warning #4212-D: mismatch between character
          pointer types "char *" and "unsigned char *"
            p = RSTRING(str)->ptr;
              ^

"ossl_x509name.c", line 156: warning #4212-D: mismatch between character
          pointer types "char *" and "unsigned char *"
                RSTRING(value)->ptr, RSTRING(value)->len, -1, 0)) {
                ^

"ossl_x509name.c", line 228: warning #4212-D: mismatch between character
          pointer types "unsigned char *" and "const char *"
                          rb_str_new(entry->value->data, entry->value->length),
                                     ^

"ossl_x509name.c", line 294: warning #4212-D: mismatch between character
          pointer types "char *" and "unsigned char *"
      p = RSTRING(str)->ptr;
        ^

cc -I. -I../.. -I../../. -I../.././ext/openssl -DRUBY_EXTCONF_H=\"extconf.h\"  +Z -O -D_XOPEN_SOURCE_EXTENDED  -c ossl_x509revoked.c
cc -I. -I../.. -I../../. -I../.././ext/openssl -DRUBY_EXTCONF_H=\"extconf.h\"  +Z -O -D_XOPEN_SOURCE_EXTENDED  -c ossl_ocsp.c
"ossl_ocsp.c", line 137: warning #4212-D: mismatch between character pointer
          types "char *" and "unsigned char *"
        ret = OCSP_request_add1_nonce(req, RSTRING(val)->ptr, RSTRING(val)->len);
                                           ^

"ossl_ocsp.c", line 268: warning #4212-D: mismatch between character pointer
          types "char *" and "unsigned char *"
      p = RSTRING(str)->ptr;
        ^

"ossl_ocsp.c", line 319: warning #4212-D: mismatch between character pointer
          types "char *" and "unsigned char *"
        p = RSTRING(arg)->ptr;
          ^

"ossl_ocsp.c", line 380: warning #4212-D: mismatch between character pointer
          types "char *" and "unsigned char *"
      p = RSTRING(str)->ptr;
        ^

"ossl_ocsp.c", line 439: warning #4212-D: mismatch between character pointer
          types "char *" and "unsigned char *"
        ret = OCSP_basic_add1_nonce(bs, RSTRING(val)->ptr, RSTRING(val)->len);
                                        ^

cc -I. -I../.. -I../../. -I../.././ext/openssl -DRUBY_EXTCONF_H=\"extconf.h\"  +Z -O -D_XOPEN_SOURCE_EXTENDED  -c ossl_bio.c
cc -I. -I../.. -I../../. -I../.././ext/openssl -DRUBY_EXTCONF_H=\"extconf.h\"  +Z -O -D_XOPEN_SOURCE_EXTENDED  -c ossl_x509attr.c
"ossl_x509attr.c", line 98: warning #4212-D: mismatch between character
          pointer types "char *" and "unsigned char *"
        p = RSTRING(oid)->ptr;
          ^

"ossl_x509attr.c", line 195: warning #4212-D: mismatch between character
          pointer types "char *" and "unsigned char *"
        p = RSTRING(str)->ptr;
          ^

"ossl_x509attr.c", line 203: warning #4212-D: mismatch between character
          pointer types "char *" and "unsigned char *"
        p = RSTRING(str)->ptr;
          ^

"ossl_x509attr.c", line 225: warning #4212-D: mismatch between character
          pointer types "char *" and "unsigned char *"
      p = RSTRING(str)->ptr;
        ^

cc -I. -I../.. -I../../. -I../.././ext/openssl -DRUBY_EXTCONF_H=\"extconf.h\"  +Z -O -D_XOPEN_SOURCE_EXTENDED  -c ossl_rand.c
"ossl_rand.c", line 66: warning #4212-D: mismatch between character pointer
          types "char *" and "unsigned char *"
      if (!RAND_bytes(RSTRING(str)->ptr, FIX2INT(len))) {
                      ^

"ossl_rand.c", line 79: warning #4212-D: mismatch between character pointer
          types "char *" and "unsigned char *"
      if (!RAND_pseudo_bytes(RSTRING(str)->ptr, FIX2INT(len))) {
                             ^

cc -I. -I../.. -I../../. -I../.././ext/openssl -DRUBY_EXTCONF_H=\"extconf.h\"  +Z -O -D_XOPEN_SOURCE_EXTENDED  -c ossl_x509.c
cc -I. -I../.. -I../../. -I../.././ext/openssl -DRUBY_EXTCONF_H=\"extconf.h\"  +Z -O -D_XOPEN_SOURCE_EXTENDED  -c ossl_x509cert.c
"ossl_x509cert.c", line 184: warning #4212-D: mismatch between character
          pointer types "char *" and "unsigned char *"
      p = RSTRING(str)->ptr;
        ^

ld -b -o ../../.ext/ia64-hpux11.23/openssl.sl ossl_hmac.o ossl_pkey_rsa.o ossl_pkey_dh.o ossl_engine.o ossl_asn1.o ossl_pkcs12.o ossl_bn.o ossl_x509store.o ossl_ssl.o ossl_x509ext.o ossl_config.o ossl_pkey.o ossl_pkcs7.o ossl_digest.o ossl_pkey_dsa.o ossl.o ossl_ns_spki.o ossl_cipher.o openssl_missing.o ossl_x509crl.o ossl_x509req.o ossl_x509name.o ossl_x509revoked.o ossl_ocsp.o ossl_bio.o ossl_x509attr.o ossl_rand.o ossl_x509.o ossl_x509cert.o -L. -L../.. -L.   -E   -lssl -lcrypto -lnsl  -ldld -ldl -lm   -lc
mkdir -p ../../.ext/common/net
mkdir -p ../../.ext/common/openssl
cp ../.././ext/openssl/lib/net/ftptls.rb ../../.ext/common/net
cp ../.././ext/openssl/lib/net/telnets.rb ../../.ext/common/net
cp ../.././ext/openssl/lib/openssl.rb ../../.ext/common
cp ../.././ext/openssl/lib/openssl/cipher.rb ../../.ext/common/openssl
cp ../.././ext/openssl/lib/openssl/bn.rb ../../.ext/common/openssl
cp ../.././ext/openssl/lib/openssl/buffering.rb ../../.ext/common/openssl
cp ../.././ext/openssl/lib/openssl/x509.rb ../../.ext/common/openssl
cp ../.././ext/openssl/lib/openssl/digest.rb ../../.ext/common/openssl
cp ../.././ext/openssl/lib/openssl/ssl.rb ../../.ext/common/openssl
gmake[1]: Leaving directory `/house/kogkog/src/ruby186/ext/openssl'
compiling pty
gmake[1]: Entering directory `/house/kogkog/src/ruby186/ext/pty'
cc -I. -I../.. -I../../. -I../.././ext/pty -DHAVE_SYS_STROPTS_H -DHAVE_SETRESUID -DHAVE_PTSNAME  +Z -O -D_XOPEN_SOURCE_EXTENDED  -c pty.c
"pty.c", line 203: warning #3197-D: the prototype declaration of
          "char *getenv(const char *)" (declared at line 174 of
          "/usr/include/stdlib.h") is ignored after this unprototyped
          redeclaration
      char              *p, tmp, *getenv();
                                  ^

ld -b -o ../../.ext/ia64-hpux11.23/pty.sl pty.o -L. -L../.. -L.   -E   -ldld -ldl -lm   -lc
cp ../.././ext/pty/lib/expect.rb ../../.ext/common
gmake[1]: Leaving directory `/house/kogkog/src/ruby186/ext/pty'
compiling racc/cparse
gmake[1]: Entering directory `/house/kogkog/src/ruby186/ext/racc/cparse'
mkdir -p ../../../.ext/ia64-hpux11.23/racc
cc -I. -I../../.. -I../../../. -I../../.././ext/racc/cparse  +Z -O -D_XOPEN_SOURCE_EXTENDED  -c cparse.c
ld -b -o ../../../.ext/ia64-hpux11.23/racc/cparse.sl cparse.o -L. -L../../.. -L.   -E   -ldld -ldl -lm   -lc
gmake[1]: Leaving directory `/house/kogkog/src/ruby186/ext/racc/cparse'
compiling readline
compiling sdbm
gmake[1]: Entering directory `/house/kogkog/src/ruby186/ext/sdbm'
cc -I. -I../.. -I../../. -I../.././ext/sdbm  +Z -O -D_XOPEN_SOURCE_EXTENDED  -c init.c
cc -I. -I../.. -I../../. -I../.././ext/sdbm  +Z -O -D_XOPEN_SOURCE_EXTENDED  -c _sdbm.c
ld -b -o ../../.ext/ia64-hpux11.23/sdbm.sl init.o _sdbm.o -L. -L../.. -L.   -E   -ldld -ldl -lm   -lc
gmake[1]: Leaving directory `/house/kogkog/src/ruby186/ext/sdbm'
compiling socket
gmake[1]: Entering directory `/house/kogkog/src/ruby186/ext/socket'
cc -I. -I../.. -I../../. -I../.././ext/socket -DHAVE_ARPA_INET_H -DENABLE_IPV6 -DINET6 -DHAVE_SOCKADDR_STORAGE -DHAVE_NETINET_TCP_H -DHAVE_NETINET_UDP_H -DHAVE_SENDMSG -DHAVE_RECVMSG -DHAVE_ST_MSG_CONTROL -DHAVE_GETNAMEINFO -DHAVE_GETADDRINFO -DHAVE_TYPE_SOCKLEN_T -DHAVE_SYS_UN_H -DHAVE_SYS_UIO_H -DHAVE_SOCKET -DHAVE_GETIPNODEBYNAME -DHAVE_SOCKETPAIR -DHAVE_GETHOSTNAME  +Z -O -D_XOPEN_SOURCE_EXTENDED  -c socket.c
"socket.c", line 1059: warning #2111-D: statement is unreachable
      return 0;
      ^

"socket.c", line 1602: warning #2180-D: argument is incompatible with formal
          parameter
      return (VALUE)ruby_connect(arg->fd, arg->sockaddr, sizeof(*arg->sockaddr),
                                          ^

"socket.c", line 1638: warning #2167-D: argument of type "VALUE (*)()" is
          incompatible with parameter of type "VALUE (*)(VALUE)"
          status = rb_protect(unixsock_connect_internal, (VALUE)&arg, &prot);
                              ^

"socket.c", line 3220: warning #4232-D: conversion from "struct sockaddr *" to
          a more strictly aligned type "struct sockaddr_in *" may cause
          misaligned access
        ptr = (char*)&((struct sockaddr_in*)addr)->sin_addr.s_addr;
                       ^

"socket.c", line 3221: warning #4232-D: conversion from "struct sockaddr *" to
          a more strictly aligned type "struct sockaddr_in *" may cause
          misaligned access
        len = sizeof(((struct sockaddr_in*)addr)->sin_addr.s_addr);
                      ^

"socket.c", line 3225: warning #4232-D: conversion from "struct sockaddr *" to
          a more strictly aligned type "struct sockaddr_in6 *" may cause
          misaligned access
        ptr = (char*)&((struct sockaddr_in6*)addr)->sin6_addr.s6_addr;
                       ^

"socket.c", line 3226: warning #4232-D: conversion from "struct sockaddr *" to
          a more strictly aligned type "struct sockaddr_in6 *" may cause
          misaligned access
        len = sizeof(((struct sockaddr_in6*)addr)->sin6_addr.s6_addr);
                      ^

ld -b -o ../../.ext/ia64-hpux11.23/socket.sl socket.o -L. -L../.. -L.   -E   -lnsl  -ldld -ldl -lm   -lc
gmake[1]: Leaving directory `/house/kogkog/src/ruby186/ext/socket'
compiling stringio
gmake[1]: Entering directory `/house/kogkog/src/ruby186/ext/stringio'
cc -I. -I../.. -I../../. -I../.././ext/stringio  +Z -O -D_XOPEN_SOURCE_EXTENDED  -c stringio.c
ld -b -o ../../.ext/ia64-hpux11.23/stringio.sl stringio.o -L. -L../.. -L.   -E   -ldld -ldl -lm   -lc
gmake[1]: Leaving directory `/house/kogkog/src/ruby186/ext/stringio'
compiling strscan
gmake[1]: Entering directory `/house/kogkog/src/ruby186/ext/strscan'
cc -I. -I../.. -I../../. -I../.././ext/strscan  +Z -O -D_XOPEN_SOURCE_EXTENDED  -c strscan.c
ld -b -o ../../.ext/ia64-hpux11.23/strscan.sl strscan.o -L. -L../.. -L.   -E   -ldld -ldl -lm   -lc
gmake[1]: Leaving directory `/house/kogkog/src/ruby186/ext/strscan'
compiling syck
gmake[1]: Entering directory `/house/kogkog/src/ruby186/ext/syck'
cc -I. -I../.. -I../../. -I../.././ext/syck -DHAVE_ST_H  +Z -O -D_XOPEN_SOURCE_EXTENDED  -c handler.c
cc -I. -I../.. -I../../. -I../.././ext/syck -DHAVE_ST_H  +Z -O -D_XOPEN_SOURCE_EXTENDED  -c implicit.c
"<stdout>", line 59: warning #2111-D: statement is unreachable
        ++YYCURSOR;
        ^

"<stdout>", line 1624: warning #2111-D: statement is unreachable
        ++YYCURSOR;
        ^

cc -I. -I../.. -I../../. -I../.././ext/syck -DHAVE_ST_H  +Z -O -D_XOPEN_SOURCE_EXTENDED  -c yaml2byte.c
"yaml2byte.c", line 181: warning #2236-D: controlling expression is constant
                          assert("oops");
                          ^

cc -I. -I../.. -I../../. -I../.././ext/syck -DHAVE_ST_H  +Z -O -D_XOPEN_SOURCE_EXTENDED  -c gram.c
"gram.c", line 1784: warning #2177-D: label "yyerrorlab" was declared but
          never referenced
  yyerrorlab:
  ^

cc -I. -I../.. -I../../. -I../.././ext/syck -DHAVE_ST_H  +Z -O -D_XOPEN_SOURCE_EXTENDED  -c token.c
"<stdout>", line 311: warning #2111-D: statement is unreachable
        ++YYCURSOR;
        ^

"token.re", line 353: warning #2111-D: statement is unreachable
                          return 0; 
                          ^

"<stdout>", line 522: warning #2111-D: statement is unreachable
        ++YYCURSOR;
        ^

"<stdout>", line 1121: warning #2111-D: statement is unreachable
        ++YYCURSOR;
        ^

"<stdout>", line 1513: warning #2111-D: statement is unreachable
        ++YYCURSOR;
        ^

"<stdout>", line 1751: warning #2111-D: statement is unreachable
        ++YYCURSOR;
        ^

"<stdout>", line 1905: warning #2111-D: statement is unreachable
        ++YYCURSOR;
        ^

"<stdout>", line 2156: warning #2111-D: statement is unreachable
        ++YYCURSOR;
        ^

"<stdout>", line 2382: warning #2111-D: statement is unreachable
        ++YYCURSOR;
        ^

"token.re", line 1078: warning #2111-D: statement is unreachable
      return 0;
      ^

"<stdout>", line 2611: warning #2111-D: statement is unreachable
        ++YYCURSOR;
        ^

cc -I. -I../.. -I../../. -I../.././ext/syck -DHAVE_ST_H  +Z -O -D_XOPEN_SOURCE_EXTENDED  -c emitter.c
cc -I. -I../.. -I../../. -I../.././ext/syck -DHAVE_ST_H  +Z -O -D_XOPEN_SOURCE_EXTENDED  -c syck.c
cc -I. -I../.. -I../../. -I../.././ext/syck -DHAVE_ST_H  +Z -O -D_XOPEN_SOURCE_EXTENDED  -c node.c
cc -I. -I../.. -I../../. -I../.././ext/syck -DHAVE_ST_H  +Z -O -D_XOPEN_SOURCE_EXTENDED  -c bytecode.c
"<stdout>", line 169: warning #2111-D: statement is unreachable
        ++YYCURSOR;
        ^

"<stdout>", line 238: warning #2111-D: statement is unreachable
        ++YYCURSOR;
        ^

"<stdout>", line 547: warning #2111-D: statement is unreachable
        ++YYCURSOR;
        ^

"<stdout>", line 919: warning #2111-D: statement is unreachable
        ++YYCURSOR;
        ^

"<stdout>", line 973: warning #2111-D: statement is unreachable
        ++YYCURSOR;
        ^

"<stdout>", line 1117: warning #2111-D: statement is unreachable
        ++YYCURSOR;
        ^

cc -I. -I../.. -I../../. -I../.././ext/syck -DHAVE_ST_H  +Z -O -D_XOPEN_SOURCE_EXTENDED  -c rubyext.c
"rubyext.c", line 65, procedure S_inf: warning #20010-D: Floating-point DIVIDE
          BY ZERO exception generated

"rubyext.c", line 66, procedure S_nan: warning #20009-D: Floating-point
          INVALID exception generated

ld -b -o ../../.ext/ia64-hpux11.23/syck.sl handler.o implicit.o yaml2byte.o gram.o token.o emitter.o syck.o node.o bytecode.o rubyext.o -L. -L../.. -L.   -E   -ldld -ldl -lm   -lc
gmake[1]: Leaving directory `/house/kogkog/src/ruby186/ext/syck'
compiling syslog
gmake[1]: Entering directory `/house/kogkog/src/ruby186/ext/syslog'
cc -I. -I../.. -I../../. -I../.././ext/syslog -DHAVE_SYSLOG_H -DHAVE_OPENLOG -DHAVE_SETLOGMASK  +Z -O -D_XOPEN_SOURCE_EXTENDED  -c syslog.c
ld -b -o ../../.ext/ia64-hpux11.23/syslog.sl syslog.o -L. -L../.. -L.   -E   -ldld -ldl -lm   -lc
gmake[1]: Leaving directory `/house/kogkog/src/ruby186/ext/syslog'
compiling thread
gmake[1]: Entering directory `/house/kogkog/src/ruby186/ext/thread'
cc -I. -I../.. -I../../. -I../.././ext/thread -DUSE_MEM_POOLS +Z -O -D_XOPEN_SOURCE_EXTENDED  -c thread.c
"thread.c", line 667: warning #2167-D: argument of type "void (*)(List *)" is
          incompatible with parameter of type "VALUE (*)()"
      rb_ensure(wait_list, (VALUE)&condvar->waiting, relock_mutex, (VALUE)mutex);
                ^

ld -b -o ../../.ext/ia64-hpux11.23/thread.sl thread.o -L. -L../.. -L.   -E   -ldld -ldl -lm   -lc
cp ../.././ext/thread/lib/thread.rb ../../.ext/common
gmake[1]: Leaving directory `/house/kogkog/src/ruby186/ext/thread'
compiling tk
compiling tk/tkutil
compiling win32ole
compiling zlib
making ruby
gmake[1]: Entering directory `/house/kogkog/src/ruby186'
cc -O -D_XOPEN_SOURCE_EXTENDED  -DRUBY_EXPORT  -L.  -Wl,-E   main.o  -lruby-static -ldld -ldl -lm   -o ruby
gmake[1]: Leaving directory `/house/kogkog/src/ruby186'
$ gmake test
test succeeded
$ exit

_ やっぱりCで書かれたソースをビルドするときのことがわかってないみたいだ。

単にコマンド打ったりすることはできるんだけど、それから調査したりってことができない。というかコンパイラとリンカの関係とか、動的ライブラリとか、ちゃんと理解できてない>自分

一度誰かにちゃんと習いたいんだけどなあ...とりあえず自習するなら、ふつりな ふつうのLinuxプログラミング Linuxの仕組みから学べるgccプログラミングの王道(青木 峰郎)、がいいのかしら


2008-02-27(Wed) [長年日記] この日を編集

_ [Redmine]Issueについて。

RedmineのIssueにつく番号は全体で一意になってる。各trackerは自身に属するものだけ管理するようなイメージ。

ある程度サブプロジェクトが限定される場合(たとえば... http://forge.typo3.org ...とかなのかしら?)はいいとして

  • Rubyforgeみたいにいろんなプロジェクトを載せる場合とか、
  • そもそも既存のExcelでてんでバラバラに採番してていまさら変えられねー→移行できない(!)

みたいな場合に困るとおもった。つーか、実際困ってるんですけどね。

せっかくカスタムフィールドの仕組みがあるのでうまいこと使えないのかしら、と思っているのですが。必須フィールドで変更可能で重複不可で自動採番(最大値保持&succ!で採番)とか?