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

建立工作空间出错 #2

Open
ivanzzh opened this issue Mar 1, 2020 · 43 comments
Open

建立工作空间出错 #2

ivanzzh opened this issue Mar 1, 2020 · 43 comments

Comments

@ivanzzh
Copy link

ivanzzh commented Mar 1, 2020

您好,我在下载好vfly文件后,对工作空间初始化时,遇到了以下错误,这里似乎缺失了一个vfly_pose.h的文件,请问这个问题该如何解决呢?
Errors << vfly:make /home/zhenhang/catkin_ws/logs/vfly/build.make.000.log
/home/zhenhang/catkin_ws/src/vfly/src/rotation_on_fixed_spot_example.cpp:3:27: fatal error: vfly/vfly_pose.h: No such file or directory
compilation terminated.
/home/zhenhang/catkin_ws/src/vfly/src/move_with_zero_attitude_example.cpp:3:27: fatal error: vfly/vfly_pose.h: No such file or directory
compilation terminated.
make[2]: *** [CMakeFiles/rotation_on_fixed_spot_example.dir/src/rotation_on_fixed_spot_example.cpp.o] Error 1
make[1]: *** [CMakeFiles/rotation_on_fixed_spot_example.dir/all] Error 2
make[1]: *** Waiting for unfinished jobs....
make[2]: *** [CMakeFiles/move_with_zero_attitude_example.dir/src/move_with_zero_attitude_example.cpp.o] Error 1
make[1]: *** [CMakeFiles/move_with_zero_attitude_example.dir/all] Error 2
In file included from /home/zhenhang/catkin_ws/src/vfly/src/omni_adrc_controller_node.cpp:1:0:
/home/zhenhang/catkin_ws/src/vfly/include/omni_adrc_controller_node.h:14:28: fatal error: vfly/vfly_pose.h: No such file or directory
compilation terminated.
make[2]: *** [CMakeFiles/omni_adrc_controller_node.dir/src/omni_adrc_controller_node.cpp.o] Error 1
make[1]: *** [CMakeFiles/omni_adrc_controller_node.dir/all] Error 2
make: *** [all] Error 2
1b84f1890ae0118614df8a9a396f2a1

@LLlkaiwen
Copy link
Owner

这个问题是node程序对于vfly_pose这个msg是有依赖的,但是编译的时候可能没有先编译vfly_pose,解决办法是将node注释,先编译一遍,然后再把node取消注释进行编译。

@LLlkaiwen LLlkaiwen reopened this Mar 1, 2020
@LLlkaiwen
Copy link
Owner

具体说就是CMakeLists文件的48到62行注释掉先编译一遍,然后取消注释编译完整的package

@LLlkaiwen
Copy link
Owner

image

@ivanzzh
Copy link
Author

ivanzzh commented Mar 1, 2020

太感谢,我现在试试

@ivanzzh
Copy link
Author

ivanzzh commented Mar 1, 2020

您好,刚刚按照您的方法第一次编译已经成功了,但是第二次编译还是出一个问题,请问这个该怎么解决呢?
Errors << vfly:make /home/zhenhang/catkin_ws/logs/vfly/build.make.004.log
/usr/bin/ld: cannot find -ladrc
collect2: error: ld returned 1 exit status
make[2]: *** [/home/zhenhang/catkin_ws/devel/.private/vfly/lib/vfly/omni_adrc_controller_node] Error 1
make[1]: *** [CMakeFiles/omni_adrc_controller_node.dir/all] Error 2
make: *** [all] Error 2

ccc11418e6cda9d955d8de9944d9745

@LLlkaiwen
Copy link
Owner

请问你用的是Ubuntu16.04吗?这个问题我在用Ubuntu16.04也遇到过,转到18.04就没有遇到过了

@ivanzzh
Copy link
Author

ivanzzh commented Mar 1, 2020

对的,18.04 ros版本不一样,我是初学者,所以是严格按照教程来的

@ivanzzh
Copy link
Author

ivanzzh commented Mar 1, 2020

您好,请问18.04 是否安装好ros-melodic-desktop-full后就可以对这个进行仿真呢?需要再下载其他库文件么

@LLlkaiwen
Copy link
Owner

需要配置Rotors的开发环境 https://github.com/ethz-asl/rotors_simulator

@ivanzzh
Copy link
Author

ivanzzh commented Mar 1, 2020

您好,18.04的rotors已经配置好了,但是catkin build依然会报很多错误,因为相对于16.04,18.04 中kentic变为了melodic,所以很多库文件找不到相应版本,请问您当时是怎么解决的呢?

@LLlkaiwen
Copy link
Owner

你把报的错误贴一下我看看

@ivanzzh
Copy link
Author

ivanzzh commented Mar 1, 2020

实在是麻烦了
dcf7d10fba659fc8249f61bf404d773

@LLlkaiwen
Copy link
Owner

没事,一步一步来吧,正好做个记录其他人也可以参考
试试
sudo apt-get install ros-melodic-octomap-msgs ros-melodic-octomap-ros

@ivanzzh
Copy link
Author

ivanzzh commented Mar 1, 2020

嗯嗯,非常感谢,现在已经成功编译大部分了。那我也贡献一点吧。一些常见的错误可以在这个链接里面找到:https://www.codeleading.com/article/4849766453/
这边初始化就剩一个包不成功了
d7a8f21c0daeef70d22f1bbe7ace6dd

@LLlkaiwen
Copy link
Owner

试试sudo apt-get install ros-melodic-mavlink

@ivanzzh
Copy link
Author

ivanzzh commented Mar 1, 2020

