![]() |
|
Модераторы: Daevaorn |
![]()
|
|
| motorway |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 578 Регистрация: 2.3.2008 Репутация: нет Всего: 0 |
Всем привет.
После компиляции под Windows 7 x64 программы на C, расширение .c с помощью Cygwin получается файл .exe + лежат библиотеки .dll. gcc -msse2 -O2 -Wall -g -o progr progr.c -lgmp -lpthread -lm Но после запуска программы выдает такого рода ошибку: 3996 exception:: handle: Exception: STATUS_ACCESS_VIOLATION ... ... Error while dumping state (probably corrupted stack) Exception: STATUS_ACCESS_VIOLATION at eip=00401448 eax=00000003 ebx=00000003 ecx=00B01268 edx=00000010 esi=00000000 edi=0028CBF8 Stack trace: Frame Function Args ebp=1A5DCD58 esp=1A5DCBA0 program=C:\cygwin\home\...\..exe, pid 3996, thread unknown (0xFA8) 1A7DCD98 610E38C5 cs=0023 ds=002B es=002B fs=0053 gs=002B ss=002B (00B6E660Stack trace: Frame Function Args , 000000001A5DCD58 00401448 , 00000000 (0028C9F8, 00000000, 00000000) , 000000001A5DCD98 610E38C5 , 00B6E5D8 (00B6E5D8) , 1A5DCDD4End of stack trace7 , 610E3810 Из-за чего это может быть, как побороть? -------------------- Russian Pascal Developer Network - Сеть разработчиков на языке программирования Pascal/Object Pascal Форум Delphi/Kylix, Free Pascal Compiler/Lazarus, PascalABC.NET Онлайн-кинотеатр |
|||
|
||||
| boostcoder |
|
|||
![]() pattern`щик ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 5458 Регистрация: 1.4.2010 Репутация: 49 Всего: 110 |
первая и очевидная причина - корявый код. зачем вы его в сижвине компилите? нативные вендовые компиляторы не подходят? или программа реализована для *nix ? |
|||
|
||||
| motorway |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 578 Регистрация: 2.3.2008 Репутация: нет Всего: 0 |
Код писал не я, а программист, работающий под Никсом 64 бит, а у меня Вин 7 64. Он использует некоторые библиотеки. В начале файла вот такое:
Не знаю, есть ли там что-то специфическое для Никса, чего нет по Виндой, но вероятность есть. Можно ли скомпилировать код под Вин без такой ошибки с указанными условиями? Сам программист хороший. -------------------- Russian Pascal Developer Network - Сеть разработчиков на языке программирования Pascal/Object Pascal Форум Delphi/Kylix, Free Pascal Compiler/Lazarus, PascalABC.NET Онлайн-кинотеатр |
|||
|
||||
| boostcoder |
|
|||
![]() pattern`щик ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 5458 Регистрация: 1.4.2010 Репутация: 49 Всего: 110 |
теперь понятно почему вы пытаетесь скомпилить код сижвином. из приведенных вами хидеров, только xmmintrin.h мне не знаком. остальные хидеры есть в mingw32 или собираются из исходников. а код, я так полагаю, секретный? посмотреть его нельзя? |
|||
|
||||
| motorway |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 578 Регистрация: 2.3.2008 Репутация: нет Всего: 0 |
А что сделать с xmmintrin.h? В целом, не шарю в C, так что если подскажете, буду благодарен.
А откуда взять mingw32 и в какой программе можно скомпилить это под Вин? Код без его разрешения не могу дать, но подозрение есть, что там что-то в функции malloc. -------------------- Russian Pascal Developer Network - Сеть разработчиков на языке программирования Pascal/Object Pascal Форум Delphi/Kylix, Free Pascal Compiler/Lazarus, PascalABC.NET Онлайн-кинотеатр |
|||
|
||||
| boostcoder |
|
|||
![]() pattern`щик ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 5458 Регистрация: 1.4.2010 Репутация: 49 Всего: 110 |
нужно выискать ее в инете, и попробовать собрать с помощью mingw`а. у меня в подписи. вам, помимо прочего, нужно еще самому собрать libgmp. или же, могу скинуть собранную. malloc - стандартная функция. и 100% рабочая. проблема может быть в ее неправильном использовании. но скажите, в линуксе программа работает? Это сообщение отредактировал(а) boostcoder - 19.1.2011, 21:48 |
|||
|
||||
| motorway |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 578 Регистрация: 2.3.2008 Репутация: нет Всего: 0 |
Спасибо.
Да, у него работало, по крайней мере он не писал, что там было такое, хотя это и не значит, что не могло быть такого Думаю, у него все было нормально. -------------------- Russian Pascal Developer Network - Сеть разработчиков на языке программирования Pascal/Object Pascal Форум Delphi/Kylix, Free Pascal Compiler/Lazarus, PascalABC.NET Онлайн-кинотеатр |
|||
|
||||
| motorway |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 578 Регистрация: 2.3.2008 Репутация: нет Всего: 0 |
Скачал с sourceforge 64-битную версию, там какой-то набор папок, и не очень понятно, что с ними делать.
crt, doc, headers, libraries, tools - оканчиваются на такие слова. Не знаете? -------------------- Russian Pascal Developer Network - Сеть разработчиков на языке программирования Pascal/Object Pascal Форум Delphi/Kylix, Free Pascal Compiler/Lazarus, PascalABC.NET Онлайн-кинотеатр |
|||
|
||||
| boostcoder |
|
|||
![]() pattern`щик ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 5458 Регистрация: 1.4.2010 Репутация: 49 Всего: 110 |
||||
|
||||
| motorway |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 578 Регистрация: 2.3.2008 Репутация: нет Всего: 0 |
А в Вашей версии знаете, как компилировать? Она 64-битная?
-------------------- Russian Pascal Developer Network - Сеть разработчиков на языке программирования Pascal/Object Pascal Форум Delphi/Kylix, Free Pascal Compiler/Lazarus, PascalABC.NET Онлайн-кинотеатр |
|||
|
||||
| boostcoder |
|
|||
![]() pattern`щик ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 5458 Регистрация: 1.4.2010 Репутация: 49 Всего: 110 |
как и все исходники компилируются с помощью mingw/gcc. 32ух. а Вы уверены в том, что код написан строго для компиляции 64ех битным компилятором? это неразумно, как правило. |
|||
|
||||
| motorway |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 578 Регистрация: 2.3.2008 Репутация: нет Всего: 0 |
Там есть функции, которые не работали под 32-битной Виндоус... код в принципе рассчитан на то, что он лучше работает под 64-битной ОС. Насчет компилятора не знаю
-------------------- Russian Pascal Developer Network - Сеть разработчиков на языке программирования Pascal/Object Pascal Форум Delphi/Kylix, Free Pascal Compiler/Lazarus, PascalABC.NET Онлайн-кинотеатр |
|||
|
||||
| boostcoder |
|
|||
![]() pattern`щик ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 5458 Регистрация: 1.4.2010 Репутация: 49 Всего: 110 |
у Вас код вообще под линукс! вендус тут при чем? Оо Это сообщение отредактировал(а) boostcoder - 19.1.2011, 22:47 |
|||
|
||||
| motorway |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 578 Регистрация: 2.3.2008 Репутация: нет Всего: 0 |
Да, тут есть некоторая мешанина для меня... Я думал, что C может работать и там, и там. Сейчас пробую компилить на mingw, пока что выдает cannot find -lgmp, после некоторых еще ошибок, которые я убрал.
Поэтому сейчас качаю GMP, надеюсь, я правильно делаю, или нужно искать файл lgmp.h? Такого не нашлось -------------------- Russian Pascal Developer Network - Сеть разработчиков на языке программирования Pascal/Object Pascal Форум Delphi/Kylix, Free Pascal Compiler/Lazarus, PascalABC.NET Онлайн-кинотеатр |
|||
|
||||
| boostcoder |
|
|||
![]() pattern`щик ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 5458 Регистрация: 1.4.2010 Репутация: 49 Всего: 110 |
libgmp собранная для mingw: http://rghost.ru/4003591
просто распакуйте архив в каталог куда распаковали mingw. Добавлено через 56 секунд и, на этом, ошибки не закончатся. бросьте Вы лучше эту затею ;) |
|||
|
||||
![]()
|
| Правила форума "С++:Общие вопросы" | |
|
|
Добро пожаловать!
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Earnest Daevaorn |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | C/C++: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |