2015-08-08 12 views
8

Stavo cercando di compilare il file exprtk.hpp (https://exprtk.codeplex.com/) con mingw32 (491_32) su Qt (win7). Durante la compilazione, io do questo messaggio di errore:mingw bug "troppe sezioni" durante la compilazione di un enorme file di intestazione in Qt

debug\main.o:-1: error: too many sections (35325) 

Ho notato che il file exprtk.hpp è enorme (> 32.000 linee). Ho provato i flag di ottimizzazione sul compilatore ma non ha aiutato Eighter. sarò apprezzato se qualcuno mi aiuti ... Saluti,

+0

Penso che il flag "bigobj" risolverà il mio problema ma il mio compilatore non riconosce questo flag. – Mosi

risposta

0

enorme codice di intestazione di sola è già una cattiva progettazione, preferirei consiglia di utilizzare un'altra libreria, come muParser.

Il problema era già stato discusso in altri thread, ad esempio this.

Come avete già notato, passando/bigobj al compilatore di Microsoft induce a produrre un formato COFF munged con fino a 2^31 sezioni, che "dovrebbe essere sufficiente per chiunque."

Ho provato questa nuova opzione con MinGW-w64 e funziona. Devi passare pass -Wa, -mbig-obj a gcc per attivare gli oggetti grandi (-Wa significa passare l'opzione all'assemblatore). - Francis Gagné

+0

Grazie, per prima cosa ho testato l'opzione -Wa, -mbig-obj e non ha funzionato. In secondo luogo, sto cercando una libreria che supporti "operazioni logiche", "strutture di controllo e di loop". – Mosi

+0

@Mosi Questo è già più che un parser matematico dovrebbe fornire, dovresti piuttosto aggiungere un linguaggio di scripting leggero, come [Lua] (http://www.lua.org/). – Youka

Problemi correlati