Issue building console application on Centos 6.4

Hi

I am trying to build the Uploader from the tutorial on adding authentication to plugins.

I have successfully built a c++11 version on Centos 7, however when I try and build on Centos 6.4, I get the following errors:

I’m using gcc 4.7.2

Any ideas?

Compiling Main.cpp
In file included from ../../JuceLibraryCode/modules/juce_core/system/juce_StandardHeader.h:59:0,
                 from ../../JuceLibraryCode/modules/juce_core/juce_core.h:201,
                 from ../../Source/../JuceLibraryCode/JuceHeader.h:17,
                 from ../../Source/Main.cpp:11:
../../JuceLibraryCode/modules/juce_core/system/juce_CompilerSupport.h:114:3: error: #error "JUCE requires a C++ library containing std::atomic"
In file included from ../../JuceLibraryCode/modules/juce_events/juce_events.h:71:0,
                 from ../../JuceLibraryCode/modules/juce_data_structures/juce_data_structures.h:55,
                 from ../../Source/../JuceLibraryCode/JuceHeader.h:19,
                 from ../../Source/Main.cpp:11:
../../JuceLibraryCode/modules/juce_events/messages/juce_MessageManager.h:455:5: error: looser throw specifier for ‘virtual juce::MessageManagerLock::~MessageManagerLock()’
In file included from ../../JuceLibraryCode/modules/juce_core/juce_core.h:319:0,
                 from ../../Source/../JuceLibraryCode/JuceHeader.h:17,
                 from ../../Source/Main.cpp:11:
../../JuceLibraryCode/modules/juce_core/threads/juce_Thread.h:183:17: error:   overriding ‘virtual juce::Thread::Listener::~Listener() noexcept (true)’
In file included from ../../JuceLibraryCode/modules/juce_data_structures/juce_data_structures.h:61:0,
                 from ../../Source/../JuceLibraryCode/JuceHeader.h:19,
                 from ../../Source/Main.cpp:11:
../../JuceLibraryCode/modules/juce_data_structures/values/juce_ValueTreeSynchroniser.h:58:5: error: looser throw specifier for ‘virtual juce::ValueTreeSynchroniser::~ValueTreeSynchroniser()’
In file included from ../../JuceLibraryCode/modules/juce_data_structures/juce_data_structures.h:60:0,
                 from ../../Source/../JuceLibraryCode/JuceHeader.h:19,
                 from ../../Source/Main.cpp:11:
../../JuceLibraryCode/modules/juce_data_structures/values/juce_ValueTree.h:478:17: error:   overriding ‘virtual juce::ValueTree::Listener::~Listener() noexcept (true)’
make: *** [build/intermediate/Debug/Main_90ebc5c2.o] Error 1

I resolved my issue by upgrading the gcc compiler to above 4.8 (4.7 has no inbuilt atomic libraries)

See

Yes, GCC 4.8 or above is required to build JUCE projects. See the readme on GitHub:

Thanks @ed95

I ended up changing web hosts as it started becoming a pain working with Centos 6.5 on a shared host which had really outdated libraries making it difficult to build for a match on my own local server (after updating gcc using the devtools method all the shared libraries were updated). I switched to A2 hosting - they are on Centos 7 for shared hsting and all is good now :wink: