ubuntu .ccache(ubuntu20.4)
详细过程ubuntu下面编译openJDK8,修改源码IDEA中调试
编译JDK源码的最佳实践是亲手操作,理解其流程。网上有许多教程,但只有实际操作,才能深刻理解整个过程。
首先,环境准备上选择Ubuntu 16.04,因为在此版本下,编译过程中遇到的异常较少。使用低版本Ubuntu的主要目的是为了专注于编译源码和阅读源码,而不是研究版本兼容性问题。高版本的OpenJDK理论上可行,但这里更多是选择已熟悉使用的OpenJDK 8版本。
获取OpenJDK 8源码有两种方式:利用Mercurial(hg)或手动下载。Mercurial是OpenJDK使用的代码管理工具,通过hg clone命令下载源码。在遇到执行卡死问题后,改用手动下载方式。
下载地址为jdk.java.net,选择相应版本下载。下载后得到openjdk-8u41-src-b04-14_jan_2020.zip,解压后重命名为openjdk8。
接着,需要安装基础JDK作为编译环境。可选择手动下载已编译好的JDK7作为引导JDK,如openjdk-7u75-b13-linux-x64-18_dec_2014.tar.gz。解压并重命名后,配置系统环境变量,确保编译过程顺利进行。
安装编译所需的依赖,并检查是否遗漏。执行命令检查依赖,如有缺失,按照提示进行安装。ccache配置后出现版本过旧的提示,不影响编译。
编译前需进行一系列检查:设定语言选项、查看PATH环境变量、清除JAVA_HOME变量,确保编译环境配置正确。执行make all命令,过程中可能会遇到报错,通过修改相关源文件,如hotspot/make/linux/Makefile的SUPPORTED_OS_VERSION变量,添加4%,解决内核版本问题。
验证编译成功,通过执行java-version命令确认。编译后源码使用,如创建Test.java源文件,通过Javac编译器编译为Test.class文件。运行Test.class文件,输出信息确认编译成功。
在IDEA中使用JDK源码调试,首先安装IntelliJ IDEA,下载并解压到opt目录,通过idea.sh启动。将编译好的JDK导入IDEA,配置debug,去掉Before launch中的build选项,执行测试代码。
为了更方便地查看源码,可以修改JDK源码,如为System.out.println添加打印前缀。修改源码后重新编译,执行测试代码以验证修改效果。
通过实际操作和实践,对JDK源码的理解将更加深入。本指南提供了一个完整的编译和调试流程,帮助开发者深入理解JDK源码的细节。
Ubuntu20.04+ros的环境适配安装Moveit
进入2023年11月,机械臂领域竞争激烈,升级至Ubuntu20.04系统与ROS环境适配安装Moveit,以确保紧跟行业发展。
主题直入:在系统版本的选择上,网上推荐多为Ubuntu18.04,对应ROS版本一般为melodic。但若追求系统升级,Ubuntu20.04更为合适。原因在于,官方明确推荐此版本,适配性问题相对较少。
安装前需做好环境配置,参照官方文档进行。
安装Moveit库时,无需担心版本不匹配问题。Ubuntu20.04的ROS noetic版本已提供专门库,简化安装流程。
工作空间与代码准备,确认ROS环境设置。
设置环境变量ROS_DISTRO,以便进行源码安装。
选择官方推荐方式安装源码,或备选方案,根据网络环境灵活调整。
对于moveit.rosinstall,可根据需要单独下载对应分支,确保使用专门针对noetic版本的仓库。
安装ccache编译器缓存(可选步骤),以提升编译效率。
项目编译完成后,即可进入演示阶段。
进行演示程序测试,启动后发现界面空白,需检查是否正确添加显示内容。
左下角的“add”选项,用于添加MotionPlanning功能。
添加机械臂后,开始学习操作流程,逐步掌握Moveit的使用。
如何用源码安装gnuradio
Gnuradio 3.3.0源码编译与安装
要进行gnuradio的研究首先需要在linux环境下对开源源码进行编译与安装操作。
1、相关资源
目前gnuradio的主要资源都在其官方网站上,当然也有部分是各大论坛上的。
gnuradio官方网站(英文):(这里有各种linux平台安装gnuradio的资料)
gnuradio中文官方网站:(这里有很多很好的中文参考资料)
2、初次安装gnuradio
本人已经在Ubuntu 11.04上完成gnuradio3.3.0(源码)编译安装。以下是我的安装步骤:
step1:安装Ubuntu 11.04系统。(利用U盘安装,此步骤省略)
step2:安装gnuradio编译的相关tools
(1)严格按照gnuradio官方网站上的方法安装tools。首先安装Lucid ubuntu(10.04)版本相关组件,安装命令如下:
sudo apt-get-y install libfontconfig1-dev libxrender-dev libpulse-dev swig g++ automake autoconf libtool python-dev libfftw3-dev\ libcppunit-dev libboost-all-dev libusb-dev fort77 sdcc sdcc-libraries\ libsdl1.2-dev python-wxgtk2.8 git-core guile-1.8-dev\ libqt4-dev python-numpy ccache python-opengl libgsl0-dev\ python-cheetah python-lxml doxygen qt4-dev-tools\ libqwt5-qt4-dev libqwtplot3d-qt4-dev pyqt4-dev-tools python-qwt5-qt4
(2)安装libxi-dev
sudo apt-get-y install libxi-dev
注:可以直接拷贝到终端窗口的命令行下。安装这些组件总大小差不多600M多,需要一些时间(本人是在教育网上下载速度挺快,如果是其他网络比较慢:))。这些组件必须全部安装完成,否则后期编译无法通过。
step3:编译gnradio源码,安装
(1)安装完组件之后,需要在官网上下载最新的gnuradio源码包,我下载的是3.3.0版本。然后利用tar-xzvf XXX解压缩源码包。
(2)配置相关参数
命令:./configure
(3)开始编译
命令: make
注:编译过程时间较长,另外3.3.0版本存在一个固有的bug,编译过程中会报错(cannot convert‘int*’ to‘usrp2::usrp2*’ in initialization)。其解决的方案是:
修改gnuradio目录下usrp2/host/lib/usrp2.cc文件:
源文件->