This translation is community contributed and may not be up to date. We only maintain the English version of the documentation. Read this manual in English
Desenvolver aplicações Defold para a plataforma Linux é um processo direto, com pouquíssimas considerações.
R: Se você estiver usando GNOME, é possível alterar o fator de escala antes de rodar o Defold. fonte
$ gsettings set org.gnome.desktop.interface scaling-factor 2
$ ./Defold
R: Uma solução alternativa, especialmente quando você deseja aumentar a escala por uma fração, é modificar o arquivo Defold/config e, na linha vmargs, adicionar glass.gtk.uiScale: fonte
vmargs = -Dglass.gtk.uiScale=1.5,-Dfile.encoding=UTF-8,...
vmargs = -Dglass.gtk.uiScale=175%,-Dfile.encoding=UTF-8,...
vmargs = -Dglass.gtk.uiScale=192dpi,-Dfile.encoding=UTF-8,...
Mais sobre esse valor no artigo da wiki do Arch Linux sobre HiDPI.
R: Se você estiver usando KDE, é possível definir GDK_SCALE:
$ GDK_SCALE=2 ./Defold
R: Inicie o editor assim:
$ GTK_CSD=0 ./Defold
com.jogamp.opengl
R: Em certas distribuições (como Ubuntu 18), há um problema entre a versão de jogamp/jogl que o Defold usa e a versão do Mesa no sistema. Você pode sobrescrever qual versão de GL é relatada ao chamar glGetString(GL_VERSION) definindo MESA_GL_VERSION_OVERRIDE como 2.1 ou um valor maior, mas menor ou igual à versão do seu driver. Você pode verificar qual é a versão máxima do OpenGL compatível com seu driver usando glxinfo:
glxinfo | grep version
Exemplo de saída (procure por “OpenGL version string: x.y”):
server glx version string: 1.4
client glx version string: 1.4
GLX version: 1.4
Max core profile version: 4.6
Max compat profile version: 4.6
Max GLES1 profile version: 1.1
Max GLES[23] profile version: 3.2
OpenGL core profile version string: 4.6 (Core Profile) Mesa 20.2.6
OpenGL core profile shading language version string: 4.60
OpenGL version string: 4.6 (Compatibility Profile) Mesa 20.2.6
OpenGL shading language version string: 4.60
OpenGL ES profile version string: OpenGL ES 3.2 Mesa 20.2.6
OpenGL ES profile shading language version string: OpenGL ES GLSL ES 3.20
GL_EXT_shader_implicit_conversions, GL_EXT_shader_integer_mix,
Use a versão 2.1 ou a versão correspondente ao seu driver gráfico:
$ MESA_GL_VERSION_OVERRIDE=2.1 ./Defold
$ MESA_GL_VERSION_OVERRIDE=4.6 ./Defold
com.jogamp.opengl.GLException: Graphics configuration failed” ao iniciar o Defold?
R: Em certas distribuições (por exemplo, Ubuntu 20.04), há um problema com os novos drivers Mesa (Iris) ao rodar o Defold. Você pode tentar usar uma versão de driver mais antiga ao rodar o Defold:
$ MESA_LOADER_DRIVER_OVERRIDE=i965 ./Defold
libffi.so
R: A versão da libffi da sua distribuição e a exigida pelo Defold (versão 6 ou 7) não correspondem. Certifique-se de que libffi.so.6 ou libffi.so.7 esteja instalado em /usr/lib/x86_64-linux-gnu. Você pode baixar libffi.so.7 assim:
$ wget http://ftp.br.debian.org/debian/pool/main/libf/libffi/libffi7_3.3-6_amd64.deb
$ sudo dpkg -i libffi7_3.3-6_amd64.deb
Em seguida, especifique o caminho para essa versão na variável de ambiente LD_PRELOAD ao rodar o Defold:
$ LD_PRELOAD=/usr/lib/x86_64-linux-gnu/libffi.so.7 ./Defold
R: Sim, talvez seja possível usar o Defold se você habilitar a renderização por software. Você pode habilitar a renderização por software definindo a variável de ambiente LIBGL_ALWAYS_SOFTWARE como 1:
$ LIBGL_ALWAYS_SOFTWARE=1 ./Defold
R: Verifique a saída do console no editor. Se você receber a seguinte mensagem:
dmengine: error while loading shared libraries: libopenal.so.1: cannot open shared object file: No such file or directory
Então você precisa instalar libopenal1. O nome do pacote varia entre distribuições e, em alguns casos, talvez você precise instalar os pacotes openal e openal-dev ou openal-devel.
$ apt-get install libopenal-dev
R: Isso provavelmente é causado pelo gerenciador de janelas usado (por exemplo, Qtile ou i3). Este é um problema conhecido no JavaFX e pode ser resolvido definindo a variável de ambiente GDK_DISPLAY como 1:
$ GDK_DISPLAY=1 ./Defold
D=2
Ou modificando o arquivo Defold/config e adicionando -Djdk.gtk.version=2 à linha vmargs:
vmargs = -Djdk.gtk.version=2,-Dfile.encoding=UTF-8,...
R: Se você estiver executando o Defold pela Steam usando Flatpak, precisa dar permissão à Steam para acessar seus outros discos. Você pode modificar as permissões dos seus aplicativos Flatpak usando o Flatseal ou uma ferramenta similar.
R: É provável que uma chamada interna para Desktop.getDesktop().browse(new URI(url)); falhe porque nenhum navegador é detectado em sistemas não GNOME. Tente instalar libgnome.
$ apt-get install libgnome