Page 1 of 1

Version 6 deleted all the compiler and linker options!

Posted: Sat Jun 07, 2014 3:38 am
by patlecat
Version 6 deleted all the compiler and linker options! :evil: Yeah that's basically it and it is each time a lot of work to insert them again because the GUI isn't helping in making this a faster process, nor does CodeLite have a list of common options for the 3 big compiler suites :cry:

Re: Version 6 deleted all the compiler and linker options!

Posted: Sat Jun 07, 2014 11:31 am
by eranif
Hi,

This was already reported ( https://github.com/eranif/codelite/issues/471 ) . A quick around:

- Close codelite
- Open the file ~/.codelite/config/build_settings.xml OR %APPDATA%/CodeLite/config/build_settings.xml in an editor (not codelite)
- You will see blocks of compilers there, for each compiler add the following block:

Code: Select all

<CompilerOption Name="-O">Optimize generated code. (for speed)</CompilerOption>
<CompilerOption Name="-O1">Optimize more (for speed).</CompilerOption>
<CompilerOption Name="-O2">Optimize even more (for speed).</CompilerOption>
<CompilerOption Name="-O3">Optimize fully (for speed).</CompilerOption>
<CompilerOption Name="-Os">Optimize generated code (for size).</CompilerOption>
<CompilerOption Name="-Og">Optimize for debugging.</CompilerOption>
<CompilerOption Name="-W">Enable standard compiler warnings.</CompilerOption>
<CompilerOption Name="-Wall">Enable all compiler warnings.</CompilerOption>
<CompilerOption Name="-Wfatal-errors">Stop compiling after first error.</CompilerOption>
<CompilerOption Name="-Wmain">Warn if main() is not conformant.</CompilerOption>
<CompilerOption Name="-ansi">In C mode, support all ISO C90 programs. In C++ mode, remove GNU extensions that conflict with ISO C++.</CompilerOption>
<CompilerOption Name="-fexpensive-optimizations">Expensive optimizations.</CompilerOption>
<CompilerOption Name="-fopenmp">Enable OpenMP (compilation).</CompilerOption>
<CompilerOption Name="-g">Produce debugging information.</CompilerOption>
<CompilerOption Name="-pedantic">Enable warnings demanded by strict ISO C and ISO C++.</CompilerOption>
<CompilerOption Name="-pedantic-errors">Treat as errors the warnings demanded by strict ISO C and ISO C++.</CompilerOption>
<CompilerOption Name="-pg">Profile code when executed.</CompilerOption>
<CompilerOption Name="-w">Inhibit all warning messages.</CompilerOption>
<CompilerOption Name="-std=c99">Enable ANSI C99 features.</CompilerOption>
<CompilerOption Name="-std=c++11">Enable C++11 features.</CompilerOption>
<LinkerOption Name="-fopenmp">Enable OpenMP (linkage).</LinkerOption>
<LinkerOption Name="-mwindows">Prevent a useless terminal console appearing with MSWindows GUI programs.</LinkerOption>
<LinkerOption Name="-pg">Profile code when executed.</LinkerOption>
<LinkerOption Name="-s">Remove all symbol table and relocation information from the executable.</LinkerOption>
- Start codelite

FYI: This is now fixed in git head

Eran

Re: Version 6 deleted all the compiler and linker options!

Posted: Mon Jun 09, 2014 3:56 am
by Gibbon1
I have ARM and AVR compilers, when I do an update I rename the AppData/buildsettings.xml file install and then overwrite it. This probably will work until something big changes in codelite.

A suggestion would be to break out buildsetings.xml into separate config files for each compiler. So if someone adds a custom compiler, it'll be preserved when codelite is re-installed.

Probably better would be a set of 'profiles' to detect various compilers.

Re: Version 6 deleted all the compiler and linker options!

Posted: Mon Jun 09, 2014 5:22 pm
by patlecat
I already entered most of the options I need and also found out about which aren't working at all under mingw-windows ;) But silently deleting/overwriting my buildsettings.xml is bad style and I would even call this a bug!

Re: Version 6 deleted all the compiler and linker options!

Posted: Tue Jun 10, 2014 2:18 am
by marksibly
Also related to build_settings.xml, codelite 6 detected my mingw-w64 install as:

\\"C\Program Files (x86)\mingw-w64\i686-4.9.0-posix-dwarf-rt_v3-rev1\mingw32\bin\mingw32-make.exe"

...which is causing build to produce:

'The network path was not found.'

Just about to try editing build_settings.xml to use C:/Program Files etc instead.

Perhaps related to the space in the path?

Re: Version 6 deleted all the compiler and linker options!

Posted: Tue Jun 10, 2014 2:24 am
by marksibly
...Ok, that didn't help. Tool paths still have \\ prepended, and : missing from drive specifier.

Re: Version 6 deleted all the compiler and linker options!

Posted: Tue Jun 10, 2014 4:28 am
by marksibly
After using 'reset to defaults' in debug settings, I can build again with v6! Not sure how I ended up with a bunch of compilers with full paths...

However, I'm now having problems with 'clean' (and rebuild) - it's not deleting .o or .d files. The files don't appear to be locked by another app or anything, as I can delete them manually from the desktop. This is on Windows 7.

Re: Version 6 deleted all the compiler and linker options!

Posted: Tue Jun 10, 2014 7:19 am
by marksibly
Ok, the clean problem is fixed in latest 'version' of 6.0.

Re: Version 6 deleted all the compiler and linker options!

Posted: Tue Jun 10, 2014 12:41 pm
by eranif
\\"C\Program Files (x86)\mingw-w64\i686-4.9.0-posix-dwarf-rt_v3-rev1\mingw32\bin\mingw32-make.exe"
This is because you have installed MinGW in a folder with spaces which is highly un-recommended

Eran