codebrowser icon indicating copy to clipboard operation
codebrowser copied to clipboard

Multiple compilers

Open incardon opened this issue 6 years ago • 6 comments

It seems that the generator look into /usr/include to search include files that is the path where the default compiler put header files. On the other hand in case I have a second compiler I did not find a way to redirect such include paths to the correct place.

Is there a way to do it ?

incardon avatar Aug 09 '17 17:08 incardon

the only "supported compiler" is clang that is used to build the generator. However, you can change the include paths with the -I option in the compilation database. If you don't use a compilation database, you need to use -I after the --

What exactly is the command line you use to run the generator?

ogoffart avatar Aug 10 '17 09:08 ogoffart

Hi ogoffart

Thanks for the fast reply.

I used bear to generate a json file (compilation database) with bear make. The make file use gcc-4.9.2 as compiler (+ I also have LLVM and libclang). The default machine compiler is 4.4.7 that is not able to compile the project.

To generate I am using the standard command

codebrowser_generator -b $BUILDIRECTORY -a -o $OUTPUTDIRECTORY -p codebrowser:$BUILDIRECTORY:$VERSION codebrowser_indexgenerator $OUTPUTDIRECTORY

(With the environmental variables defined)

Now when I run codebrowser_generator I get a lot of error because it look into /usr/include/ that is the default compiler header directory.

If I understand correctly I should use clang as base compiler, and configure LLVM to look into the secondary compiler header file (not /usr/include). Is this correct ?

incardon avatar Aug 11 '17 08:08 incardon

Maybe you can try to add some CXXFLAGS with -I /path/to/other/compiler/include when configuring, then this will end up in the compilation database. But if your project also compiles with clang, it might be even better to use llvm as the compiler indeed

ogoffart avatar Aug 12 '17 07:08 ogoffart

Thanks. It compile, so I will switch completely to LLVM.

incardon avatar Aug 12 '17 12:08 incardon

@incardon Did you suceed?

guruz avatar Sep 10 '18 17:09 guruz

I switch to a system with one compiler avoiding the problem. At the end it worked with bear + gcc, so I did not test clang

incardon avatar Sep 10 '18 20:09 incardon