Je travaille actuellement avec la chaîne d'outils Eclipse quartus prime (16.1) et NIOS II. J'ai essayé de compiler simple C++ Bonjour l'application du monde, mais je reçois une erreur comme ceci:La chaîne NIOS II C++ nécessite une mémoire massive dans l'application Hello World
« onchip_memory2_nios2' débordée par 609088 octets »
Ma question est maintenant: Est-ce normal pour la NIOS II cible? Est-ce que l'implémentation de la chaîne (aussi tout le conteneur STL) pour cette cible a réellement besoin de tant de mémoire (j'ai environ 128Ko de mémoire)? Quelqu'un at-il l'expérience du développement de logiciels pour la cible NIOS II en C++ et sait que c'est le cas ou non?
Je suis heureux pour toute aide. Merci!
demanderessemble à ceci:
#include <string>
int main()
{
std::string s = "Hello World!";
}
Qu'en est-il de l'utilisation d'un tableau de caractères (par exemple 'unsigned char s [15]') à la place? J'avais utilisé 'printf' pour les dispositifs à code de caractères avant de quitter NIOS II ... il y a environ 5 ans. Peut-être, et sont pris en charge maintenant - essayer de trouver quelque chose à ce sujet dans les références –
VolAnd
quelles bibliothèques avez-vous lier? statiquement? options de l'éditeur de liens? Assurez-vous qu'il s'agit d'une erreur de compilation ou d'exécution? – dlatikay
si l'empreinte mémoire de la STL est votre problème, il existe toujours l'ETL comme alternative, et diverses autres considérations sur les alternatives d'allocation de mémoire ici: http://stackoverflow.com/questions/2226252/embedded-c-to-use -stl-or-not – dlatikay