Norton Internet Security rejects Introjucer then compiling problems


#1

This weekend, I downloaded the most current version of the IntroJucer that was part of the download from the Juce.com site.  When I started it, my Nortons Internet Security immediately shut it down complaining, via its SONAR system, that it likely contained a trojan.

 

I downloaded the most up-todate code via the GIT site and used that to try to compile my own version of the Introjucer via VS2013.  That complained of being unable to find the unistd.h header.  A bit of research revealed that unistd.h was only needed for Unix builds.  I simply created a blank unistd.h file and the rest of the compile was successful.  You may want to ifdef that out for Windows builds.

 

I tried to start a new project with my newly built Introjucer.  The "out of the box" project compiled fine if I used VS2013.  However, it fails to compile "out of the box" under Codeblocks 13.12 using the MinGW compiler (4.71 I believe).  I get lots of errors, emanating from the JUCE\modules\juce_core\text\juce_CharPointer_XXXX.h files, that standard functions like stmicmp or _atoi64 have not been declared despite the fact that string.h and stdlib.h have been clearly included in those files.  I suspect there may be something in the ifdef sections of the MinGW version that may be causing them to be missed.  I haven't been able to figure out the cause yet.  Any suggestions would be helpful.


#2

Pretty sure that's a mistake on the part of Norton!

And I'm confused by your comment about it not working on VS2013 or wanting unistd.h - I searched the codebase for unistd.h and it is definitely only included for non-Windows builds - the correct #ifdefs are already there. Perhaps something in your VS setup is broken so that a flag is missing so that it thinks it's not building on Windows?


#3

That's what I thought about the Norton error too, but I thought I should let you know in case others report the problem too.

 

Strange about the VS compile failure.  I reinstalled a fresh copy of VS2013 express and tried compiling again.  Same problem.  The errors all emanate from the juce_characterfuntions.h file.  I don't know VS well enough to know where to look for possible flag issues.  I thought that VS only produced Windows executables.

 

I'm still struggling with the CodeBlocks failures.  I'm more set up to use CodeBlocks over VS.  Any thoughts about that problem would be much appreciated.


#4

But juce_CharacterFunctions.h doesn't include anything. It certainly doesn't include unistd.h!


#5

Somehow that include line was in my version of that file.  I reinstalled the JUCE package and everything is ok now (at least for the Introjucer compile under VS2013).  I must have messed something up in my frustration trying to  solve my previously described problems using juce with CodeBlocks.  

 

An out of the box Audio Application created by the IntroJucer for Codeblocks fails to compile (mingw compiler).  I even reset my CodeBlocks v 13.12 to all its default values to no avail.

 

I get a bunch of "not declared" errors from the compiler: ssize_t, wcsnicmp, stricmp, _atoi64, _wtoi64.  These emanate from the juce_CharPointer_ASCII.h and juce_FileOutputStream.h files.  I'm at a loss as to what is causing these errors.

 

 


#6

I only reluctantly support CodeBlocks, and mainly rely on a few of the users to let me know when things don't work, which generally involves just a minor tweak here and there.. Last I heard, it was working ok, but if you see any particular places where it doesn't work out-of-the-box then let me know. You will definitely need a modern version of the mingw GCC though, I'm not going to keep supporting the old 3.x or early 4.x versions.