Ошибка компиляции Cygwin: «это приложение запросило среду выполнения, чтобы завершить его необычным способом» - PullRequest
4 голосов
/ 28 января 2010

Я пытаюсь запустить Cygwin, и у меня возникают некоторые проблемы. Я попытался скомпилировать программу, которая работает как в Windows, с mingw, так и в системе Unix, но когда я собираюсь скомпилировать ее через Cygwin:

gcc threads.c -o threads

Я получаю ошибку: это приложение запросило среду выполнения прекратить его необычным способом

И это все ... есть идеи, что я забыл или облажался? Я не прикасался к этим вещам около 5 лет, поэтому я не зациклен спасибо!

Ответы [ 3 ]

11 голосов
/ 25 февраля 2010

В моем случае эта проблема была вызвана тем, что в cygwin не определена переменная среды TEMP, попробуйте:

export TEMP=/tmp

Если TEMP уже определен, убедитесь, что каталог не только для чтения.

3 голосов
/ 28 января 2010

Сообщение об ошибке означает, что при попытке сборки программы произошел сбой компилятора.

Скорее всего, это означает, что ваша установка Cygwin повреждена или содержит поврежденную версию gcc. Попробуйте обновить до текущей версии Cygwin. Это вдвойне верно, учитывая, что Cygwin 1.7 и первые стабильные релизы GCC 4 - недавние события. Если вы все еще используете Cygwin 1.5 или GCC 3.x, я думаю, что есть отличный шанс, что обновление исправит ваш симптом.

0 голосов
/ 28 января 2010

Предполагая, что вы компилируете threads.c, который, как я понял, имеет отношение к потокам, вы пробовали это ...

gcc -L libthreads -o threads threads.c

Это говорит компилятору gcc включить потоки библиотеки и связать их вместе.

Или ... вы можете включить переключатель в приведенную выше командную строку -mno-cygwin, если вы не нужно Unix-подобное поведение.

Надеюсь, это поможет, С наилучшими пожеланиями, Том.

...