Como compilar o OsmAndMapCreator e ferramentas
Compilar o OsmAndMapCreator
- Primeiro, configure o ambiente de desenvolvimento.
- Gradle (linha de comando):
- Compile com a linha de comando
cd tools/java-tools && ../gradlew build
- OsmAndMapCreator.zip será produzido com todos os scripts dentro Nota: o projeto android é necessário para construir as ferramentas (ele usa o projeto OsmAnd-java).
- Eclipse:
- Pré-configure os projetos do Eclipse
cd tools/java-tools && ../gradlew cleanEclipse eclipse
- No Eclipse, em 'Importar' - 'Projetos existentes no espaço de trabalho', selecione as pastas 'OsmAnd-java', 'OsmAndMapCreatorutilities', 'OsmAndMapCreator', 'OsmAndServer', 'OsmAndServerUtilties'. Nota: não selecione a pasta superior java-tools e, em vez disso, selecione os projetos especificados acima.
- Android Studio / Idea Sinta-se à vontade para fazer uma solicitação pull para esta documentação e descrever como isso pode ser feito.
- Classes principais para executar a partir do IDE:
- net.osmand.MainUtilities - representa utilities.sh e leva a todas as utilidades possíveis.
- net.osmand.obf.BinaryInspector - utilitário inspector.sh para ler arquivos OBF e fornece informações sobre eles.
- net.osmand.obf.preparation.IndexCreator - atalho para gerar arquivo obf.
- net.osmand.swing.OsmExtractionUI - OsmAndMapCreator
Compilar a biblioteca de renderização nativa para o OsmAndMapCreator
A biblioteca de renderização nativa pode ser usada para testar a Renderização Offline ou o Roteamento Nativo Offline. É muito útil para depurar e testar um estilo de renderização ou uma configuração de roteamento.
- Primeiro, configure o ambiente de desenvolvimento, consulte ambiente de desenvolvimento.
- Baixe as dependências externas
cd core-legacy/externals
./configure.sh
- Especifique JAVA_HOME globalmente via $PATH ou na linha de comando
export JAVA_HOME=<>
- Escolha um destino específico para o SO e compile uma versão específica 'debug', 'release' ou '' (padrão). Exemplo
cd core-legacy/targets
./intel-darwin.sh release # macOs release
./amd64-linux-clang.sh debug # linux debug - default
cd ....baked # como intel-darwin-intel-darwin-clang-release.baked ou amd64-linux-amd64-clang-release.baked
make -j4
- Os binários estarão disponíveis em core-legacy/binaries/. Exemplo:
core-legacy/binaries/darwin/intel/Debug/libosmand.dylib
Solução de problemas
- Arquivos ausentes externals/libjpeg-turbo/jconfigint.h.in não existe. Se você tiver problemas para compilar o libjpeg-turbo
targets/.cmake/../../externals/skia/upstream.patched/third_party/externals/libjpeg-turbo/jconfigint.h.in não existe.
Você pode encontrar os arquivos aqui e colocá-los na pasta especificada https://github.com/osmandapp/OsmAnd-core/blob/legacy_core/externals/jpeg/jconfig.h https://github.com/osmandapp/OsmAnd-core/blob/legacy_core/externals/jpeg/jconfigint.h
Compilar a versão do core qt para o OsmAndMapCreator
- Primeiro, configure o ambiente de desenvolvimento.
- Prepare a compilação (cmake) para um destino específico. Exemplo clang / linux:
alias clang='clang -std=c++11'
build/amd64-linux-clang.sh release
- Compile a versão da biblioteca
(cd "baked/amd64-linux-clang-release.make" && make -j4)