que estoy tratando de construir, utilizando MSVS 2010, el proyecto se encuentra en la siguiente git:Construir con MSVS 2010 y el C++ estándar
https://github.com/Joonhwan/exprtk
El problema es cuando comente la línea 48 ' #define exprtk_lean_and_mean 'en el archivo exprtk.hpp, me sale el siguiente error de compilación:
Error 1 error C1128: number of sections exceeded object file format limit : compile with /bigobj
buscar en Google el error, parece indicar la unidad de la traducción compilado ha compilado a algo más grande que un límite arbitariy, y añadiendo' bigobj 'a la línea de comando sh debería arreglar el problema (que lo hace). Al compilar el código con gcc (4.3), funciona sin problemas.
Mis preguntas son:
que C++ hace poner un límite en el número de tipos que se pueden tener en una unidad de traducción?
¿Es la forma en que se describe el código en esta mala práctica del proyecto? (Cuando me di cuenta de googlear un montón de bibliotecas Boost tiene el mismo problema, por ejemplo: Boost.Sprit)
Estos mínimos en los corchetes, porque se 'recomienda' no se pueden utilizar son los mínimos que definirían si un compilador es compatible hacia la norma o no - es este ¿correcto? –
@GellyRistor: Sí, eso es cierto. Pero la mayoría de los compiladores que cumplen con la norma principal por lo menos soportan estos requisitos mínimos y lo hacen. –
Una pregunta más, dada la lista anterior, ¿cuál de ellos define el número recomendado de 'secciones' sobre las que se queja el compilador msvc 2010? –