"Si un trabajador quiere hacer bien su trabajo, primero debe afilar sus herramientas." - Confucio, "Las Analectas de Confucio. Lu Linggong"
Página delantera > Programación > ¿Por qué recibo errores de enlazador cuando uso la biblioteca experimental :: Filesystem en GCC 6.0?

¿Por qué recibo errores de enlazador cuando uso la biblioteca experimental :: Filesystem en GCC 6.0?

Publicado el 2025-03-04
Navegar:860

Why am I getting linker errors when using the experimental::filesystem library in GCC 6.0?

Error de enlace con experimental :: filesystem

cuando intentan implementar características de C 1Z usando la biblioteca experimental :: filesystem en GCC 6.0, los usuarios pueden encontrar un error de enlace. El mensaje de error indica una referencia indefinida a std :: experimental :: filessystem :: v1 :: __ cxx11 :: path :: _ m_split_cmpts ().

motivo: el TS del sistema de archivos no es parte de C 1Z, sino una especificación separada. La implementación de GCC de esta biblioteca está disponible en el modo C 11.

solución:

para resolver este problema, vincule con -lstdc fs. La biblioteca libstdc fs.a debe venir después de los objetos que dependen de él en el comando enlazador.

actualizaciones:

    noviembre de 2017:
  • GCC 8.x implementó la biblioteca del sistema de archivos C 17 en la biblioteca STD :: Files Systemspace. Esta biblioteca se puede usar con -std = gnu 17 o -std = c 17 y aún requiere vincular con -lstdc fs.
  • enero 2019:
  • gcc 9 en adelante permite el uso de componentes de std :: filesystem sin -lstdc fs. abril 2024 de abril 2024 Se agregó STD :: Experimental :: Filesystem Symbols a -lstdc exp.
Último tutorial Más>

Descargo de responsabilidad: Todos los recursos proporcionados provienen en parte de Internet. Si existe alguna infracción de sus derechos de autor u otros derechos e intereses, explique los motivos detallados y proporcione pruebas de los derechos de autor o derechos e intereses y luego envíelos al correo electrónico: [email protected]. Lo manejaremos por usted lo antes posible.

Copyright© 2022 湘ICP备2022001581号-3