Docker Community Forums

Share and learn in the Docker community.

Libnetwork golang vendoring

In writing a docker network driver, I’m now getting “multiple definition” link errors because I need to import “” as well as “” for example, as do most other examples of docker network drivers; libnetwork vendors netlink, and golang’s static linking causes duplicate symbols in my binary. As far as I understand it, libraries should not vendor other libraries; only applications should be doing this.

What’s the best method of resolving this? For now, I’m manually removing after ‘go get -u’.