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

dv::dvsdk target not found #6

Open
LaiKefan1 opened this issue Nov 30, 2023 · 13 comments
Open

dv::dvsdk target not found #6

LaiKefan1 opened this issue Nov 30, 2023 · 13 comments

Comments

@LaiKefan1
Copy link

Hello! I have a problem while building the project.
I have installed dv-runtime on my computer, but when I run "catkin build" to build the project, an error outcomes as follows:


CMake Error at CMakeLists.txt:52 (add_library):
Target "dv_ros_lib" links to target "dv::dvsdk" but the target was not
found. Perhaps a find_package() call is missing for an IMPORTED target, or
an ALIAS target is missing?

CMake Error at CMakeLists.txt:59 (add_executable):
Target "dv_ros_node" links to target "dv::dvsdk" but the target was not
found. Perhaps a find_package() call is missing for an IMPORTED target, or
an ALIAS target is missing?

Is CMakeLists wrong? Or how can I install this dv::dvsdk and let the CMakeLists know?
Thanks!

@LaiKefan1 LaiKefan1 changed the title dv::dv-sdk target not found dv::dvsdk target not found Nov 30, 2023
@LaiKefan1
Copy link
Author

I find out that changing "dv::dvsdk" into "dv::sdk" can solve this problem!
But there happened to be another problem, which says in */dv_ros/accumulator/accumulator.cc:115:9: error: ‘struct dv::Frame’ has no member named ‘convertTo’
115 | frame.convertTo(corrected_frame_, CV_8U, scale_factor, shift_factor);
Does anyone have the same problem?

@doujiarui
Copy link

I also encountered the same problem, may I ask you to solve it, do you need to change to the old version of dv-runtime?

@msh003
Copy link

msh003 commented Jan 3, 2024

I face this problem too

@msh003
Copy link

msh003 commented Jan 5, 2024

I also encountered the same problem, may I ask you to solve it, do you need to change to the old version of dv-runtime?

I change the version of dv-runtime and installed 1.4.5, but the problem has not been solved.

@LaiKefan1
Copy link
Author

I also encountered the same problem, may I ask you to solve it, do you need to change to the old version of dv-runtime?

I change the version of dv-runtime and installed 1.4.5, but the problem has not been solved.

You can try to change
frame.convertTo(corrected_frame_, CV_8U, scale_factor, shift_factor);
into
frame.image.convertTo(corrected_frame_, CV_8U, scale_factor, shift_factor);

@msh003
Copy link

msh003 commented Jan 8, 2024

I also encountered the same problem, may I ask you to solve it, do you need to change to the old version of dv-runtime?

I change the version of dv-runtime and installed 1.4.5, but the problem has not been solved.

You can try to change frame.convertTo(corrected_frame_, CV_8U, scale_factor, shift_factor); into frame.image.convertTo(corrected_frame_, CV_8U, scale_factor, shift_factor);

Thank you so much for your response

@kehanXue
Copy link
Owner

kehanXue commented Jan 9, 2024

Sorry for the late reply. Have you solved this problem? This may be caused by the update of dv-runtime.

@msh003
Copy link

msh003 commented Jan 10, 2024

Sorry for the late reply. Have you solved this problem? This may be caused by the update of dv-runtime.

Thank you for your attention. This problem is solved but there is another problem with dv-ros. Because it needs dv-runtime and dv-processing for building. Dv-runtime and Dv-processing should be installed while both of them need gcc-10. When I install gcc10 I faced this error:

/opt/ros/melodic/include/ros/serialization.h:335:82: error: no class template named ‘rebind’ in ‘class std::allocator<celex5_msgs::Event_<std::allocator > >’
335 | typedef std::vector<T, typename ContainerAllocator::template rebind::other> VecType;
| ^~~~~~~
/opt/ros/melodic/include/ros/serialization.h:336:38: error: no class template named ‘rebind’ in ‘class std::allocator<celex5_msgs::Event_<std::allocator > >’
336 | typedef typename VecType::iterator IteratorType;
| ^~~~~~~~~~~~
/opt/ros/melodic/include/ros/serialization.h:337:44: error: no class template named ‘rebind’ in ‘class std::allocator<celex5_msgs::Event_<std::allocator > >’
337 | typedef typename VecType::const_iterator ConstIteratorType;

std::allocator::rebind was deprecated in C++17, removed in C++20.
I would appreciate it if you please check this issue.

@zeyulong
Copy link

zeyulong commented Feb 2, 2024

dv-runtime-1.2.5
need gcc >= 7.0, no need gcc >= 10.0
I success.

uninstall dv-runtime-dev

apt list --installed | grep -i dv-runtime-dev
sudo apt remove dv-runtime-dev
sudo apt-get purge dv-runtime-dev

download dv-runtime-1.2.5

https://gitlab.com/inivation/dv/dv-runtime/-/tree/1.2.5?ref_type=tags

build dv-runtime-1.2.5

cd dv-runtime-1.2.5
mkdir build && cd build
cmake -DCMAKE_INSTALL_PREFIX=/usr ..
make -j8
sudo make install

error

/dv-runtime-1.2.5/modules/calibration/calibration.cpp:50:63: error: ‘class cv::FileNode’ has no member named ‘string’; did you mean ‘isString’?

# dv-runtime-1.2.5/CmakeList.txt
set(OpenCV_DIR /usr/local/opencv/opencv345/share/OpenCV)  # example

@msh003
Copy link

msh003 commented Feb 2, 2024

Thank you so much for your response and sharing your information.
How did you install dv-processing?
As I know dv-processing need the gcc=>10 too

@zeyulong
Copy link

zeyulong commented Feb 3, 2024

Thank you so much for your response and sharing your information. How did you install dv-processing? As I know dv-processing need the gcc=>10 too

I don't know. When I uninstalled the dv-runtime that comes with the system and installed the dv-runtime-1.2.5 source code, the dv_ros was compiled successfully.

In my Ubuntu 18.04,

apt-cache search dv-processing
# -> dv-processing - Generic algorithms for event cameras (C++ headers).
# dv-processing-python - Generic algorithms for event cameras (Python bindings).
# dv-processing-utilities - Generic algorithms for event cameras (CLI utilities).

apt list --installed | grep -i dv-processing
# -> dv-processing-utilities/bionic,now 1.7.9-1~bionic amd64

apt-cache policy dv-processing-utilities                                   ─╯
# -> dv-processing-utilities:
# Installed: 1.7.9-1~bionic
# Candidate: 1.7.9-1~bionic
# Version table:
# 1.7.9-1~bionic 500
# 500 http://ppa.launchpad.net/inivation-ppa/inivation-bionic/ubuntu bionic/main amd64 Packages
# 100 /var/lib/dpkg/status

apt-cache policy dv-processing
# -> dv-processing:
# Installed: (none)
# Candidate: 1.7.9-1~bionic
# Version table:
# 1.7.9-1~bionic 500
# 500 http://ppa.launchpad.net/inivation-ppa/inivation-bionic/ubuntu bionic/main amd64 Packages

apt-cache policy dv-processing-python
# -> dv-processing:
# Installed: (none)
# Candidate: 1.7.9-1~bionic
# Version table:
# 1.7.9-1~bionic 500
# 500 http://ppa.launchpad.net/inivation-ppa/inivation-bionic/ubuntu bionic/main amd64 Packages

@msh003
Copy link

msh003 commented Feb 3, 2024

Thank you so much for your attention

@jjjjjjjj123456
Copy link

I noticed that this version was three years ago, but dv-runtime has been updated. I compared the version and found that 1.4.6 should be used, and it is dv::dvsdk. I hope my reply can solve your problem

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

6 participants