2

Ioのようなアドオンを使用できた人はいますRegexか?OpenGLCygwinWindows 7 32 bit

ノート:

  • 問題が発生した場合は有効のASLRままにしたいASLRので、オフにしてテストしませんでした。
  • Cygwinのは新しいものですが、必ずしも最先端ではありません ( gcc (GCC) 4.3.4 20090804 (release) 1)

全文:

私の側では、コンパイルして実行するためにいくつかの調整が必要IoですCygwin。私のビルド プロセス、マイナー パッチ、および DLL を利用できるようにするための最終調整を確認するには、 http://permalink.de/tino/iocygCygwinを参照してください。

私のOSはWindows 7 starter 32 bitなので、ASLR有効になっています。これは、デフォルトで libが欠落しているため、アドオンではコンパイルされないため、CygwinではなくMinGWでのビルドに関するものです。MinGWRegexpcre

Cygwin では、次のエラーのために、Regexまたはまだのようないくつかのアドオンを使用できませんでした (検索でs を検索することに注意してください。そのため、lib を追加する必要があります)。OpenGLCygwinDLLPATHenv

$ env PATH="$PATH:/usr/local/lib" io
Io 20090105
Io> Regex
==>  Regex_0xcd1788:
   [output skipped]
Io> "e" matchesRegex("." asRegex)
IoState error: missing proto 0x52128c
IoState_protoWithInitFunction() Error: missing proto

このエラーをグーグルで検索するとIo、関数ポインターをハッシュとして使用してproto. このアドレスはDLL状況によって変わる可能性があるため、ハッシュが壊れます。ただし、コードを調べても、iovm/source/IoState.cこれが本当に問題の原因であるかどうかはわかりません (まだ)。

これをさらに深く掘り下げる:

Io> "a" matchesOfRegex("o") anchored
==> nil
Io> "a" matchesOfRegex(".") anchored
IoState error: missing proto 0x1983128c
IoState_protoWithInitFunction() Error: missing proto

これは、 の関数でのRangeアドオンの使用まで追跡できます。そして、ここで私は現在立ち往生しています。IoRegexMatches_searchFrom_withOptions_Regex/source/IoRegexMatches.c

4

1 に答える 1

1

はい、正規表現はpcreをインストールするまで問題を引き起こしました。

修理:

  1. pcreをインストールします。
  2. イオを再コンパイルします。
于 2011-10-17T22:32:26.987 に答える