全部编译成功了,太谢谢了,我现在再来试试把vfly引入

@ivanzzh
Copy link
Author

ivanzzh commented Mar 1, 2020

您好,不知道为什么还是会出现这个错误
3e55bfc4182c9280b100d87af3de898

@LLlkaiwen
Copy link
Owner

你有下载adrc_control那个包吗

@ivanzzh
Copy link
Author

ivanzzh commented Mar 1, 2020

这个是已经下载了的
c4f05d18af09d237004e24d27935dfe

@LLlkaiwen
Copy link
Owner

这样,你另外初始化一个工作空间,把vfly和adrc_control移过去,用catkin_make编译

@ivanzzh
Copy link
Author

ivanzzh commented Mar 1, 2020

您好,已经建好了,出现了这个错误,是不是因为少装了一个库呢?
d23674cd2415312a86bb230c9f7dafc

@LLlkaiwen
Copy link
Owner

你的cakin_ws工作空间编译通过了没,如果通过了的话,试试
sudo apt-get install ros-melodic-mav-msgs

@ivanzzh
Copy link
Author

ivanzzh commented Mar 1, 2020

您好,catkin_ws工作空间错误还是在,但是我在catkin_ws2用再编译一次,它的编译结果是没有问题的。
4a09f2c18dda7385b8aa9c68d0a2889
2ec9cbc6a768cd6471d974bf4a35543

@LLlkaiwen
Copy link
Owner

你要把catkin_ws工作空间的vfly和adrc_control删掉吧

@ivanzzh
Copy link
Author

ivanzzh commented Mar 1, 2020

您好,删掉以后编译是可以成功的,但是之后的话,我应该在哪个空间安装这两个文件呢?
d423bcb473582e9c6695a5c0ffaf631

@LLlkaiwen
Copy link
Owner

就是vfly和adrc_control在你的caykin_ws2工作空间里,编译通过的话就可以运行样例了

@LLlkaiwen
Copy link
Owner

因为vfly和adrc_control是需要用cakin_make编译的,你的第一个工作空间用catkin build编译以后就智能用cakin build编译,所以需要单独给vfly和adrc_control一个工作空间

@ivanzzh
Copy link
Author

ivanzzh commented Mar 1, 2020

哦哦,懂了,我之前第二个工作空间的里面只放了vfly和adrc_control两个包,所以刚刚试着跑仿真器出不来,我现在建了第三个工作空间,把另外的19个包和vfly一块放进去用catkin_make编译了。真的
非常感谢

@ivanzzh
Copy link
Author

ivanzzh commented Mar 1, 2020

您好,我再在第三个空间里面用catkin_make还是出现那个错误
ecc0176fc8243d6b605fd4788edba44

@ivanzzh
Copy link
Author

ivanzzh commented Mar 1, 2020

您好,我刚刚查了一下,似乎是编译的时候,没有产生omni_pid_controller_node
cf719f0d55e7de2eaa2fb33755c188f
26d02992b6e085ccf1cb3040e821adf

@LLlkaiwen
Copy link
Owner

你把你的工作空间里都有哪些包贴一下

@ivanzzh
Copy link
Author

ivanzzh commented Mar 1, 2020

您好,catkin_make编译会失败,系统提示我用的catkin_make_isolated。好的
986954d919eab7791ea236d0f3b5d05

@LLlkaiwen
Copy link
Owner

现在还是有问题吗

@ivanzzh
Copy link
Author

ivanzzh commented Mar 1, 2020

这是工作空间里面的包
image

@ivanzzh
Copy link
Author

ivanzzh commented Mar 1, 2020

对的,还是同样的错误,我也在查是怎么回事

@LLlkaiwen
Copy link
Owner

我刚看了一下,我的libadrc,so文件和libpid.so文件是在~/lkw_ws/devel/lib文件夹下的

@ivanzzh
Copy link
Author

ivanzzh commented Mar 1, 2020

我看了一下,我的devel_isolated底下都没有lib库,lib在devel文件夹下面,我明天再试试重新建空间然后再catkin_make吧,我这边已经半夜三点多了,得睡了,今天真的谢谢了

@ivanzzh
Copy link
Author

ivanzzh commented Mar 1, 2020

对了。我的devel下面得lib也是空的,特奇怪。之前那两个.so文件应该是我在catkin_ws3w文件夹下运行ln -s libadrc.so libadrc.so和ln -s libpid.so libpid.so生成的

@LLlkaiwen
Copy link
Owner

原来你在国外啊,我之前还在想为啥你换到Ubuntu18.04配置开发环境那么快,国内搞这个的网速堪忧

@RichealGun
Copy link

RichealGun commented Mar 27, 2020

@LLlkaiwen @ivanzzh 您好,我遇到了和ivanzzh同学同样的问题。我的系统是18.04,最后也新建了workspace用catkin_make重新编译,结果和ivanzzh同学的报错完全一致。不知道现在这个问题是否已被解决?能否分享一下最终的解决方案?万分感谢!

@LLlkaiwen
Copy link
Owner

这个我问题主要是因为在编译链接的时候找不到libadrc.so文件和libpid.so文件导致的,我现在的解决办法是把这两个文件的地址添加进来,在我的电脑里,编译完adrc_control包之后,这两个文件是在~/catkin_ws/devel/lib下的,所以我在vfly/CMakeLists.txt文件的40行添加了
link_directories( ~/catkin_ws/devel/lib )

@RichealGun
Copy link

RichealGun commented Mar 31, 2020 via email

@LLlkaiwen
Copy link
Owner

LLlkaiwen commented Mar 31, 2020 via email

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