Building Chromium's unit tests: generate_fontconfig_caches failed - chromium

I have been able to build Chromium from source, for Ubuntu using this guide.
Subsequently, I want to build the unit tests for it. And specifically, I want to build vaapi_unittest.
I have not been able to do so. First it failed on missing TTF fonts, but after adding a whole bunch of fonts to third_party/test_fonts/test_fonts/ I now get this failure: generate_fontconfig_caches failed with exit code 1
$ autoninja vaapi_unittest
[25/1011] CXX obj/ui/base/x/x/x11_util.o
...
[789/1009] ACTION //third_party/test_fonts/fontconfig:do_generate_fontconfig_caches(//build/toolchain/linux:clang_x64)
FAILED: fontconfig_caches/fb5c91b2895aa445d23aebf7f9e2189c-le64.cache-7
python3 ../../build/gn_run_binary.py generate_fontconfig_caches
generate_fontconfig_caches failed with exit code 1
[802/1009] CXX obj/media/gpu/chromeos/chromeos/video_decoder_pipeline.o
ninja: build stopped: subcommand failed.
How can I avoid this error?
Or alternatively: I'm sure vaapi_unittest does not depend on fonts, so how can I prevent it from depending on that font and its font cache?

This is caused by the following entry in my out/Default/args.gn file:
use_bundled_fontconfig = false
When I set it to true instead, the unit test will compile and link.

Related

I'm Trying to use VTK with Qt using CMake and Visual Studio, and get this Error while building fatal error -> Byte order of target CPU unknown

My os is windows running on parallels Desktop app on Mac M2
When I Try to build the libraries I get this error
fatal error C1189: #error: "Byte order of target CPU unknown."
This is what I got in the console of VS when I finished installing
274>------ Build started: Project: ALL_BUILD, Configuration: Release ARM64 ------ 274>Building Custom Rule C:/VTK-9.2.2/src/CMakeLists.txt ========== Build: 157 succeeded, 117 failed, 0 up-to-date, 0 skipped ========== ========== Elapsed 11:48.565 ==========
If you are using an old (<2.8 cmake, this can be the issue): https://cmake.org/Bug/view.php?id=13808
In any case, you might try to set the byte-order manually in your cmake file:
set( CMAKE_CXX_BYTE_ORDER BIG_ENDIAN)
You could also check that CMAKE_OSX_ARCHITECTURES only specify one architecture or all architectures shares the same byte-order.

Intellij Project- Can't Get Cucumber Feature to Compile, Error: javac 19 was used to compile java sources

Edit: having a hard time posting links because it says it needs to be code? I'll post links to images in the comments.
New to all things Java related, trying out Cucumber School and the first project is driving me crazy. I've searched Google high and low but I keep getting the error below. I'll post screenshots that anyone may find relevant below that, too.
Here's the output:
Executing pre-compile tasks...
Running 'before' tasks
Checking sources
Copying resources... shouty
Parsing java… tests of shouty
Checking dependencies… tests of shouty
Dependency analysis found 0 affected files
Errors occurred while compiling module 'tests of shouty'
javac 19 was used to compile java sources
Finished, saving caches…
Compilation failed: errors: 1; warnings: 0
Executing post-compile tasks...
Compilation failed: errors: 1; warnings: 0
Synchronizing output directories...
10/16/2022 8:36 AM - Build completed with 1 error and 0 warnings in 2 sec, 13 ms
If there's anything else I can provide, please let me know. Thank you in advance!

React native build getting failed :app:transformClassesWithDexForDebug

