[aspectc-user] Compiling helloworld aspect C++ on Symbian
Marti Bayo-alemany
malemany at nero.com
Mon Sep 5 13:48:22 CEST 2005
Hi,
After using the following command lines, it didn't work properly...
..\..\ac\ac++ -p source -e
cpp --skip-bodies-non-prj --no_problem_spec_scope --gnu-2.95 -d
..\helloworld-out -I. -D_DEBUG -D_UNICODE -D__SYMBIAN32__ -D__GCC32__ -D__EPOC32__
-D__MARM__ -D__MARM_ARMI__ -D__DLL__ -I"C:\Symbian\7.0s\Series60_v20\Epoc32\include\"
-I..\helloworld-out -Isource
..\..\ac\ac++ -p source -e
cpp --skip-bodies-non-prj --no_problem_spec_scope --gnu-2.95 -d
..\helloworld-out -I. -D_DEBUG -D_UNICODE -D__SYMBIAN32__ -D__GCC32__ -D__EPOC32__
-D__MARM__ -D__MARM_ARMI__ -D__DLL__ -I"C:\Symbian\7.0s\Series60_v20\Epoc32\include\"
-Isource
The errors are ...
source/aspect.ah:5: syntax error before `{' token
In file included from :1,
from source/helloworld_application.cpp:27:
source/aspect.ah:5: syntax error before `{' token
: In member function `virtual TUid CExampleApplication::AppDllUid() const':
:3: `invoke_Action_Action_a0_around' undeclared in namespace `AC'
: In member function `virtual CApaDocument*
CExampleApplication::CreateDocumentL()':
:3: `invoke_Action_Action_a0_around' undeclared in namespace `AC'
I have simplified the aspect to ...
#include <stdio.h>
#include <flogger.h>
#include <e32std.h>
aspect Action {
advice execution("% CExampleApplication::%(...)") : around() {
RFileLogger::Write(_L("NSTMLogDir"),_L("AspectsTest"),EFileLoggingModeOverwrite,_L("Test"));
}
};
Any idea ?
best wishes,
Marti
----- Original Message -----
From: "Olaf Spinczyk" <Olaf.Spinczyk at informatik.uni-erlangen.de>
To: "Marti Bayo-alemany" <malemany at nero.com>
Cc: <aspectc-user at aspectc.org>
Sent: Monday, September 05, 2005 12:42 PM
Subject: Re: [aspectc-user] Compiling helloworld aspect C++ on Symbian
> Hi,
>
> Marti Bayo-alemany wrote:
>> Hi all,
>> I have tried to use the STU mode but it is actually not working.
>> The command is the following ...
>> ..\..\ac\ac++ -g -p source -c source\helloworld_application.cpp -o
>> helloworld-out\helloworld_application.cpp -e
>> cpp --skip-bodies-non-prj --no_problem_spec_scope --gnu-2.95 -d
>> ..\helloworld-out -I. -D_DEBUG -D_UNICODE -D__SYMBIAN32__ -D__GCC32__ -D__EPOC32__
>> -D__MARM__ -D__MARM_ARMI__ -D__DLL__ -I"C:\Symbian\7.0s\Series60_v20\Epoc32\include\"
>>
>> With the WPT mode the compiler is trying to include the aspect.ah from
>> source. Due aspect.ah is not a c++ files there is compilation problems.
>>
>> I have tested on the following two paths structures
>>
>> symbian|
>> |->helloworld(*)|---->source
>> |---->helloworld-out
>>
>> ... and ...
>>
>> symbian|
>> |->helloworld(*)|---->source
>> |
>> |->helloworld-out
>
> the second directory structure is better! You shouldn't have the output
> directory in the source directory.
>
> Regarding the inclusion of the aspect header in the generated code, it
> might help to add a -I<directory> for every directory that contains an
> aspect header on the command line. In your case this means that you have
> to add -Isource.
>
> (explanation follows later)
>
> Does that help?
>
> Olaf
>
>
More information about the aspectc-user
mailing list