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

#5081 causes linking errors if SYCL is not used since GLIBCXX_USE_CXX11_ABI defaults to OFF #5127

Closed
3 tasks done
meekersX opened this issue May 26, 2022 · 1 comment
Closed
3 tasks done
Assignees
Labels
build/install Build or installation issue

Comments

@meekersX
Copy link

Checklist

Steps to reproduce the issue

I first cloned Open3D by:

git clone https://github.com/isl-org/Open3D.git
cd Open3D

Then, I build Open3D (on Ubuntu 20.04) with:

mkdir build
cd build
cmake -DCMAKE_BUILD_TYPE=Release ..
make -j$(nproc)

This causes linking errors for a dependent project of mine:

undefined reference to `cv::imwrite(std::string const&, cv::_InputArray const&, std::vector<int, std::allocator<int> > const&)'

If built instead with:

mkdir build
cd build
cmake -DCMAKE_BUILD_TYPE=Release cmake -DCMAKE_BUILD_TYPE=Release -DGLIBCXX_USE_CXX11_ABI=ON ..
make -j$(nproc)

Then there are no linking errors.

Error message

undefined reference to `cv::imwrite(std::string const&, cv::_InputArray const&, std::vector<int, std::allocator<int> > const&)'

Open3D, Python and System information

- Operating system: Ubuntu 20.04
- System architecture: x86
- Is this a remote workstation?: no
- How did you install Open3D?: build from source
- Compiler version (if built from source): gcc (Ubuntu 9.4.0-1ubuntu1~20.04.1) 9.4.0

Additional information

I think the specific commit that causes the issue is here: 0702325

option(GLIBCXX_USE_CXX11_ABI "Set -D_GLIBCXX_USE_CXX11_ABI=1" ON )
option(BUILD_SYCL_MODULE          "Build SYCL module with Intel oneAPI"      OFF)
if(BUILD_SYCL_MODULE)
    option(GLIBCXX_USE_CXX11_ABI  "Set -D_GLIBCXX_USE_CXX11_ABI=1"           ON )
else()
    option(GLIBCXX_USE_CXX11_ABI  "Set -D_GLIBCXX_USE_CXX11_ABI=1"           OFF)
endif()

I haven't investigated enough to determine the proper solution, but I thought I should make the issue visible here.

@meekersX meekersX added the build/install Build or installation issue label May 26, 2022
@meekersX
Copy link
Author

Fixed by #6206

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
build/install Build or installation issue
Projects
None yet
Development

No branches or pull requests

2 participants