Skip to content
This repository has been archived by the owner on Sep 20, 2023. It is now read-only.

Objective C: gcc

LCD 47 edited this page Dec 10, 2013 · 16 revisions

Maintainer: Gregor Uhlenheuer kongo2002@gmail.com

In order to check header files add this to your .vimrc: (this usually creates a .gch file in your source directory)

let g:syntastic_objc_check_header = 1

To disable the search of included header files after special libraries like gtk and glib add this line to your .vimrc:

let g:syntastic_objc_no_include_search = 1

To disable the include of the default include dirs (such as /usr/include) add this line to your .vimrc:

let g:syntastic_objc_no_default_include_dirs = 1

To enable header files being re-checked on every file write add the following line to your .vimrc. Otherwise the header files are checked only one time on initially loading the file. In order to force syntastic to refresh the header includes simply unlet b:syntastic_objc_includes. Then the header files are being re-checked on the next file write.

let g:syntastic_objc_auto_refresh_includes = 1

Alternatively you can set the buffer local variable b:syntastic_objc_cflags. If this variable is set for the current buffer no search for additional libraries is done. I.e. set the variable like this:

let b:syntastic_objc_cflags = '-I/usr/include/libsoup-2.4'

In order to add some custom include directories that should be added to the gcc command line you can add those to the global variable g:syntastic_objc_include_dirs. This list can be used like this:

let g:syntastic_objc_include_dirs = [ 'includes', 'headers' ]

Moreover it is possible to add additional compiler options to the syntax checking execution via the variable g:syntastic_objc_compiler_options:

let g:syntastic_objc_compiler_options = '-ansi'

Additionally the setting g:syntastic_objc_config_file allows you to define a file that contains additional compiler arguments like include directories or CFLAGS. The file is expected to contain one option per line. If none is given the filename defaults to .syntastic_objc_config:

let g:syntastic_objc_config_file = '.config'

Using the global variable g:syntastic_objc_remove_include_errors you can specify whether errors of files included via the g:syntastic_objc_include_dirs setting are removed from the result set:

let g:syntastic_objc_remove_include_errors = 1

Use the variable g:syntastic_objc_errorformat to override the default error format:

let g:syntastic_objc_errorformat = '%f:%l:%c: %trror: %m'

Set your compiler executable with e.g. (defaults to gcc)

let g:syntastic_objc_compiler = 'clang'
Clone this wiki locally