Où puis-je obtenir les fenêtres.h pour Mac?
Je suis en train de compiler un programme sur MacOSX que j'ai écrit sur un système d'exploitation Windows. Le programme est un grand programme C++ avec l'API OpenGL, entre autres choses, pour un total de très nombreux répertoires et des fichiers.
Le processus de compilation d'abord avait un problème avec OpenGL pour le Mac, j'ai téléchargé tous les utilitaires de ligne de commande de OpenGL pour que cela fonctionne. Mais comme vous pouvez l'imaginer, chaque dossier au sein de l'OpenGL télécharger eu beaucoup de préprocesseurs, chacun de qui j'ai eu pour télécharger les dépendances.
Cependant, il me reste une étape essentielle: je reçois une erreur fatale en disant que windows.h fichier n'est pas trouvé. Cela semble quelque chose d'inhérent au système de Windows (de windows.h fichier est nulle part pour être trouvée dans ma grande liste d'annuaires pour le programme), et le Mac ne semble pas avoir un équivalent pour windows.h (http://cboard.cprogramming.com/c-programming/96087-windows-h-mac.html).
Je suis hors de la chance si vous essayez de compiler ce programme pour Mac ou quelque chose peut être récupéré?
OriginalL'auteur warship | 2014-10-28
Vous devez vous connecter pour publier un commentaire.
Une chose que vous pouvez faire est de créer un fichier fictif appelé
windows.h
pour satisfaire les#include
directive, puis la piste vers le bas, le manque typedefs, #définit, etc. un par un, en regardant le journal d'erreur du compilateur.Windows.h
est monolithique, et comprend une centaine d'autres Fenêtres en-têtes, mais votre programme ne va pas besoin de toutes ces définitions. Cela suppose que vous n'êtes pas en utilisant l'API Windows directement, et uniquement à l'aide de simples choses commeDWORD
. Si votre logiciel est construit à l'aide d'un framework comme GLUT ou GLFW qui est tout à fait possible, mais si vous directement interface avec WGL, vous allez avoir beaucoup de travail devant vous.Il semble y avoir un peu de Win32-code spécifique dans le beGUI cadre
FrameWindow_win32.cpp/h
. Je ne suis pas assez familier avec elle, pour vous dire si vous devez ré-écrire que de le faire fonctionner sur OS X, mais il semble être un exemple qui utilise GLUT lieu de l'API Win32 (begui\src\begui_glut_example
) - que l'exemple doit être portable.Il semble que le fichier fictif approche pose des problèmes: OpenGL semble utiliser l'api win32:
../bcore/src/GL/wglew.h:114:15: error: unknown type name 'WINAPI'
Pensez-vous peut-être à l'aide de GLFW (au lieu de beGUI) aiderait? Ou est le fait que OpenGL nécessite l'API Win32 cause pour ne gardant que ce compatible Windows?
OpenGL ne nécessite pas de Win32. Chaque plateforme a ses propres API qui gère le fenêtrage pour OpenGL, l'API Windows est appelé WGL. OS X utilise trois différents Api: AGL/CLG/NSOpenGL (c'est un mélange confus). Maintenant, à partir de l'erreur que vous avez posté, il semble que beGUI dépend de la WGL. GLFW n'ont pas ce problème, mais ce n'est pas un GUI cadre. Êtes-vous à l'aide de beGUI rien à faire de la GUI, ou tout simplement de créer une fenêtre OpenGL?
OriginalL'auteur Andon M. Coleman
windows.h
est fourni par le kit de développement logiciel Windows, et mis en œuvre par le système d'exploitation Windows lui-même.Vous avez besoin de réécrire le programme de ne pas utiliser les Api de Windows.
Bonne chance.
Uniquement si vous n'utilisez pas toutes les fonctions de windows.h.
Ok, regarde donc comme OpenGL est l'aide de l'API win32:
../bcore/src/GL/wglew.h:114:15: error: unknown type name 'WINAPI'
C'est un problème important, n'est-il pas?J'envisage de réécriture de beGUI de GLFW? Conseilleriez-vous pour aider à ce problème?
OpenGL ne pas utiliser l'API Windows. Mais vous avez mentionné que vous avez téléchargé un certain nombre d'outils et de fichiers pour l'OpenGL. Pourquoi avez-vous fait? Vous n'avez pas à le faire. Très probablement, vos problèmes avec cette chose que vous avez fait.
OriginalL'auteur SLaks
Vous ne pouvez pas obtenir Windows.h pour mac, Windows, OS spécifique.
Il existe de nombreuses alternatives pour les fonctions utilisées dans Windows.h d'autre part.
OriginalL'auteur Chantola