Как отмечено в комментариях, ваш компилятор и/или его библиотека во время работы не работают. (Вы можете исключить ОС, так как цель «эльф» подразумевает, что вы не используете ОС на цели, и если она не существует, ее невозможно сломать.)
Вместо того, чтобы пытаться debug Cygwin's mipsel-elf-gcc
, который, вероятно, будет старым и не проверенным, я бы предложил просто использовать другой компилятор. В частности, сборник Mentor Graphics «Sourcery CodeBench Lite Edition» из компилятора GCC и связанных с ним библиотек C и C++ доступен для бесплатной загрузки с http://www.mentor.com/embedded-software/sourcery-tools/sourcery-codebench/editions/lite-edition/ - он должен в основном работать как замена для компилятора Cygwin, который вы используете используя (включая правильную работу с путями Cygwin, хотя он номинально построен как «простой Windows» компилятор), с той разницей, что он был протестирован и проверен, чтобы действительно работать правильно.
[Отказ от ответственности: Я работаю на Mentor Graphics, поэтому не могу сказать, что я объективен, но мы много работаем над созданием этого компилятора, а MIPS заключает контракты с нами, чтобы сделать его доступным для мир бесплатно, поэтому у нас есть стимул, чтобы он работал правильно. Кроме того, если вы знакомы с компиляторами CodeSourcery «Sourcery G ++», «Sourcery CodeBench» - это новое имя для них, так как CodeSourcery является частью Mentor Graphics.]
Из вашего предыдущего вопроса кажется, что ваш компилятор на C++ довольно сломан. Если 'malloc' и' new' segfault при первом использовании, нет оснований думать, что 'std :: vector' не будет. http://stackoverflow.com/questions/8956979/segment-fault-caused-by-using-new-and-malloc – NPE
Код кажется прекрасным. Если это segfaults, то, когда вы работаете, вы можете выделить некоторое пространство при объявлении 'vector'. то есть «вектор v (100);» и попробуйте. –
iammilind
@aix: проблема 'malloc' и' new' была исправлена, и теперь я могу использовать оба. В моем вопросе я упоминаю, что «я проверил новый оператор, и он отлично работает», чтобы подчеркнуть, что есть проблема с распределением памяти. –