I have an Alpine Linux Docker image that includes the installation of build-wrapper-linux-x86 and sonar-scanner. The relevant Dockerfile section is as follows:
However, when attempting to execute the following command, I encountered an error stating that build-wrapper-linux-x86 could not be found. I’ve already set the path using export PATH="$PATH:/buildwrapper/build-wrapper-linux-x86" , but the issue persists:
/build-wrapper-linux-x86/build-wrapper-linux-x86-64 --out-dir build_wrapper_output_directory make -C ./Mayank/Product/release -j$(($(nproc)+1))
Running ldd on build-wrapper-linux-x86-64 yielded the following errors:
/build-wrapper-linux-x86 # ldd build-wrapper-linux-x86-64
/lib64/ld-linux-x86-64.so.2 (0x7f10aed11000)
libc.so.6 => /lib64/ld-linux-x86-64.so.2 (0x7f10aed11000)
Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by build-wrapper-linux-x86-64)
Error relocating build-wrapper-linux-x86-64: getwd: symbol not found
Error relocating build-wrapper-linux-x86-64: __sprintf_chk: symbol not found
Error relocating build-wrapper-linux-x86-64: __strftime_l: symbol not found
Thanks. In the meantime, one of our developers let me know that we don’t support analysis on Alpine. There is a ticket here to track traction, and I’ve added this thread.
I switched to "Build using compilation database " in Alpine. It seems like the analysis completed successfully, but I encountered the following issue:
2024-02-06T09:19:30.8614648Z 09:19:30.860 INFO: Found empty cache on server
2024-02-06T09:19:30.8785347Z 09:19:30.877 DEBUG: Probing compiler: [/usr/bin/clang++, -x, c++, --std, c++14, -v, -dM, -E, -]
2024-02-06T09:19:31.5422858Z 09:19:31.541 DEBUG: eslint-bridge server will shutdown
2024-02-06T09:19:31.5452447Z 09:19:31.544 DEBUG: eslint-bridge server closed
2024-02-06T09:19:31.5462855Z 09:19:31.545 INFO: Time spent writing ucfgs 24ms
2024-02-06T09:19:32.3073092Z 09:19:32.306 INFO: ------------------------------------------------------------------------
2024-02-06T09:19:32.3074140Z 09:19:32.306 INFO: EXECUTION FAILURE
2024-02-06T09:19:32.3075493Z 09:19:32.306 INFO: ------------------------------------------------------------------------
2024-02-06T09:19:32.3076090Z 09:19:32.307 INFO: Total time: 2:05.376s
2024-02-06T09:19:32.3914534Z 09:19:32.390 INFO: Final Memory: 107M/456M
2024-02-06T09:19:32.3916138Z 09:19:32.390 INFO: ------------------------------------------------------------------------
2024-02-06T09:19:32.3917365Z 09:19:32.390 ERROR: Error during SonarScanner execution
2024-02-06T09:19:32.3920212Z java.lang.IllegalStateException: java.io.IOException: Cannot run program "/__w/QA-TEST/QA-TEST/.scannerwork/.sonartmp/1739467429620489240/subprocess" (in directory "/__w/QA-TEST/QA-TEST/QA-TEST/Product/release"): error=2, No such file or directory
2024-02-06T09:19:32.3922338Z at com.sonar.cpp.driver.ProcessExecutor.execute(ProcessExecutor.java:73)
2024-02-06T09:19:32.3923585Z at com.sonar.cpp.driver.ProcessExecutor.execute(ProcessExecutor.java:44)
2024-02-06T09:19:32.3925082Z at com.sonar.cpp.analyzer.ClangDriver.lambda$probeCompiler$9(ClangDriver.java:759)
2024-02-06T09:19:32.3926269Z at java.base/java.util.HashMap.computeIfAbsent(HashMap.java:1220)
2024-02-06T09:19:32.3927422Z at com.sonar.cpp.analyzer.ClangDriver.probeCompiler(ClangDriver.java:749)
2024-02-06T09:19:32.3928634Z at com.sonar.cpp.analyzer.ClangDriver.onCapture(ClangDriver.java:488)
2024-02-06T09:19:32.3929864Z at com.sonar.cpp.analyzer.CompilerDrivers.onCapture(CompilerDrivers.java:34)
2024-02-06T09:19:32.3931131Z at com.sonar.cpp.plugin.CFamilySensor.lambda$process$17(CFamilySensor.java:908)
2024-02-06T09:19:32.3932499Z at com.sonar.cpp.plugin.CompileCommandsReader.readCaptures(CompileCommandsReader.java:60)
2024-02-06T09:19:32.3937908Z at com.sonar.cpp.plugin.CFamilySensor.process(CFamilySensor.java:905)
2024-02-06T09:19:32.3939615Z at com.sonar.cpp.plugin.CFamilySensor.process(CFamilySensor.java:410)
2024-02-06T09:19:32.3941208Z at com.sonar.cpp.plugin.CFamilySensor.execute(CFamilySensor.java:215)
2024-02-06T09:19:32.3942817Z at org.sonar.scanner.sensor.AbstractSensorWrapper.analyse(AbstractSensorWrapper.java:64)
2024-02-06T09:19:32.3944799Z at org.sonar.scanner.sensor.ModuleSensorsExecutor.execute(ModuleSensorsExecutor.java:88)
2024-02-06T09:19:32.3946546Z at org.sonar.scanner.sensor.ModuleSensorsExecutor.execute(ModuleSensorsExecutor.java:64)
2024-02-06T09:19:32.3948468Z at org.sonar.scanner.scan.SpringModuleScanContainer.doAfterStart(SpringModuleScanContainer.java:82)
2024-02-06T09:19:32.3953851Z at org.sonar.core.platform.SpringComponentContainer.startComponents(SpringComponentContainer.java:188)
2024-02-06T09:19:32.3957990Z at org.sonar.core.platform.SpringComponentContainer.execute(SpringComponentContainer.java:167)
2024-02-06T09:19:32.3960134Z at org.sonar.scanner.scan.SpringProjectScanContainer.scan(SpringProjectScanContainer.java:403)
2024-02-06T09:19:32.3962150Z at org.sonar.scanner.scan.SpringProjectScanContainer.scanRecursively(SpringProjectScanContainer.java:399)
2024-02-06T09:19:32.3965681Z at org.sonar.scanner.scan.SpringProjectScanContainer.doAfterStart(SpringProjectScanContainer.java:368)
2024-02-06T09:19:32.3967762Z at org.sonar.core.platform.SpringComponentContainer.startComponents(SpringComponentContainer.java:188)
2024-02-06T09:19:32.3969745Z at org.sonar.core.platform.SpringComponentContainer.execute(SpringComponentContainer.java:167)
2024-02-06T09:19:32.3972267Z at org.sonar.scanner.bootstrap.SpringGlobalContainer.doAfterStart(SpringGlobalContainer.java:137)
2024-02-06T09:19:32.3974521Z at org.sonar.core.platform.SpringComponentContainer.startComponents(SpringComponentContainer.java:188)
2024-02-06T09:19:32.3976456Z at org.sonar.core.platform.SpringComponentContainer.execute(SpringComponentContainer.java:167)
2024-02-06T09:19:32.3978035Z at org.sonar.batch.bootstrapper.Batch.doExecute(Batch.java:72)
2024-02-06T09:19:32.3979462Z at org.sonar.batch.bootstrapper.Batch.execute(Batch.java:66)
2024-02-06T09:19:32.3981234Z at org.sonarsource.scanner.api.internal.batch.BatchIsolatedLauncher.execute(BatchIsolatedLauncher.java:46)
2024-02-06T09:19:32.3983906Z at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
2024-02-06T09:19:32.3985679Z at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77)
2024-02-06T09:19:32.3987657Z at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
2024-02-06T09:19:32.3989279Z at java.base/java.lang.reflect.Method.invoke(Method.java:568)
2024-02-06T09:19:32.3991139Z at org.sonarsource.scanner.api.internal.IsolatedLauncherProxy.invoke(IsolatedLauncherProxy.java:60)
2024-02-06T09:19:32.3992760Z at jdk.proxy1/jdk.proxy1.$Proxy0.execute(Unknown Source)
2024-02-06T09:19:32.3994335Z at org.sonarsource.scanner.api.EmbeddedScanner.doExecute(EmbeddedScanner.java:189)
2024-02-06T09:19:32.3996011Z at org.sonarsource.scanner.api.EmbeddedScanner.execute(EmbeddedScanner.java:138)
2024-02-06T09:19:32.3997456Z at org.sonarsource.scanner.cli.Main.execute(Main.java:126)
2024-02-06T09:19:32.3998676Z at org.sonarsource.scanner.cli.Main.execute(Main.java:81)
2024-02-06T09:19:32.3999852Z at org.sonarsource.scanner.cli.Main.main(Main.java:62)
2024-02-06T09:19:32.4002944Z Caused by: java.io.IOException: Cannot run program "/__w/QA-TEST/QA-TEST/.scannerwork/.sonartmp/1739467429620489240/subprocess" (in directory "/__w/QA-TEST/QA-TEST/QA-TEST/Product/release"): error=2, No such file or directory
2024-02-06T09:19:32.4005299Z at java.base/java.lang.ProcessBuilder.start(ProcessBuilder.java:1143)
2024-02-06T09:19:32.4006688Z at java.base/java.lang.ProcessBuilder.start(ProcessBuilder.java:1073)
2024-02-06T09:19:32.4008069Z at com.sonar.cpp.driver.ProcessExecutor.execute(ProcessExecutor.java:57)
2024-02-06T09:19:32.4009085Z ... 39 more
2024-02-06T09:19:32.4010305Z Caused by: java.io.IOException: error=2, No such file or directory
2024-02-06T09:19:32.4011513Z at java.base/java.lang.ProcessImpl.forkAndExec(Native Method)
2024-02-06T09:19:32.4012746Z at java.base/java.lang.ProcessImpl.<init>(ProcessImpl.java:314)
2024-02-06T09:19:32.4014218Z at java.base/java.lang.ProcessImpl.start(ProcessImpl.java:244)
2024-02-06T09:19:32.4015478Z at java.base/java.lang.ProcessBuilder.start(ProcessBuilder.java:1110)
2024-02-06T09:19:32.4016417Z ... 41 more
2024-02-06T09:19:32.4017019Z 09:19:32.391 ERROR:
2024-02-06T09:19:32.4018330Z 09:19:32.391 ERROR: Re-run SonarScanner using the -X switch to enable full debug logging.
2024-02-06T09:19:32.7446840Z ##[error]Process completed with exit code 1.
2024-02-06T09:19:32.7665076Z Post job cleanup.
2024-02-06T09:19:32.7671515Z ##[command]/usr/local/bin/docker exec 075383154f260b1118e918efa341ccb13fc5862aa53ffca7a4787e098f1ec4f0 sh -c "cat /etc/*release | grep ^ID"
Hi @mayankxlon and thanks for sharing the problem with us,
Unfortunately, we don’t support running CFamily analysis on Alpine, our analyzer requires a glibc-based distribution. This applies when using both the compilation database and the build-wrapper approaches. As mentioned by @Colin earlier, we have this ticket to record traction.