I am getting error while building react-native app using command react-native run-android
Error
Dex: Error converting bytecode to dex:
Cause: com.android.dex.DexException: Multiple dex files define Lcom/google/android/gms/internal/zzav;
UNEXPECTED TOP-LEVEL EXCEPTION:
com.android.dex.DexException: Multiple dex files define Lcom/google/android/gms/internal/zzav;
at com.android.dx.merge.DexMerger.readSortableTypes(DexMerger.java:596)
at com.android.dx.merge.DexMerger.getSortedTypes(DexMerger.java:554)
at com.android.dx.merge.DexMerger.mergeClassDefs(DexMerger.java:535)
at com.android.dx.merge.DexMerger.mergeDexes(DexMerger.java:171)
at com.android.dx.merge.DexMerger.merge(DexMerger.java:189)
at com.android.dx.command.dexer.Main.mergeLibraryDexBuffers(Main.java:502)
at com.android.dx.command.dexer.Main.runMonoDex(Main.java:334)
at com.android.dx.command.dexer.Main.run(Main.java:277)
at com.android.dx.command.dexer.Main.main(Main.java:245)
at com.android.dx.command.Main.main(Main.java:106)
:app:transformClassesWithDexForDebug FAILED
Failure
Build failed with an exception.
What went wrong
Execution failed for task ':app:transformClassesWithDexForDebug'.
com.android.build.api.transform.TransformException:
com.android.ide.common.process.ProcessException:
java.util.concurrent.ExecutionException: java.lang.UnsupportedOperationException
Dependencies in android/app/build.gradle
delete android/app/build dir
This work for me.
As mentionned on this comment, you have to compile everything yourself. Add this in your android/app/build.gradle.
I don't know if you have the exact same problem, but everytime I ran in dex problems, this was the solution.
compile "com.google.android.gms:play-services-base:11.4.2"
compile "com.google.android.gms:play-services-base-license:11.4.2"
compile "com.google.android.gms:play-services-ads:11.4.2"
compile "com.google.android.gms:play-services-ads-lite:11.4.2"
compile "com.google.android.gms:play-services-ads-license:11.4.2"
compile "com.google.android.gms:play-services-analytics:11.4.2"
compile "com.google.android.gms:play-services-analytics-impl:11.4.2"
compile "com.google.android.gms:play-services-auth:11.4.2"
compile "com.google.android.gms:play-services-auth-base:11.4.2"
compile "com.google.android.gms:play-services-fitness:11.4.2"
compile "com.google.android.gms:play-services-gcm:11.4.2"
compile "com.google.android.gms:play-services-identity:11.4.2"
compile "com.google.android.gms:play-services-maps:11.4.2"
compile "com.google.android.gms:play-services-wallet:11.4.2"

Android Gradle - Gitlab CI - Docker - CMake - NullPointerException

