проблема с мухой CFGERR - PullRequest
       19

проблема с мухой CFGERR

1 голос
/ 11 ноября 2010

Я пытаюсь использовать flymake на emacs 22.3.1 на openSuse 11, но я получил эту ошибку:

Making completion list...
file /home/ruggero/makefily/prova.cpp, init=flymake-simple-make-init
flymake is running: nil
file /home/ruggero/makefily/prova.cpp, init=flymake-simple-make-init [3 times]
found buildfile at ~/makefily/
create-temp-inplace: file=/home/ruggero/makefily/prova.cpp temp=/home/ruggero/makefily/prova_flymake.cpp
saved buffer prova.cpp in file /home/ruggero/makefily/prova_flymake.cpp
started process 8920, command=(make -s -C ./ CHK_SOURCES=prova_flymake.cpp SYNTAX_CHECK_MODE=1 check-syntax), dir=~/makefily/
received 117 byte(s) of output from process 8920
file /home/ruggero/makefily/prova.cpp, init=flymake-simple-make-init
parsed '[1;31mprova_flymake.cpp:[0m[1;31m1:[0m[1;31m1: error: unterminated comment[0m', no line-err-info
parsed 'make: *** [check-syntax] Error 1', no line-err-info
file /home/ruggero/makefily/prova.cpp, init=flymake-simple-make-init
process 8920 exited with code 2
cleaning up using flymake-simple-cleanup
deleted file /home/ruggero/makefily/prova_flymake.cpp
prova.cpp: 0 error(s), 0 warning(s) in 0.10 second(s)
switched OFF Flymake mode for buffer prova.cpp due to fatal status CFGERR, warning Configuration error has occured while running (make -s -C ./ CHK_SOURCES=prova_flymake.cpp SYNTAX_CHECK_MODE=1 check-syntax)

ошибка появляется только , если в синтаксической ошибкекод c ++

мой make-файл выглядит нормально:

check-syntax:
    g++ -o nul -S $(CHK_SOURCES)

prova:
    g++ -o prova prova.cpp

Я также пытался очистить мой .emacs

Ответы [ 2 ]

1 голос
/ 19 ноября 2010

Решено

Makefly несовместим с Color-GCC

Решение

check-syntax:
    /usr/bin/g++ -o nul -S $(CHK_SOURCES)

prova:
    g++ -o prova prova.cpp
0 голосов
/ 18 ноября 2010

Я думаю, что ваша марка не работает должным образом в пределах flymake.

Процесс завершается с кодом ошибки 2, который, я думаю, не совпадает с состоянием выхода, которое вы получаете, когда запускаете make вне emacs.

CFGERR в flymake означает, что процесс make не прошел успешно.Не то чтобы произошла ошибка компиляции, но процесс не запустился, неожиданно завершился или не завершился как обычно.

возможно, вы можете включить flymake-log-level, чтобы получить больше диагностики для этого сбойного процесса.Также: я не знаю о flymake для c ++, но может быть буфер, который захватывает весь вывод процесса.Если это так, проверьте содержимое буфера, что может показать вам более подробную информацию о сбое.

У меня была проблема с CFGERR, например, когда инструмент make не был на пути, который был активен в процессе emacs.Исправление пути (или его полное указание в команде компиляции) позволило избежать ловушки CFGERR.Подобная ошибка может возникнуть, если ваш gcc не находится на пути, который используется в emacs.

Удачи.

...