Important: Please read the Qt Code of Conduct - https://forum.qt.io/topic/113070/qt-code-of-conduct

Library file can not be found during compilation although it exists



  • Hi,

    I'm trying to build QtAV for Android with Qt 5.11 and I'm getting a very strange error. During the compilation some .so libraries are created, copied to a different location and then used in the next steps. But the copying fails with a message that the file dosn't exist. But if I check the location the .so library is there. Here is the log:

    del libQtAV.so
    Could Not Find C:\Moje\QtProjects\build-QtAV-Android\src\libQtAV.so
    C:\app\Android\SDK\ndk-bundle/toolchains/arm-linux-androideabi-4.9/prebuilt/windows-x86_64/bin/arm-linux-androideabi-g++ --sysroot=C:\app\Android\SDK\ndk-bundle/platforms/android-16/arch-arm/ -Wl,--enable-new-dtags -Wl,-rpath=C:/Qt/5.11.2/android_armv7/lib -Wl,--no-undefined -Wl,-z,noexecstack -shared -Wl,-soname,libQtAV.so -o libQtAV.so ..\.obj\QtAV_android_\uchardet.obj ..\.obj\QtAV_android_\nsEUCTWProber.obj ..\.obj\QtAV_android_\LangCyrillicModel.obj ..\.obj\QtAV_android_\nsSBCharSetProber.obj ..\.obj\QtAV_android_\CharDistribution.obj ..\.obj\QtAV_android_\nsLatin1Prober.obj ..\.obj\QtAV_android_\nsEscSM.obj ..\.obj\QtAV_android_\nsUTF8Prober.obj ..\.obj\QtAV_android_\nsBig5Prober.obj ..\.obj\QtAV_android_\LangBulgarianModel.obj ..\.obj\QtAV_android_\nsGB2312Prober.obj ..\.obj\QtAV_android_\nsCharSetProber.obj ..\.obj\QtAV_android_\nsEscCharsetProber.obj ..\.obj\QtAV_android_\nsEUCKRProber.obj ..\.obj\QtAV_android_\nsEUCJPProber.obj ..\.obj\QtAV_android_\nsSJISProber.obj ..\.obj\QtAV_android_\nsMBCSSM.obj ..\.obj\QtAV_android_\nsHebrewProber.obj ..\.obj\QtAV_android_\nsUniversalDetector.obj ..\.obj\QtAV_android_\nsSBCSGroupProber.obj ..\.obj\QtAV_android_\nsMBCSGroupProber.obj ..\.obj\QtAV_android_\LangThaiModel.obj ..\.obj\QtAV_android_\LangHebrewModel.obj ..\.obj\QtAV_android_\JpCntx.obj ..\.obj\QtAV_android_\LangHungarianModel.obj ..\.obj\QtAV_android_\LangGreekModel.obj ..\.obj\QtAV_android_\egl_api.obj ..\.obj\QtAV_android_\jmi.obj ..\.obj\QtAV_android_\AndroidIO.obj ..\.obj\QtAV_android_\VideoDecoderMediaCodec.obj ..\.obj\QtAV_android_\AudioResamplerFF.obj ..\.obj\QtAV_android_\AudioOutputOpenSL.obj ..\.obj\QtAV_android_\VideoDecoderCUDA.obj ..\.obj\QtAV_android_\SurfaceInteropCUDA.obj ..\.obj\QtAV_android_\cuda_api.obj ..\.obj\QtAV_android_\GLSLFilter.obj ..\.obj\QtAV_android_\OpenGLRendererBase.obj ..\.obj\QtAV_android_\gl_api.obj ..\.obj\QtAV_android_\OpenGLTypes.obj ..\.obj\QtAV_android_\Geometry.obj ..\.obj\QtAV_android_\GeometryRenderer.obj ..\.obj\QtAV_android_\SubImagesGeometry.obj ..\.obj\QtAV_android_\SubImagesRenderer.obj ..\.obj\QtAV_android_\OpenGLVideo.obj ..\.obj\QtAV_android_\VideoShaderObject.obj ..\.obj\QtAV_android_\VideoShader.obj ..\.obj\QtAV_android_\ShaderManager.obj ..\.obj\QtAV_android_\ConvolutionShader.obj ..\.obj\QtAV_android_\OpenGLHelper.obj ..\.obj\QtAV_android_\OpenGLWindowRenderer.obj ..\.obj\QtAV_android_\AVCompat.obj ..\.obj\QtAV_android_\QtAV_Global.obj ..\.obj\QtAV_android_\SubImage.obj ..\.obj\QtAV_android_\CharsetDetector.obj ..\.obj\QtAV_android_\PlainText.obj ..\.obj\QtAV_android_\PlayerSubtitle.obj ..\.obj\QtAV_android_\Subtitle.obj ..\.obj\QtAV_android_\SubtitleProcessor.obj ..\.obj\QtAV_android_\SubtitleProcessorFFmpeg.obj ..\.obj\QtAV_android_\GPUMemCopy.obj ..\.obj\QtAV_android_\Logger.obj ..\.obj\QtAV_android_\AudioThread.obj ..\.obj\QtAV_android_\internal.obj ..\.obj\QtAV_android_\AVThread.obj ..\.obj\QtAV_android_\AudioFormat.obj ..\.obj\QtAV_android_\AudioFrame.obj ..\.obj\QtAV_android_\AudioResampler.obj ..\.obj\QtAV_android_\AudioDecoder.obj ..\.obj\QtAV_android_\AudioDecoderFFmpeg.obj ..\.obj\QtAV_android_\AudioEncoder.obj ..\.obj\QtAV_android_\AudioEncoderFFmpeg.obj ..\.obj\QtAV_android_\AVDecoder.obj ..\.obj\QtAV_android_\AVEncoder.obj ..\.obj\QtAV_android_\AVMuxer.obj ..\.obj\QtAV_android_\AVDemuxer.obj ..\.obj\QtAV_android_\AVDemuxThread.obj ..\.obj\QtAV_android_\ColorTransform.obj ..\.obj\QtAV_android_\Frame.obj ..\.obj\QtAV_android_\FrameReader.obj ..\.obj\QtAV_android_\Filter.obj ..\.obj\QtAV_android_\FilterContext.obj ..\.obj\QtAV_android_\FilterManager.obj ..\.obj\QtAV_android_\LibAVFilter.obj ..\.obj\QtAV_android_\SubtitleFilter.obj ..\.obj\QtAV_android_\EncodeFilter.obj ..\.obj\QtAV_android_\ImageConverter.obj ..\.obj\QtAV_android_\ImageConverterFF.obj ..\.obj\QtAV_android_\Packet.obj ..\.obj\QtAV_android_\PacketBuffer.obj ..\.obj\QtAV_android_\AVError.obj ..\.obj\QtAV_android_\AVPlayer.obj ..\.obj\QtAV_android_\AVPlayerPrivate.obj ..\.obj\QtAV_android_\AVTranscoder.obj ..\.obj\QtAV_android_\AVClock.obj ..\.obj\QtAV_android_\VideoCapture.obj ..\.obj\QtAV_android_\VideoFormat.obj ..\.obj\QtAV_android_\VideoFrame.obj ..\.obj\QtAV_android_\MediaIO.obj ..\.obj\QtAV_android_\QIODeviceIO.obj ..\.obj\QtAV_android_\AudioOutput.obj ..\.obj\QtAV_android_\AudioOutputBackend.obj ..\.obj\QtAV_android_\AudioOutputNull.obj ..\.obj\QtAV_android_\VideoRenderer.obj ..\.obj\QtAV_android_\VideoOutput.obj ..\.obj\QtAV_android_\QPainterRenderer.obj ..\.obj\QtAV_android_\AVOutput.obj ..\.obj\QtAV_android_\OutputSet.obj ..\.obj\QtAV_android_\Statistics.obj ..\.obj\QtAV_android_\VideoDecoder.obj ..\.obj\QtAV_android_\VideoDecoderFFmpegBase.obj ..\.obj\QtAV_android_\VideoDecoderFFmpeg.obj ..\.obj\QtAV_android_\VideoDecoderFFmpegHW.obj ..\.obj\QtAV_android_\VideoEncoder.obj ..\.obj\QtAV_android_\VideoEncoderFFmpeg.obj ..\.obj\QtAV_android_\VideoThread.obj ..\.obj\QtAV_android_\VideoFrameExtractor.obj ..\.obj\QtAV_android_\qrc_QtAV.obj ..\.obj\QtAV_android_\qrc_shaders.obj ..\.obj\QtAV_android_\moc_ShaderManager.obj ..\.obj\QtAV_android_\moc_GLSLFilter.obj ..\.obj\QtAV_android_\moc_OpenGLVideo.obj ..\.obj\QtAV_android_\moc_VideoShaderObject.obj ..\.obj\QtAV_android_\moc_OpenGLWindowRenderer.obj ..\.obj\QtAV_android_\moc_AudioEncoder.obj ..\.obj\QtAV_android_\moc_AudioOutput.obj ..\.obj\QtAV_android_\moc_AVDecoder.obj ..\.obj\QtAV_android_\moc_AVEncoder.obj ..\.obj\QtAV_android_\moc_AVDemuxer.obj ..\.obj\QtAV_android_\moc_AVMuxer.obj ..\.obj\QtAV_android_\moc_Filter.obj ..\.obj\QtAV_android_\moc_LibAVFilter.obj ..\.obj\QtAV_android_\moc_EncodeFilter.obj ..\.obj\QtAV_android_\moc_FrameReader.obj ..\.obj\QtAV_android_\moc_AVPlayer.obj ..\.obj\QtAV_android_\moc_AVTranscoder.obj ..\.obj\QtAV_android_\moc_VideoCapture.obj ..\.obj\QtAV_android_\moc_VideoOutput.obj ..\.obj\QtAV_android_\moc_MediaIO.obj ..\.obj\QtAV_android_\moc_AVClock.obj ..\.obj\QtAV_android_\moc_VideoEncoder.obj ..\.obj\QtAV_android_\moc_VideoFrameExtractor.obj ..\.obj\QtAV_android_\moc_Subtitle.obj ..\.obj\QtAV_android_\moc_SubtitleFilter.obj ..\.obj\QtAV_android_\moc_PlayerSubtitle.obj ..\.obj\QtAV_android_\moc_AudioOutputBackend.obj ..\.obj\QtAV_android_\moc_AVDemuxThread.obj ..\.obj\QtAV_android_\moc_AVThread.obj ..\.obj\QtAV_android_\moc_AudioThread.obj ..\.obj\QtAV_android_\moc_VideoThread.obj ..\.obj\QtAV_android_\moc_VideoDecoderFFmpegHW.obj ..\.obj\QtAV_android_\moc_OutputSet.obj  -LC:\app\Android\SDK\ndk-bundle/sources/cxx-stl/gnu-libstdc++/4.9/libs/armeabi-v7a -Lc:/app/android/sdk/ndk-bundle/toolchains/arm-linux-androideabi-4.9/prebuilt/windows-x86_64/bin/../lib/gcc/arm-linux-androideabi/4.9.x -lswresample -lavdevice -lavfilter -lOpenSLES -LC:/Qt/5.11.2/android_armv7/lib -lavcodec -lavformat -lswscale -lavutil -lQt5Gui -Lc:\utils\android-ndk-r10e/sources/cxx-stl/gnu-libstdc++/4.9/libs/armeabi-v7a -Lc:/utils/android-ndk-r10e/toolchains/arm-linux-androideabi-4.9/prebuilt/windows/bin/../lib/gcc/arm-linux-androideabi/4.9 -lQt5AndroidExtras -LC:\Qt\5.11.2\android_armv7/lib -lQt5Core -lGLESv2 -lgnustl_shared -lgcc -llog -lz -lm -ldl -lc 
    del ..\lib_android_\libQtAV.so
    Could Not Find C:\Moje\QtProjects\build-QtAV-Android\lib_android_\libQtAV.so
    move libQtAV.so ..\lib_android_\libQtAV.so
    process_begin: CreateProcess(NULL, move libQtAV.so ..\lib_android_\libQtAV.so, ...) failed.
    make (e=2): Systém nemůže nalézt uvedený soubor.
    
    make[1]: [..\lib_android_\libQtAV.so] Error 2 (ignored)
    

    The Czech message "Systém nemůže nalézt uvedený soubor." means that system can not find the file.

    But if I check the path C:\Moje\QtProjects\build-QtAV-Android\src, the file libQtAV.so is there. Why the move command fails?

    Thank you.


Log in to reply