精華區beta EE_DSnP 關於我們 聯絡資訊
如果你對前面幾篇文章關於 libcmd.a 的一些問題, 沒有搞的很清楚的話, 請看這裡--- 1. (見 posts 334 337) 如果你遇的 crash 是 --- 0x0092a9b7 in __gnu_cxx::__pool<true>::_M_reclaim_block () from /usr/lib/libstdc++.so.6 I then googled "__pool<true>::_M_reclaim_bloc". It seems that other people have the similar issue. And some people think that it is due to some version of g++ is not happy with some version of libstdc++... Anyway, 請下載 platform-dependent "libcmd.a". Under <classWebsite>/Homework/, you can download... -rw-r--r-- 1 ric faculty 57290 Dec 25 16:10 libcmd.a -rw-r--r-- 1 ric faculty 102226 Dec 25 16:13 libcmd.a.4.0 -rw-r--r-- 1 ric faculty 74002 Dec 25 16:16 libcmd.a.ccws2 where "libcmd.a.4.0" is compiled under a g++ version 4.0 machine, and libcmd.a.ccws2 is compiled under ccws2, and libcmd.a is the original one. Choose a suitable libcmd.a for yourself. 2. (見 post 342) The bug --- ltest> q Are you sure to quit (Yes/No)? [No] // 直接按下 enter terminate called after throwing an instance of 'std::out_of_range' what(): basic_string::substr Aborted is fixed and included in the above new libcmd.a. You don't need to download this if you don't have the crash in (1). 3. (見 post 343) For a quick workaround, I've changed the READ_BUF_SIZE and MAX_HISTORY 65536. Download this if your script may have more than 1024 commands. -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.112.21.240
Parhelia:報告老師 饒神說他的測資有一百萬筆.....||| 12/25 19:11
ric2k1:OMG... 不想在最後一刻改太多 code... maybe use -r <int> 12/25 19:16
ric2k1:_history 也不應該 buffer 那麼多, 可是要改成 FIFO, 12/25 19:17
ric2k1:... 以後再說吧... 12/25 19:18