I'm trying to get simple Android Unit Tests to run on Gitlab CI, but I'm having troubles getting things to build correctly in the CI Docker image. I have the master project which pulls from a Library project. The Library has C code in it, so I need to use CMake to get it to build. All of this is working locally on my windows machine when using Android Studio. However, once I move to the CI server, things break with the following error:
Using incremental javac compilation for :Library debug.
Incremental java compilation is an incubating feature.
Checking the license for package CMake 3.6.3155560 in /android-sdk-linux/licenses
License for package CMake 3.6.3155560 accepted.
Preparing "Install CMake 3.6.3155560 (revision: 3.6.3155560)".
"Install CMake 3.6.3155560 (revision: 3.6.3155560)" ready.
Finishing "Install CMake 3.6.3155560 (revision: 3.6.3155560)"
Installing CMake 3.6.3155560 in /android-sdk-linux/cmake/3.6.3155560
"Install CMake 3.6.3155560 (revision: 3.6.3155560)" complete.
"Install CMake 3.6.3155560 (revision: 3.6.3155560)" finished.
FAILURE: Build failed with an exception.
* What went wrong:
A problem occurred configuring project ':Library'.
> java.lang.NullPointerException (no error message)
* Try:
Run with --debug option to get more log output.
* Exception is:
org.gradle.api.ProjectConfigurationException: A problem occurred configuring project ':Library'.
at org.gradle.configuration.project.LifecycleProjectEvaluator.addConfigurationFailure(LifecycleProjectEvaluator.java:94)
at org.gradle.configuration.project.LifecycleProjectEvaluator.notifyAfterEvaluate(LifecycleProjectEvaluator.java:89)
...
at org.gradle.internal.concurrent.ExecutorPolicy$CatchAndRecordFailures.onExecute(ExecutorPolicy.java:54)
at org.gradle.internal.concurrent.StoppableExecutorImpl$1.run(StoppableExecutorImpl.java:40)
Caused by: java.lang.NullPointerException
at com.android.builder.sdk.DefaultSdkLoader.installSdkTool(DefaultSdkLoader.java:572)
at com.android.build.gradle.internal.SdkHandler.installCMake(SdkHandler.java:302)
at com.android.build.gradle.tasks.ExternalNativeJsonGenerator.create(ExternalNativeJsonGenerator.java:628)
at com.android.build.gradle.internal.TaskManager.createExternalNativeBuildJsonGenerators(TaskManager.java:1241)
at com.android.build.gradle.internal.LibraryTaskManager.lambda$createTasksForVariantData$11(LibraryTaskManager.java:240)
...
at com.sun.proxy.$Proxy15.afterEvaluate(Unknown Source)
at org.gradle.configuration.project.LifecycleProjectEvaluator.notifyAfterEvaluate(LifecycleProjectEvaluator.java:82)
... 56 more
BUILD FAILED
Total time: 1 mins 25.384 secs
Stopped 0 worker daemon(s).
Received result Failure[value=org.gradle.initialization.ReportedException: org.gradle.internal.exceptions.LocationAwareException: A problem occurred configuring project ':Library'.] from daemon DaemonInfo{pid=39, address=[1f3b75f9-7080-48b5-b298-0e6136640a0a port:41964, addresses:[/127.0.0.1]], state=Busy, lastBusy=1496784783851, context=DefaultDaemonContext[uid=0e3eadf0-a7bd-4ede-9eb8-0c2a96ebef58,javaHome=/usr/lib/jvm/java-8-openjdk-amd64,daemonRegistryDir=/root/.gradle/daemon,pid=39,idleTimeout=10800000,daemonOpts=-Xmx1536m,-Dfile.encoding=UTF-8,-Duser.country,-Duser.language=en, -Duser.variant]} (build should be done).
ERROR: Job failed: exit code 1
Judging by the line
Caused by: java.lang.NullPointerException
at com.android.builder.sdk.DefaultSdkLoader.installSdkTool(DefaultSdkLoader.java:572)
at com.android.build.gradle.internal.SdkHandler.installCMake(SdkHandler.java:302)
it looks like it is a problem with the CMake. But it looks like it is installed and the licence is accepted as noted by the output at the start of that block above.
Can anyone give me some pointers on what is the problem?
* Is it that gradle doesn't know where CMake was installed?
* Is it a problem perhaps with the NDK?
* Or perhaps where I can find the source code for com.android.build.gradle.internal.SdkHandler.installCMake and com.android.builder.sdk.DefaultSdkLoader.installSdkTool.
My searches have been unfruitful.
I can provide more about my setup upon request. (i.e. android project, docker image, gitlab-ci.yml, etc.)
Well, mbertin commented on Feb 2 at here that by using a lower gradle build tool, it solved the problem for him. (i.e. classpath 'com.android.tools.build:gradle:2.2.2).
After giving it an attempt, my build script got passed that error! (anyone know why?)
Thanks for the emotional support Stack Overflow! You are the best!

Building libopenmetaverse on CentOS 5

I'm trying to build libopenmetaverse on CentOS however I get the following error. I'm not this kind of developer and am installing this for someone else to use. This is just the part of the build that fails. Any ideas?
[nant] /opt/libomv/Programs/WinGridProxy/WinGridProxy.exe.build build
Buildfile: file:///opt/libomv/Programs/WinGridProxy/WinGridProxy.exe.build
Target framework: Mono 2.0 Profile
Target(s) specified: build
build:
[echo] Build Directory is /opt/libomv/bin
[csc] Compiling 15 files to '/opt/libomv/bin/WinGridProxy.exe'.
[resgen] Error: Invalid ResX input.
[resgen] Position: Line 2700, Column 5.
[resgen] Inner exception: An exception was thrown by the type initializer for System.Drawing.GDIPlus
BUILD FAILED
External Program Failed: /tmp/tmp5a71a509.tmp/resgen.exe (return code was 1)
Total time: 0.4 seconds.
BUILD FAILED
Nested build failed. Refer to build log for exact reason.
Total time: 47 seconds.
Build Exit Code: 1
You might need to install libgdiplus, or ensure that your system can find it.
Ok, dont know why, but installing libgdiplus-devel seemed to fix it.