Quick Links: Download Gideros Studio | Gideros Documentation | Gideros Development Center | Gideros community chat | DONATE
Building Gideros - Page 4 — Gideros Forum

Building Gideros

124»

Comments

  • rrraptorrrraptor Member
    edited May 2023
    When I fill blanks in build.gradle (Build.Win/Players/GiderosPlayer/app/build.gradle)
    compileSdkVersion 31
    buildToolsVersion "31.0.0"
    and run gradlew from power shell it says BUILD SUCCESSFUL


    EDIT:
    And with .\gradlew --console=plain assembleRelease


    But this file is replaced every time you call make command.
  • Ok, so problem partially solved. I moved SDK folder to its default location (AppData/Local/Android/sdk), but now different error pops up.
    > Task :app:mergeDexRelease FAILED
    ERROR:R:\DEV\gideros\Build.Win\Players\GiderosPlayer\tmp\app\build\intermediates\external_file_lib_dex_archives\release\0_classes.jar: D8: Type com.giderosmobile.android.GiderosSettings is defined multiple times: R:\DEV\gideros\Build.Win\Players\GiderosPlayer\tmp\app\build\intermediates\external_file_lib_dex_archives\release\0_classes.jar:classes.dex, R:\DEV\gideros\Build.Win\Players\GiderosPlayer\tmp\app\build\intermediates\project_dex_archive\release\out\com\giderosmobile\android\GiderosSettings.dex
    com.android.builder.dexing.DexArchiveMergerException: Error while merging dex archives:
    Learn how to resolve the issue at <a href="https://developer.android.com/studio/build/dependencies#duplicate_classes" rel="nofollow">https://developer.android.com/studio/build/dependencies#duplicate_classes</a>.
    Type com.giderosmobile.android.GiderosSettings is defined multiple times: R:\DEV\gideros\Build.Win\Players\GiderosPlayer\tmp\app\build\intermediates\external_file_lib_dex_archives\release\0_classes.jar:classes.dex, R:\DEV\gideros\Build.Win\Players\GiderosPlayer\tmp\app\build\intermediates\project_dex_archive\release\out\com\giderosmobile\android\GiderosSettings.dex
            at com.android.builder.dexing.D8DexArchiveMerger.getExceptionToRethrow(D8DexArchiveMerger.java:151)
            at com.android.builder.dexing.D8DexArchiveMerger.mergeDexArchives(D8DexArchiveMerger.java:138)
            at com.android.build.gradle.internal.tasks.DexMergingWorkAction.merge(DexMergingTask.kt:858)
            at com.android.build.gradle.internal.tasks.DexMergingWorkAction.run(DexMergingTask.kt:804)
            at com.android.build.gradle.internal.profile.ProfileAwareWorkAction.execute(ProfileAwareWorkAction.kt:74)
            at org.gradle.workers.internal.DefaultWorkerServer.execute(DefaultWorkerServer.java:63)
            at org.gradle.workers.internal.NoIsolationWorkerFactory$1$1.create(NoIsolationWorkerFactory.java:66)
            at org.gradle.workers.internal.NoIsolationWorkerFactory$1$1.create(NoIsolationWorkerFactory.java:62)
            at org.gradle.internal.classloader.ClassLoaderUtils.executeInClassloader(ClassLoaderUtils.java:100)
            at org.gradle.workers.internal.NoIsolationWorkerFactory$1.lambda$execute$0(NoIsolationWorkerFactory.java:62)
            at org.gradle.workers.internal.AbstractWorker$1.call(AbstractWorker.java:44)
            at org.gradle.workers.internal.AbstractWorker$1.call(AbstractWorker.java:41)
            at org.gradle.internal.operations.DefaultBuildOperationRunner$CallableBuildOperationWorker.execute(DefaultBuildOperationRunner.java:204)
            at org.gradle.internal.operations.DefaultBuildOperationRunner$CallableBuildOperationWorker.execute(DefaultBuildOperationRunner.java:199)
            at org.gradle.internal.operations.DefaultBuildOperationRunner$2.execute(DefaultBuildOperationRunner.java:66)
            at org.gradle.internal.operations.DefaultBuildOperationRunner$2.execute(DefaultBuildOperationRunner.java:59)
            at org.gradle.internal.operations.DefaultBuildOperationRunner.execute(DefaultBuildOperationRunner.java:157)
            at org.gradle.internal.operations.DefaultBuildOperationRunner.execute(DefaultBuildOperationRunner.java:59)
            at org.gradle.internal.operations.DefaultBuildOperationRunner.call(DefaultBuildOperationRunner.java:53)
            at org.gradle.internal.operations.DefaultBuildOperationExecutor.call(DefaultBuildOperationExecutor.java:73)
            at org.gradle.workers.internal.AbstractWorker.executeWrappedInBuildOperation(AbstractWorker.java:41)
            at org.gradle.workers.internal.NoIsolationWorkerFactory$1.execute(NoIsolationWorkerFactory.java:59)
            at org.gradle.workers.internal.DefaultWorkerExecutor.lambda$submitWork$2(DefaultWorkerExecutor.java:205)
            at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
            at org.gradle.internal.work.DefaultConditionalExecutionQueue$ExecutionRunner.runExecution(DefaultConditionalExecutionQueue.java:187)
            at org.gradle.internal.work.DefaultConditionalExecutionQueue$ExecutionRunner.access$700(DefaultConditionalExecutionQueue.java:120)
            at org.gradle.internal.work.DefaultConditionalExecutionQueue$ExecutionRunner$1.run(DefaultConditionalExecutionQueue.java:162)
            at org.gradle.internal.Factories$1.create(Factories.java:31)
            at org.gradle.internal.work.DefaultWorkerLeaseService.withLocks(DefaultWorkerLeaseService.java:249)
            at org.gradle.internal.work.DefaultWorkerLeaseService.runAsWorkerThread(DefaultWorkerLeaseService.java:109)
            at org.gradle.internal.work.DefaultWorkerLeaseService.runAsWorkerThread(DefaultWorkerLeaseService.java:114)
            at org.gradle.internal.work.DefaultConditionalExecutionQueue$ExecutionRunner.runBatch(DefaultConditionalExecutionQueue.java:157)
            at org.gradle.internal.work.DefaultConditionalExecutionQueue$ExecutionRunner.run(DefaultConditionalExecutionQueue.java:126)
            at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539)
            at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
            at org.gradle.internal.concurrent.ExecutorPolicy$CatchAndRecordFailures.onExecute(ExecutorPolicy.java:64)
            at org.gradle.internal.concurrent.ManagedExecutorImpl$1.run(ManagedExecutorImpl.java:48)
            at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136)
            at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635)
            at java.base/java.lang.Thread.run(Thread.java:833)
    Caused by: com.android.tools.r8.CompilationFailedException: Compilation failed to complete, origin: R:\DEV\gideros\Build.Win\Players\GiderosPlayer\tmp\app\build\intermediates\external_file_lib_dex_archives\release\0_classes.jar:classes.dex
            at Version.fakeStackEntry(Version_4.0.52.java:0)
            at com.android.tools.r8.internal.vk.a(R8_4.0.52_5a340ca2823c7e792fe09805c75f749b9d398d230bc0518bb54ae9b6b50addbe:75)
            at com.android.tools.r8.internal.vk.a(R8_4.0.52_5a340ca2823c7e792fe09805c75f749b9d398d230bc0518bb54ae9b6b50addbe:28)
            at com.android.tools.r8.internal.vk.a(R8_4.0.52_5a340ca2823c7e792fe09805c75f749b9d398d230bc0518bb54ae9b6b50addbe:27)
            at com.android.tools.r8.internal.vk.b(R8_4.0.52_5a340ca2823c7e792fe09805c75f749b9d398d230bc0518bb54ae9b6b50addbe:2)
            at com.android.tools.r8.D8.run(R8_4.0.52_5a340ca2823c7e792fe09805c75f749b9d398d230bc0518bb54ae9b6b50addbe:11)
            at com.android.builder.dexing.D8DexArchiveMerger.mergeDexArchives(D8DexArchiveMerger.java:136)
            ... 38 more
    Caused by: com.android.tools.r8.internal.g: Type com.giderosmobile.android.GiderosSettings is defined multiple times: R:\DEV\gideros\Build.Win\Players\GiderosPlayer\tmp\app\build\intermediates\external_file_lib_dex_archives\release\0_classes.jar:classes.dex, R:\DEV\gideros\Build.Win\Players\GiderosPlayer\tmp\app\build\intermediates\project_dex_archive\release\out\com\giderosmobile\android\GiderosSettings.dex
            at com.android.tools.r8.internal.GV.a(R8_4.0.52_5a340ca2823c7e792fe09805c75f749b9d398d230bc0518bb54ae9b6b50addbe:14)
            at com.android.tools.r8.internal.GV.a(R8_4.0.52_5a340ca2823c7e792fe09805c75f749b9d398d230bc0518bb54ae9b6b50addbe:22)
            at com.android.tools.r8.internal.rP.a(R8_4.0.52_5a340ca2823c7e792fe09805c75f749b9d398d230bc0518bb54ae9b6b50addbe:44)
            at com.android.tools.r8.internal.rP.a(R8_4.0.52_5a340ca2823c7e792fe09805c75f749b9d398d230bc0518bb54ae9b6b50addbe:10)
            at java.base/java.util.concurrent.ConcurrentHashMap.merge(ConcurrentHashMap.java:2056)
            at com.android.tools.r8.internal.rP.a(R8_4.0.52_5a340ca2823c7e792fe09805c75f749b9d398d230bc0518bb54ae9b6b50addbe:6)
            at com.android.tools.r8.graph.F2$a.e(R8_4.0.52_5a340ca2823c7e792fe09805c75f749b9d398d230bc0518bb54ae9b6b50addbe:7)
            at com.android.tools.r8.dex.b.a(R8_4.0.52_5a340ca2823c7e792fe09805c75f749b9d398d230bc0518bb54ae9b6b50addbe:84)
            at com.android.tools.r8.dex.b.a(R8_4.0.52_5a340ca2823c7e792fe09805c75f749b9d398d230bc0518bb54ae9b6b50addbe:23)
            at com.android.tools.r8.dex.b.a(R8_4.0.52_5a340ca2823c7e792fe09805c75f749b9d398d230bc0518bb54ae9b6b50addbe:22)
            at com.android.tools.r8.D8.a(R8_4.0.52_5a340ca2823c7e792fe09805c75f749b9d398d230bc0518bb54ae9b6b50addbe:50)
            at com.android.tools.r8.D8.d(R8_4.0.52_5a340ca2823c7e792fe09805c75f749b9d398d230bc0518bb54ae9b6b50addbe:19)
            at com.android.tools.r8.D8.b(R8_4.0.52_5a340ca2823c7e792fe09805c75f749b9d398d230bc0518bb54ae9b6b50addbe:1)
            at com.android.tools.r8.internal.vk.a(R8_4.0.52_5a340ca2823c7e792fe09805c75f749b9d398d230bc0518bb54ae9b6b50addbe:24)
            ... 41 more
     
     
    > Task :app:lintVitalAnalyzeRelease
     
    Deprecated Gradle features were used in this build, making it incompatible with Gradle 8.0.
     
    You can use '--warning-mode all' to show the individual deprecation warnings and determine if they come from your own scripts or plugins.
     
    See <a href="https://docs.gradle.org/7.5/userguide/command_line_interface.html#sec:command_line_warnings" rel="nofollow">https://docs.gradle.org/7.5/userguide/command_line_interface.html#sec:command_line_warnings</a>
    34 actionable tasks: 34 executed
     
    FAILURE: Build failed with an exception.
     
    * What went wrong:
    Execution failed for task ':app:mergeDexRelease'.
    > A failure occurred while executing com.android.build.gradle.internal.tasks.DexMergingTaskDelegate
       > There was a failure while executing work items
          > A failure occurred while executing com.android.build.gradle.internal.tasks.DexMergingWorkAction
             > com.android.builder.dexing.DexArchiveMergerException: Error while merging dex archives:
               Learn how to resolve the issue at <a href="https://developer.android.com/studio/build/dependencies#duplicate_classes" rel="nofollow">https://developer.android.com/studio/build/dependencies#duplicate_classes</a>.
               Type com.giderosmobile.android.GiderosSettings is defined multiple times: R:\DEV\gideros\Build.Win\Players\GiderosPlayer\tmp\app\build\intermediates\external_file_lib_dex_archives\release\0_classes.jar:classes.dex, R:\DEV\gideros\Build.Win\Players\GiderosPlayer\tmp\app\build\intermediates\project_dex_archive\release\out\com\giderosmobile\android\GiderosSettings.dex
     
    * Try:
    > Run with --stacktrace option to get the stack trace.
    > Run with --info or --debug option to get more log output.
    > Run with --scan to get full insights.
     
    * Get more help at <a href="https://help.gradle.org" rel="nofollow">https://help.gradle.org</a>
     
    BUILD FAILED in 1m 7s
    Exec returned: 1
    make: *** [/r/dev/gideros/scripts//GidAndroid.mk:20: android.install] Error 1

  • MoKaLuxMoKaLux Member
    https://developer.android.com/build/dependencies#duplicate_classes
    I will try on my side see how far I can get and report back.
    my growING GIDEROS github repositories: https://github.com/mokalux?tab=repositories
  • hgy29hgy29 Maintainer
    I know that last one, just relaunch build and it should pass this time
  • hgy29 said:

    I know that last one, just relaunch build and it should pass this time

    Nope, i tried multiple times
  • rrraptorrrraptor Member
    edited May 2023
    hgy29 said:

    I know that last one, just relaunch build and it should pass this time

    And it works today... :neutral:


    EDIT:
    So, the whole point of building gideros was to test imgui, but I only see these plugins (when runing test project on android):
    lsqlite3
    box2d
    lfs
    json
    accelerometer
    liquidfun
    socket.core
    gyroscope
    geolocation
    mime.core
    json.safe

    What I need to do?
  • hgy29hgy29 Maintainer
    Did you build your own custom android player with Imgur enabled in project settings ?
  • rrraptorrrraptor Member
    edited May 2023
    hgy29 said:

    Did you build your own custom android player with Imgur enabled in project settings ?

    In this one?


    EDIT:
    Ok, I got it working.

    Likes: MoKaLux

    +1 -1 (+1 / -0 )Share on Facebook
  • hgy29hgy29 Maintainer
    edited May 2023
    About NDK update: r17 is the highest version still supporting android SDK 14 (ICS), which is the current minimum for Gideros. Google play requires SDK 19 at least (KitKat), which is very old too. I am very much in favor of dropping ICS and upgrading to recent tools. According to this https://www.composables.com/tools/distribution-chart , there is virtually nothing below KitKat.

    EDIT: I have moved to NDK r25, and raised minimum sdk to 19

    Likes: MoKaLux

    +1 -1 (+1 / -0 )Share on Facebook
  • some updates please: lately I had some issue building Gideros from source (GH). The issue is with openAL and folder "C:\dev\gideros_dev20230925\libgid\external\openal-soft" being empty.

    There may be a problem with either:
    - Qt not fetching/compiling Gideros OpenAL from GH
    - Qt not copying the OpenAL files to Gideros folder "C:\dev\gideros_dev20230925\libgid\external\openal-soft"

    To solve my issue I copied the openal-soft files from an older build into the empty openal-soft folder.

    Hope this may help.
    my growING GIDEROS github repositories: https://github.com/mokalux?tab=repositories
  • MoKaLuxMoKaLux Member
    edited October 2023
    some more info regarding openal issue building Gideros GH:

    ...
    compiling gpath.cpp
    linking release/gvfs.dll
    make[2]: Leaving directory '/c/dev/gideros_dev20231001/libgvfs'
    make[1]: Leaving directory '/c/dev/gideros_dev20231001/libgvfs'
    cd ./libgid/openal; qmake openal.pro
    Info: creating stash file C:\dev\gideros_dev20231001\libgid\openal\.qmake.stash
    WARNING: Failure to find: ../external/openal-soft/al/auxeffectslot.cpp
    WARNING: Failure to find: ../external/openal-soft/al/buffer.cpp
    ...
    WARNING: Failure to find: ../external/openal-soft/alc/backends/winmm.cpp
    cd ./libgid/openal; make -j8 release
    make[1]: Entering directory '/c/dev/gideros_dev20231001/libgid/openal'
    make -f Makefile.Release
    make[2]: Entering directory '/c/dev/gideros_dev20231001/libgid/openal'
    make[2]: *** No rule to make target '../external/openal-soft/al/auxeffectslot.cpp', needed by 'release/dev/gideros_dev20231001/libgid/external/openal-soft/al/auxeffectslot.o'. Stop.
    make[2]: Leaving directory '/c/dev/gideros_dev20231001/libgid/openal'
    make[1]: *** [Makefile:45: release] Error 2
    make[1]: Leaving directory '/c/dev/gideros_dev20231001/libgid/openal'
    make: *** [/c/dev/gideros_dev20231001/scripts//GidQtWin.mk:187: libgid/openal.qmake.rel] Error 2


    Maybe one shouldn't use a folder like gideros_devYYYYMMDD?
    txt
    txt
    build_gideros_step5_error_for_forum.txt
    24K
    my growING GIDEROS github repositories: https://github.com/mokalux?tab=repositories
  • hgy29hgy29 Maintainer
    Hi, did you try to resync eternal folders with make -f scripts/Makefile.gid prep.repo ?
  • good morning :)
    yes I created a brand new folder and download Gideros GH. I do these:
    - git clone https://github.com/gideros/gideros gideros_dev20231001
    - configure scripts: Makefile.def and Makefile.gid
    - make -f scripts/Makefile.gid prep.repo
    - make -f scripts/Makefile.gid qscintilla
    - make -f scripts/Makefile.gid qlexilla
    - make -f scripts/Makefile.gid versioning
    - make –f scripts/Makefile.gid qtapp.install --> \libgid\external\openal-soft is empty!
    - make –f scripts/Makefile.gid win32.install

    Everything works but openal thing, so every time I copy the folder from an ealier build and qtapp.install then works.

    Some more infos:
    - $ make -f scripts/Makefile.gid prep.repo (please see file attached)
    ...
    Cloning into '/c/dev/gideros_dev20231001/lexilla'...
    remote: Enumerating objects: 45683, done.
    remote: Counting objects: 100% (2933/2933), done.
    ...
    Resolving deltas: 100% (35750/35750), done.
    Unstaged changes after reset:
    M scripts/Makefile.gid
    Unstaged changes after reset:
    M scripts/Makefile.gid
    if [ ! -d ./libgid/external/openal-soft ]; then \
    cd libgid/external; git submodule add https://github.com/gideros/openal-soft.git openal-soft; \
    git reset HEAD .gitmodules; \
    git reset HEAD libgid/external/openal-soft; \
    fi
    git submodule update --recursive
    txt
    txt
    build_gideros_step1.txt
    5K
    my growING GIDEROS github repositories: https://github.com/mokalux?tab=repositories
  • hgy29hgy29 Maintainer
    edited October 2023
    Ok, I see openal wasn't fetched, probably because openal-soft folder already exists. Can you try to remove it and relaunch prep.repo ?

    EDIT: I fixed the main repo meanwhile

    Likes: MoKaLux

    +1 -1 (+1 / -0 )Share on Facebook
Sign In or Register to comment.