2016-10-21 7 views
-1

Je suis nouveau à Cygwin. Je l'ai installé aujourd'hui (dernière version téléchargée de leur site Web), et construit un programme sur lequel j'ai travaillé, qui, il y a des années, a été construit pour Windows en utilisant Cygwin par un développeur différent - Blitzed IRC Trivia (développer une branche). Sous Win10/64, Cygwin a terminé une compilation complète avec seulement les mêmes 2 avertissements (relatifs aux variables inutilisées mais définies) que je reçois quand je le fais sous Linux. Je l'ai développé et lancé sous Linux depuis plus d'un mois. Il se connecte à un serveur IRC et commence à poser des questions.Construit exe en utilisant Cygwin sur Win10, mais obtenir des erreurs concernant kernel32.dll

Après avoir utilisé Cygwin pour faire un exe, il commencerait, mais échouerait la vérification quand il est arrivé à L25 Donc il casse dans la fonction connect_to (lien ci-dessus). J'ai re-vérifié mon code plusieurs fois, et finalement installé gdb à partir du gestionnaire de paquets Cygwin. Lorsque je l'ai exécuté via gdb, avant d'atteindre le point d'arrêt, j'ai reçu une erreur qui semblait assez sérieuse concernant kernel32.dll. Malheureusement, je n'ai pas coller la sortie dans un fichier, donc je ne peux pas produire l'erreur exacte sans redémarrer Windows.

Mais après je cours dans ReactOS (dans un VirtualBox sur Debian 8), après avoir mis les dll Cygwin en place, je reçois une boîte de dialogue

le point d'entrée de procédure CancelSynchronousIo ne pouvait pas se trouver dans la bibliothèque de liens dynamiques kernel32.dll

J'ai cherché sur Google mais je n'ai encore rien trouvé de concret. Ma prochaine étape serait d'essayer de poster sur la liste de diffusion Cygwin.

+0

ReactOS est toujours en alpha. Qu'est-ce que vous attendiez. Ils n'ont probablement pas encore implémenté la fonction 'CancelSynchronousIo'. – krOoze

Répondre

0

J'ai essayé de construire sans utiliser -static et cela fonctionne maintenant. Je ne sais pas pourquoi cela a causé l'erreur.