vcpkg finally updated the port...now errors

85 views
Skip to first unread message

cgol...@gmail.com

unread,
Mar 26, 2022, 11:38:09 PM3/26/22
to OpenVDB Forum
After the port and build was updated from 7.0 to 9.0 I'm starting to get linking errors.  (Using VS2022)

  • error LNK2005: "private: static short __cdecl openvdb::v9_0::math::internal::half::convert(int)" (?convert@half@internal@math@v9_0@openvdb@@CAFH@Z) already defined in openvdb.lib(openvdb.dll)
  • 1>x64\Release\VDB.x : fatal error LNK1169: one or more multiply defined symbols found
Is there a good way to find out where the half stuff changed?  (Or even better is there a quick fix?)  The change lists seems to just gloss over some defines.

cgol...@gmail.com

unread,
Apr 3, 2022, 2:40:08 PM4/3/22
to OpenVDB Forum
BTW.  This all compiled and linked find under 7.0.

edward

unread,
Apr 4, 2022, 10:22:46 PM4/4/22
to OpenVDB Forum
You're trying to link in the static OpenVDB libraries? That symbol is _supposed_ to be defined in openvdb.lib. And since Try adding /VERBOSE to the linker command line that fails and see if you can find out from the verbose output. Offhand, I don't see anything in the code that would result in this function being duplicated.

-Edward

cgol...@gmail.com

unread,
Apr 6, 2022, 8:14:02 PM4/6/22
to OpenVDB Forum
I'm using Visual Studio so I'm not manually sending commands but adding  /VERBOSE  to the linker "command link" property gives a HUGE amount of "discarded" stuff. :)

I removed "openvdb.lib" from my dependency list and it compiled and was able to load into the 3d app.

edward

unread,
Apr 7, 2022, 11:57:30 AM4/7/22
to OpenVDB Forum
On Wednesday, April 6, 2022 at 8:14:02 PM UTC-4 cgol...@gmail.com wrote:
I'm using Visual Studio so I'm not manually sending commands but adding  /VERBOSE  to the linker "command link" property gives a HUGE amount of "discarded" stuff. :)

I removed "openvdb.lib" from my dependency list and it compiled and was able to load into the 3d app.

Ok, you have problems with linking in openvdb.lib multiple times then. Just a fluke that you didn't run into problems with openvdb 7, or that you changed something else that caused this during your upgrade to openvdb 9.

-Edward
Reply all
Reply to author
Forward
0 new messages