Join Now
Quality Rating:
  • Currently 0.0 / 5
(0.0 / 5 - 0 votes cast)
Expertise Level:
  • Currently 0.0 / 5
(0.0 / 5 - 0 votes cast)

This page was last modified 10:55, 30 October 2007.

Arquivo MMP

From Forum Nokia Wiki

Original: MMP file

Uma arquivo de definição de projeto .mmp especifica as propriedades de um projetom para uma plataforma e um compilador de maneira independente. A ferramenta makmake converte arquivos de definição de projeto em Makefiles de uma plataforma específica. A ferramenta abld.bat encapsula chamadas a makmake, e pode ser mais conveniente de usar que o makmake.

Uma definição de projeto tem a extensão .mmp.

Note que:

  • Cada declaração ocupa uma única linha.
  • A sintaxe de C++ é usada para comentários.
  • Uma contra-barra ('\') no final da linha é usada para indicar continuação de linha. Além disso, diretórios são especificados sem a contra-barra do final, por exemplo: excreva SYSTEMINCLUDE \epoc32\include, em vez de SYSTEMINCLUDE \epoc32\include\


Exemplo de projeto

TARGETTYPE

A partir da versão v9.0, uma aplicação GUI é um .exe. Isto está especificado pela declaração targettype:

TARGETTYPE exe

A extensão alvo pode ser .app ou .exe. Isto é especificado usando a declaração target:

TARGET <appname>.exe

UID

O UID da aplicação é especificada pela declaração uid:

UID 0x100039CE <UID3>

O valor do UID2 0x100039CE deve ser usado para todas as aplicações>. O valor da UID3 é um identificador único para uma aplicação em particular.

Tamanho da pilha

Por padrão, processos possuem uma pilha de 8K. Este tamanho pode ser insuficiente para alguma aplicações. Para aumentar o tamanho da pilha use a declaração epocstacksize:

// seta tamanho da pilha para 20K
epocstacksize 0x5000

Recursos da UI

O arquivo de recursos da UI é especificado com a declaração start resource:

START RESOURCE  <appname>.RSS
HEADER
TARGETPATH      \Resource\Apps
END

Os recursos devem ser compilados dentro do diretório \Resource\Apps. E isto é especificado usando a declaração TARGETPATH.

A linha do cabeçalho indica ao compilador para produzir um arquivo \epoc32\include\<appname>.rsg, que define constantes de macros através das quais programas C++ podem referenciar às estruturas de recursos.

Recursos de legenda/ícones

Uma aplicação pode especificar legendas e ícones localizáveis para serem exibidos usando o recurso LOCALISABLE_APP_INFO, tanto no arquivo de recursos da UI quanto em um arquivo de recursos separado.

Arquivo de registro

Especifique o arquivo de registro da aplicação usando outra declaração start resource:

START RESOURCE  <appname>_reg.rss
TARGETPATH      \private\10003a3f\apps
END

O arquivo de registro deve ser construído para o diretório privado \private\10003a3f\apps do sistema.

Observe que por razões de segurança um arquivo de registro não pode ser instalado diretamente neste diretório no dispositivo alvo. Quando da criação de um arquivo PKG (arquivo para instalação de software) para uma aplicação, o arquivo d e registro deve ser instalado no diretório \private\10003a3f\import\apps\.

Ícones

Um arquivo bitmap contendo ícones para a applicação pode ser especificado usado a declaração start bitmap:

START BITMAP    <appname>.mbm
TARGETPATH      \Resource\Apps
SOURCE          <color-depth> <source-bitmap-list>
END

Arquivos de ícones, assim como o arquivo de recursos da UI, deve ser construído dentro do diretório \Resource\Apps.

Exemplo

Um exemplo de um projeto de aplicação GUI real é mostrado a seguir.

TARGET HelloWorld.exe
TARGETTYPE exe
UID 0x100039CE 0x10004299
VENDORID 0x70000001
epocstacksize 0x5000
 
SOURCEPATH .
SOURCE HelloWorld_Main.cpp
SOURCE HelloWorld_Application.cpp
SOURCE HelloWorld_Document.cpp
SOURCE HelloWorld_AppUi.cpp
SOURCE HelloWorld_AppView.cpp
USERINCLUDE .
SYSTEMINCLUDE \epoc32\include
 
START RESOURCE  HelloWorld.RSS
HEADER
TARGETPATH      \Resource\Apps
end
 
START RESOURCE  HelloWorld_reg.rss
TARGETPATH      \private\10003a3f\apps
END
 
START BITMAP    HelloWorld.mbm
TARGETPATH      \Resource\Apps
SOURCE          c8,1 icon24.bmp icon2m.bmp icon32.bmp icon3m.bmp
                icon48.bmp icon4m.bmp
END
 
LIBRARY euser.lib apparc.lib cone.lib eikcore.lib
Related Discussions
Thread Thread Starter Forum Replies Last Post
mmp library entry not being used - link failure rtrnokia Symbian Tools & SDKs 3 2007-04-27 00:43
Help on linker error kkboy1 General Symbian C++ 2 2005-04-19 13:59
!!strange problem with dll missing whitewinds General Symbian C++ 9 2006-06-15 06:22
undefined symbol, link problem. Please help Gride General Symbian C++ 9 2006-12-21 20:42
How to add source file which is out of project root zdenko Carbide.c++ and CodeWarrior Tools 2 2007-09-04 09:34
 
Powered by MediaWiki
     
     RDF Facets:
     
     
     qfnZtypeQUqfnTypeZCommunityContentQ
     qfnZtypeQUqfnTypeZWebpageQ
     qfnZtypeQUqfnTypeZWikiContentQ
     qmarsZlanguageQUxhttpE3aE2fE2fswE2enokiaE2ecomE2flanguageE2d1E2fenX