-
Notifications
You must be signed in to change notification settings - Fork 348
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[Bug]: Fails to build on gcc-4.9 (seems specific to GEN12) #1551
Comments
Please, check top level readme of media driver: https://github.com/intel/media-driver#known-issues-and-limitations Quoting: "Intel(R) Media Driver for VAAPI is recommended to be built against gcc compiler v6.1 or later, which officially supported C++11." media-driver (and VPL RT and MSDK) should be built using gcc version 6 or later. Earlier versions do not fully and officially support C++11 (they have only experimental support). Moreover, media driver is known to have functional issues if built with earlier versions of gcc:. Please, consider to update your compiler per media-driver build requirements. As per above this is not a bug if not reproduced on gcc version 6 or later. Can this issue be reproduced on these gcc versions? |
mhw_vdbox_avp_impl.h compile error |
As @dvrogozh mentioned, media driver introduces C++11 which requires newer version of gcc support. So could you try to upgrade gcc to check if it is gone? |
There are two things to consider:
EDIT: I want to point out that it does get much farther using
|
No, it has only experimental support for C++11. Read documentation here: https://gcc.gnu.org/onlinedocs/gcc-4.9.4/gcc/Standards.html#Standards. Quoting (C++ section): "GCC supports the original ISO C++ standard (1998) and contains experimental support for the second ISO C++ standard (2011)." Same for gcc-5. Only gcc-6 has declared non-experimental support for c++11. In practice "experimental" support means that if you will find a compiler bug in gcc-4.9 for c++11 it won't be fixed in this compiler version. The chance you have to proceed with this issue is to either reproduce same issue you have with other compiler which officially supports c++11 (for gcc that's gcc-6 or later), or convince that a faulty statement does not follow the standard despite compilers with official support can handle it, or to suggest a refactor for the code which will simplify the place out.
Consider to switch to newer release. It's better than make something buildable with unsupported compiler version and step later in non-fixable compiler bugs which would show as runtime errors or segmentation faults. |
Hi, sitting in the same boat with a gcc-4.9 system which, due to various reasons, I can not update I accept your recommendation but for my use case (Kodi decoding videos with a gen12 cpu) mediadriver-2.6.3 it works flawlessly. To accomplish this I am patching mediadriver and use some configure options to disable problematic parts: patch 0002-gcc49.patch is available as #1545 |
Fix similar with #1545 could temporarily solve the issue, but i think it is not necessary. Media dirver has allowed developpers to use newer c++, especially in newly released driver. It cannot guarantee similar build issues by older compiler will not exist again in the future. |
So far, I will close this issue now and please re-open it again if you still have any concerns. Thanks, |
Which component impacted?
Not sure
Is it regression? Good in old configuration?
No response
What happened?
Synocommunity release of the driver: SynoCommunity/spksrc#5495
Using latest official: 22.5.4
Able to circumvent the build error using conjunction of the following cmake options:
What's the usage scenario when you are seeing the problem?
Others
What impacted?
n/a
Debug Information
Build error output:
build-x64-6.1.log
Do you want to contribute a patch to fix the issue?
No response
The text was updated successfully, but these errors were encountered: