Compile Error - "the long long data type will be supported only in the 'professional' version"

Go To Last Post
18 posts / 0 new
Author
Message
#1
  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Getting the error: "the long long data type will be supported only in the 'professional' version"

 

My question is: Professional Version of what?

 

 

Barry Kelly

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Sorry - didn't intend to post yet...

 

This is Atmel Studio v6.2.1502

 

Barry Kelly

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Well the error you gave sounds like Imagecraft but that's curious because in AS6 you kind of expect to be running the avr-gcc that comes with it. In avr-gcc there is no such restriction, it happily supports "long long" (int64_t) without restrictions. 

 

Could you have installed some extension that means you are using Imagecraft instead? 

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Barry Stephen Kelly wrote:
My question is: Professional Version of what?

As already noted, Atmel Studio doesn't have a distinct "Professional" version - so this must be coming from some add-on.

 

Have you looked in the Output window for more clues as to what, exactly, is saying this?

Top Tips:

  1. How to properly post source code - see: https://www.avrfreaks.net/comment... - also how to properly include images/pictures
  2. "Garbage" characters on a serial terminal are (almost?) invariably due to wrong baud rate - see: https://learn.sparkfun.com/tutorials/serial-communication
  3. Wrong baud rate is usually due to not running at the speed you thought; check by blinking a LED to see if you get the speed you expected
  4. Difference between a crystal, and a crystal oscillatorhttps://www.avrfreaks.net/comment...
  5. When your question is resolved, mark the solution: https://www.avrfreaks.net/comment...
  6. Beginner's "Getting Started" tips: https://www.avrfreaks.net/comment...
  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

CodeVision is linked to it . . .  if the forum will allow it, I will attach a screen shot of the Studio "about" window:

 

Barry Kelly

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

I uses AS 6.2 which in turn uses GCC unless AS6.2 has been reconfigured to use other than GCC.

I declared

long long x;

uint64_t y;

 

compiles without error.

 

Need to see the compiler output window log.

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Where will I find the compiler output window log?

Barry Kelly

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

It's the tab at the bottom marked 'Output'

 

Top Tips:

  1. How to properly post source code - see: https://www.avrfreaks.net/comment... - also how to properly include images/pictures
  2. "Garbage" characters on a serial terminal are (almost?) invariably due to wrong baud rate - see: https://learn.sparkfun.com/tutorials/serial-communication
  3. Wrong baud rate is usually due to not running at the speed you thought; check by blinking a LED to see if you get the speed you expected
  4. Difference between a crystal, and a crystal oscillatorhttps://www.avrfreaks.net/comment...
  5. When your question is resolved, mark the solution: https://www.avrfreaks.net/comment...
  6. Beginner's "Getting Started" tips: https://www.avrfreaks.net/comment...
  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

CodeVision is linked to it . . . 

Then you have two options:

 

1) pay Codevision to upgrade to the "Pro" version and continue to use CV and long long in that

 

