0

私のアプリでは、C++/Boost ライブラリも使用しました。すべてのクラッシュ ログが std::length_error() に関連しているのは奇妙です。

誰でもいくつかの手がかりを与えることができますか? どんなコメントでも大歓迎です。

124 Thread 8 Crashed:
125 0   libsystem_kernel.dylib          0x30a70350 __pthread_kill + 8
126 1   libsystem_c.dylib               0x33dff11e pthread_kill
127 2   libsystem_c.dylib               0x33e3b96e abort
128 3   libc++abi.dylib                 0x36f5bd4a abort_message
129 4   libc++abi.dylib                 0x36f58ff4 default_terminate()
130 5   libobjc.A.dylib                 0x32c69a8c _objc_terminate()
131 6   libc++abi.dylib                 0x36f59078 safe_handler_caller(void
132 7   libc++abi.dylib                 0x36f59110 std::terminate()
133 8   libc++abi.dylib                 0x36f5a50e __cxa_throw
134 9   Navigatio                       0x00d9f65a std::length_error::~length_error() + 10115470
135 10  Navigatio                       0x0ed9f732 std::length_error::~length_error() + 10115686
136 11  Navigatio                       0x00d9a438 std::length_error::~length_error() + 10094444
137 12  Navigatio                       0x00d99b52 std::length_error::~length_error() + 10092166
138 13  Navigatio                       0x0059bc32 std::length_error::~length_error() + 1711974
139 14  libsystem_c.dylib               0x33de130e _pthread_start
140 15  libsystem_c.dylib               0x33de11d4 thread_start + 4
4

1 に答える 1

1

あなたの象徴化は間違っていると思います。これらのオフセットを見てください:

0x00d9f65a std::length_error::~length_error() + 10115470
0x0ed9f732 std::length_error::~length_error() + 10115686
0x00d9a438 std::length_error::~length_error() + 10094444
0x00d99b52 std::length_error::~length_error() + 10092166
0x0059bc32 std::length_error::~length_error() + 1711974

それらの数字はクレイジーです。その場合、 9 メガバイトstd::length_error::~length_error()を超えるコード サイズが必要になります。

そのため、シンボリック化中に何かがひどく間違っていた (シンボルを提供するために間違ったバイナリが使用されているなど) か、または の後の 9 メガバイトのコードにシンボルがありませんstd::length_error::~length_error()

于 2013-01-18T19:41:02.843 に答える