Troubleshooting

Revision as of 19:38, 10 Nov 2008
WikiSysop (Talk | contribs)

← Go to previous diff
Revision as of 16:24, 12 Nov 2008
WikiSysop (Talk | contribs)

Go to next diff →
Line 10: Line 10:
===Ошибки на стадии Making dependency=== ===Ошибки на стадии Making dependency===
-Иногда при перекомпиляции программы возникают разнообразные ошибки, решаемые довольно просто: достаточно выполнить команду make clean. Общим симптомом в данном случае являются сообщения о ненайденных файлах, часто с расширениями .d, а также undefined reference. В общем, здесь справедлива рекомендация: каждый раз, когда в проекте добавляются или удаляются файлы, надо запускать make clean перед компиляцией.+Иногда при перекомпиляции программы возникают разнообразные ошибки, решаемые довольно просто: достаточно выполнить команду make clean. Общим симптомом в данном случае являются сообщения о ненайденных файлах, часто с расширениями .d, а также undefined reference. В общем, здесь справедлива рекомендация: каждый раз, когда в проекте добавляются или удаляются файлы, надо запускать make clean перед компиляцией.
===Permission denied=== ===Permission denied===

Revision as of 16:24, 12 Nov 2008

Содержание

Решаемые проблемы

Как ни странно, решаемые встречаются гораздо чаще, чем не решаемые.

No rule to make target...

Анамнез: make при запуске компиляции сообщает

makefile:83: /config/binmake.gmk: No such file or directory
make: *** No rule to make target `/config/binmake.gmk'.  Stop.

Это значит, что не определены переменные Geant, прежде всего $G4INSTALL. Скорее всего в ~/.bash_profile нет запуска файла env.sh. Как его там запустить, см. руководство по установке, ближе к концу.

Ошибки на стадии Making dependency

Иногда при перекомпиляции программы возникают разнообразные ошибки, решаемые довольно просто: достаточно выполнить команду make clean. Общим симптомом в данном случае являются сообщения о ненайденных файлах, часто с расширениями .d, а также undefined reference. В общем, здесь справедлива рекомендация: каждый раз, когда в проекте добавляются или удаляются файлы, надо запускать make clean перед компиляцией.

Permission denied

Ошибка доступа. Может помочь опять же make clean, но выполненный из-под рута:

$ su
Password:
# make clean
# exit
$ make

Или

sudo make clean
make

Illegal parameter

Чрезвычайно странная проблема. Программа пишет

: integer expected. 
> *****llegal parameter (0) </control/verbose 0

***** Batch is interupted!! *****
Idle> 

Такое бывает, если командный файл (чаще всего vis.mac) случайно перевести в кодировку DOS. Лечение:

$ dos2unix vis.mac
Edit page