2) tell AS6 to use the avr-gcc it comes with, not Codevision. In avr-gcc you get "long long" (int64_t) support for nothing. (as Steve's post #6 shows).

 

(BTW I'm still not convinced this is a Codevision thing - a look at their web site only reveals "Standard" (€150) and "Advanced" (€200) - nothing about "Pro". Also the general description of the compiler says "Supported data types: bit, bool, char, int, short, long, float" Nothing there about "long long". Meanwhile at the Imagecraft site you find they offer "Non commercial" ($99), "Standard" ($249) and "Pro(fessional)" ($499). So I think it may be a link to Imagecraft, not Codevision you are seeing).

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

I have not been using CodeVision for anything other than generating some setup code.  I am doing all my work in Studio.  Is Studio using a compiler from CodeVision?  Here is the Output window text:

 

------ Build started: Project: RRFB Studio Project v2, Configuration: Release AVR ------
        C:\cvavr\bin\cvavrcl.exe "RRFB Studio Project v1.prj" -b -rw -rel -p AVRISP2 -pi ISP_PDI -sck 125000
C:\cvavr\BIN\RRFB v8.c(46,1): error: the 'long long' data type will be supported only in the 'Professional' version
Done building project "RRFB Studio Project v2.cproj" -- FAILED.

Build FAILED.
========== Build: 0 succeeded or up-to-date, 1 failed, 0 skipped ==========

 

 

Barry Kelly

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

I do not have code vision, but:

 

C:\cvavr\bin\cvavrcl.exe

 

to me would suggest that you do....

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

So what happens if you just run C:\cvavr\bin\cvavrcl.exe at a Command Prompt...?

 

PS

 

what a dreadful font this is - "cl" looks exactly like "d"

 

angry

Top Tips:

  1. How to properly post source code - see: https://www.avrfreaks.net/comment... - also how to properly include images/pictures
  2. "Garbage" characters on a serial terminal are (almost?) invariably due to wrong baud rate - see: https://learn.sparkfun.com/tutorials/serial-communication
  3. Wrong baud rate is usually due to not running at the speed you thought; check by blinking a LED to see if you get the speed you expected
  4. Difference between a crystal, and a crystal oscillatorhttps://www.avrfreaks.net/comment...
  5. When your question is resolved, mark the solution: https://www.avrfreaks.net/comment...
  6. Beginner's "Getting Started" tips: https://www.avrfreaks.net/comment...
  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Is Studio using a compiler from CodeVision? 

Clearly it is in your case. Now I'm not sure how it does that but Studio has a concept of something called "toolchain flavours". I can only assume that is what is used to switch from the "Native" (avr-gcc 4.8.1) to a different command line compiler.

 

Have a read of this page in the manual:

 

http://www.atmel.com/webdoc/atme...

 

I think you need to do something to switch this back to "Native"

 

(always assuming I'm right and this is the way CodeVision is being invoked. To be honest I didn't even know there was a command line version of Codevision - in the past it always used to be a GUI/IDE only compiler).

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

In AS6,  you either create a GCC project or a CV project.

 

You have clearly created a Codevision project.   But are trying to use GCC features like "long long".

 

AFIK,   there is no "Professional CV".    The current CV does not support int64_t variables.    Obviously Pavel might choose to implement them in a future release.

 

Quite honestly,   you can build most projects with CV or GCC.    There are minor differences in header names and interrupt syntax.    If you are trying to compile code that was written by someone else,   I would select the same compiler.

 

@Cliff,

 

CV projects can be controlled completely from within AS6 e.g. creation, editing, programming, debugging, ...

You can still control them from the CV IDE. e.g. creation, editing, programming, ...

 

IMHO,   the CV IDE is a more pleasant development environment.    e.g. project file searches,   terminal,   windows, ...

AS6 is more convenient if you want to do debugWIRE or JTAG debugging.

 

David.

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

clawson wrote:
always assuming I'm right and this is the way CodeVision is being invoked.

That's why I suggest just running the command at a command prompt - I would expect it to at least give some kind of identifying copyright and/or version message...

 

 

Quote:
To be honest I didn't even know there was a command line version of Codevision - in the past it always used to be a GUI/IDE only compiler.

But, shirley, the actual compiler itself is (almost?) always a command-line thing - the GUI/IDE just builds the command line for you?

Top Tips:

  1. How to properly post source code - see: https://www.avrfreaks.net/comment... - also how to properly include images/pictures
  2. "Garbage" characters on a serial terminal are (almost?) invariably due to wrong baud rate - see: https://learn.sparkfun.com/tutorials/serial-communication
  3. Wrong baud rate is usually due to not running at the speed you thought; check by blinking a LED to see if you get the speed you expected
  4. Difference between a crystal, and a crystal oscillatorhttps://www.avrfreaks.net/comment...
  5. When your question is resolved, mark the solution: https://www.avrfreaks.net/comment...
  6. Beginner's "Getting Started" tips: https://www.avrfreaks.net/comment...
  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Oh right then just to be clear to OP my "guess" about "Toolchain Flavours" in post #13 (an auspicious number!) was a complete red herring. Ignore me. David knows more about this than I do as he's a Codevision user. So if he says the error has been made at the "file-New Project..." stage then that is the case. You won't be able to change it just by some project setting (as I'd hoped). You need to create a whole new project and port the source files from CV to GCC in that.

 

Of course you might equally want to take a step back form all this and consider whether it really is "long long" you want to use anyway. Usually a 32bit "long" suffices for most of what you want to do in an 8bit controller. 64 bits suggests an usually large range/accuracy. Also when you do 64x64 arithmetic operations it involves 16 of the AVR's 32 registers. That can make for some very large, cumbersome and slow code which is another reason to contemplate whether you really want 64 bits.

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

I googled "Atmel Studio Codevision" and found this:

 

https://gallery.atmel.com/Produc...

 

(I'd post a screenshot - but it still doesn't work)

 

And this:

Quote:

CodeVisionAVR V3 is designed to be used both in its own IDE and also as an Extension in Atmel Studio 6.2 or later version.

 

http://www.hpinfotech.ro/cvavr_d...

 

So, presumably, the OP must be using something like this...?

Top Tips:

  1. How to properly post source code - see: https://www.avrfreaks.net/comment... - also how to properly include images/pictures
  2. "Garbage" characters on a serial terminal are (almost?) invariably due to wrong baud rate - see: https://learn.sparkfun.com/tutorials/serial-communication
  3. Wrong baud rate is usually due to not running at the speed you thought; check by blinking a LED to see if you get the speed you expected
  4. Difference between a crystal, and a crystal oscillatorhttps://www.avrfreaks.net/comment...
  5. When your question is resolved, mark the solution: https://www.avrfreaks.net/comment...
  6. Beginner's "Getting Started" tips: https://www.avrfreaks.net/comment...
  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Thanks for all the help guys - I have been trying to keep up with what you've posted, but haven't had a spare second to stay in the conversation.  Trying to figure out where I left off now...

Barry Kelly