Следующая проблема: использую vim как ide для C.
Для компиляции и запуска одной клавишей использую следующий код в моем .vimrc, который нашел где-то на просторах интернета.
Код: Выделить всё
function! BindF9_C()
if filereadable("Makefile")
set makeprg=make
map <F9> :w<CR>:make<CR>:cw<CR>:!./%<<CR>
imap <F9> <ESC>:w<CR>:make<CR>:cw<CR>:!./%<<CR>
else
map <F9> :w<CR>:make %:r<CR>:cw<CR>:!./%<<CR>
imap <F9> <ESC>:w<CR>:make %:r<CR>:cw<CR>:!./%<<CR>
endif
endfunction
au FileType c,cc,cpp,h,hpp,s call BindF9_C()
Компилирует и работает ровно до тех пор, пока не начинаю использовать math.h. Точнее, пока не обращаюсь к ее функциям (для примера sin()). В таком случае получаю ошибку:
Код: Выделить всё
undefined reference to `sin'
В этой теме нашел причину- компилятору нужен флаг -lm.
И действительно, при компиляции в терминале, с флагом -lm все работает.
Но как прикрутить его в vimrc- вопрос. Куда бы не дописывал, не выходит.
make.conf не нашел.
Может кто знает?