Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Unable to load custom schema in Omniverse App on Linux but Works on Windows #19

Open
ThaiLe-gt opened this issue Dec 17, 2024 · 4 comments

Comments

@ThaiLe-gt
Copy link

ThaiLe-gt commented Dec 17, 2024

I am currently developing a custom schema for Omniverse on a Linux system. Although the schema builds successfully, I encounter a symbol lookup error when attempting to load it into the Omniverse app. Interestingly, the same schema builds and loads correctly on a Windows machine.

Here’s the error I receive when running the Omniverse app on Linux:

/home/Omniverse/symphony/_build/linux-x86_64/release/kit/kit: symbol lookup error: /home/Omniverse/symphony/_build/linux-x86_64/release/exts/akila.schema/lib/libaklSchema.so: undefined symbol: _ZN32pxrInternal_v0_22__pxrReserved__6TfType20GetCanonicalTypeNameB5cxx11ERKSt9type_info
[12/17/24 09:15:39] ERROR    error running: /home/Omniverse/symphony/_build/linux-x86_64/release/akila.service.kit.sh, code: 127, message: ""

By the way, When building my custom schema on Linux, I encountered multiple CMake errors related to Boost targets in the default NvPxrPlugin.cmake file. To bypass the errors, I manually removed the conflicting targets from NvPxrPlugin.cmake and was able to build the custom schema successfully.

CMake Error at _build/host-deps/usd-plugin-cmake-utils/cmake/NvPxrPlugin.cmake:350 (add_library):
  add_library cannot create imported target "Boost::headers" because another
  target with the same name already exists.
Call Stack (most recent call first):
  _build/host-deps/usd-plugin-cmake-utils/cmake/NvPxrPlugin.cmake:484 (setup_boost_python_info)
  CMakeLists.txt:13 (include)


CMake Error at _build/host-deps/usd-plugin-cmake-utils/cmake/NvPxrPlugin.cmake:353 (add_library):
  add_library cannot create imported target "Boost::boost" because another
  target with the same name already exists.
Call Stack (most recent call first):
  _build/host-deps/usd-plugin-cmake-utils/cmake/NvPxrPlugin.cmake:484 (setup_boost_python_info)
  CMakeLists.txt:13 (include)


CMake Error at _build/host-deps/usd-plugin-cmake-utils/cmake/NvPxrPlugin.cmake:465 (add_library):
  add_library cannot create imported target "Boost::diagnostic_definitions"
  because another target with the same name already exists.
Call Stack (most recent call first):
  _build/host-deps/usd-plugin-cmake-utils/cmake/NvPxrPlugin.cmake:484 (setup_boost_python_info)
  CMakeLists.txt:13 (include)


CMake Error at _build/host-deps/usd-plugin-cmake-utils/cmake/NvPxrPlugin.cmake:466 (add_library):
  add_library cannot create imported target "Boost::disable_autolinking"
  because another target with the same name already exists.
Call Stack (most recent call first):
  _build/host-deps/usd-plugin-cmake-utils/cmake/NvPxrPlugin.cmake:484 (setup_boost_python_info)
  CMakeLists.txt:13 (include)


CMake Error at _build/host-deps/usd-plugin-cmake-utils/cmake/NvPxrPlugin.cmake:467 (add_library):
  add_library cannot create imported target "Boost::dynamic_linking" because
  another target with the same name already exists.
Call Stack (most recent call first):
  _build/host-deps/usd-plugin-cmake-utils/cmake/NvPxrPlugin.cmake:484 (setup_boost_python_info)
  CMakeLists.txt:13 (include)
@asluk
Copy link
Collaborator

asluk commented Dec 17, 2024

Hi @ThaiLe-gt , can you post the Kit version of the Windows and Linux OV apps you are trying this in? It should be in the Help --> About Window?

Does the issue reproduce with unmodified omniExampleSchema and omni.example.schema extension code as well? Or only in your modified custom schema?

@ThaiLe-gt
Copy link
Author

I am currently using a KIT 106.4 version in both the Windows 11 and Linux system (Ubuntu 22.04).
I just tested with omniExampleSchema and still get this issue.

@erslavin
Copy link
Collaborator

This looks like the _GLIBCXX_USE_CXX11_ABI=0 flag didn't get propagated correctly, pushed a fix that should address that issue. kit is still building on Linux against the old C++ ABI, so we need to pass this to schema builds to be compatible for use inside of kit.

@ThaiLe-gt
Copy link
Author

Thanks erslavin! I hope we can fix it

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants