Maison > développement back-end > Golang > le corps du texte

Go ZeroMQ : problèmes d'éditeur de liens lors de la tentative de création de VS Code sous Windows

PHPz
Libérer: 2024-02-14 23:10:14
avant
1306 Les gens l'ont consulté

Go ZeroMQ:尝试在 Windows 上构建 VS Code 时出现链接器问题

L'éditeur PHP Zimo a rencontré un problème d'éditeur de liens en essayant d'utiliser Go ZeroMQ sur un système Windows lors de la création de VS Code. Ce problème se produit lors de la compilation et entraîne l'échec de la construction. Afin de résoudre ce problème, l'éditeur a mené une série d'enquêtes et de tentatives et a finalement trouvé une solution. Cet article présentera en détail le contexte et les causes de ce problème de l'éditeur de liens et partagera la solution, dans l'espoir d'aider d'autres développeurs à résoudre rapidement des problèmes similaires.

Contenu de la question

En bref, je souhaite faire ce qui suit : Utilisez https://github.com/pebbe/zmq4 et exécutez un exemple simple comme hello world in vs code sous Windows. Lors de la construction, j'obtiens ce type d'erreurs

<windows homedir>/tdm-gcc-64/bin/../lib/gcc/x86_64-w64-mingw32/10.3.0/../../../../x86_64-w64-mingw32/bin/ld.exe: $work\b299\_x008.o: in function `zmq4_bind':
<gopath>/pkg/mod/github.com/pebbe/[email&#160;protected]/wrappers_windows.go:27: undefined reference to `__imp_zmq_bind'
Copier après la connexion

Ce que j'ai fait jusqu'à présent :

  • Installez Visual Studio car il est requis pour l'installation de vcpkg
  • Installez libzmq en utilisant vcpkg.exe install libzmq:x64-windows (La valeur par défaut est une installation 32 bits, ce qui est la première fois que je le fais par erreur. J'espère qu'il n'y a pas de problèmes hérités qui causent des problèmes.)
  • Définissez les variables d'environnement go requises dans le terminal vs code (PowerShell). Après quelques essais, il me semble qu'il faut faire ceci :
go env -w CGO_CFLAGS='-I <Windows Homedir>\vcpkg\installed\x64-windows\include'
go env -w CGO_LDFLAGS='-LD:<Windows Homedir>\vcpkg\installed\x64-windows\lib -L:libzmq-mt-4_3_4.lib'
Copier après la connexion
  • Installer tdm-gcc
  • Ajouter <windows homedir>tdm-gcc-64bin<windows homedir>vcpkginstalledx64-windowslib<windows homedir>vcpkginstalledx64-windowsinclude à la variable d'environnement %path%

J'utilise la version go go1.18.4 windows/amd64 et vs code 1.74.1 sur Windows 10 entreprise.

Je ne sais pas quoi essayer ensuite, donc tous les conseils seraient grandement appréciés.

Solution de contournement

J'ai utilisé une syntaxe incorrecte pour les indicateurs de l'éditeur de liens. https://github.com/pebbe/zmq4 Mettez-moi sur le mauvais chemin. Ça devrait l'être CGO_LDFLAGS='-L <Windows Homedir>/vcpkg/installed/x64-windows/lib -l libzmq-mt-4_3_4'

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:stackoverflow.com
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal