如何解决使用CLion调试OpenJDK14:无法加载CMake项目
我下载了OpenJDK14的源代码并将其放在\home\yuanfang\jdk14
中,并且在运行bash configure --disable-warnings-as-errors
和make images
之后,我成功地构建了OpenJDK14,而新构建的JDK在home\yuanfang\jdk14\build\linux-x86_64-server-release\jdk
中。顺便说一句,我正在使用Ubuntu 20.04 LTS。
然后,我想使用CLion IDE调试OpenJDK14。我使用的是CLion 2020.2,请执行以下步骤:
- 打开CLion后,我选择从源代码创建新的CMake项目,然后选择目录
\home\yuanfang\jdk14
,它是jdk项目的根目录。 - 我更改了运行/调试配置,使其看起来像这样:
- CLion自动创建一个
CMakeLists.txt
,但是该文件无法正常工作,因此在进行谷歌搜索之后,我在https://github.com/ojdkbuild/ojdkbuild/blob/master/src/java-14-openjdk/CMakeLists.txt处找到了正确的CMakeLists.txt
。然后,我使用正确的CMakeLists.txt
改写旧的\home\yuanfang\jdk14
。 - 我下载了整个存储库(即github.com/ojdkbuild/ojdkbuild),将其解压缩并放入
ojdkbuild-master
中。 如下所示,CMake Error at CMakeLists.txt:19 (include): include could not find load file: /home/yuanfang/jdk14/../../resources/cmake/ojdkbuild_common.cmake CMake Error at CMakeLists.txt:21 (include): include could not find load file: /home/yuanfang/jdk14/../../resources/cmake/version.cmake CMake Error at CMakeLists.txt:93 (add_subdirectory): add_subdirectory given source "/home/yuanfang/jdk14/../../deps/rhino/scripting_tasks" which is not an existing directory. CMake Error at CMakeLists.txt:98 (ojdkbuild_add_subdirectory): Unknown CMake command "ojdkbuild_add_subdirectory". -- Configuring incomplete,errors occurred! See also "/home/yuanfang/jdk14/cmake-build-debug/CMakeFiles/CMakeOutput.log". Cannot get compiler information: Compiler exited with error code 1: /usr/bin/cc -xobjective-c -I/home/yuanfang/jdk14/build/linux-x86_64-server-release/hotspot/variant-server/gensrc/adfiles......./loading/LibraryLoader/jar_src -g -fpch-preprocess -v -dD -E Using built-in specs. COLLECT_GCC=/usr/bin/cc OFFLOAD_TARGET_NAMES=nvptx-none:hsa OFFLOAD_TARGET_DEFAULT=1 Target: x86_64-linux-gnu Configured with: ../src/configure -v --with-pkgversion='Ubuntu 9.3.0-10ubuntu2' --with-bugurl=file:///usr/share/doc/gcc-9/README.Bugs --enable-languages=c,ada,c++,go,brig,d,fortran,objc,obj-c++,gm2 --prefix=/usr --with-gcc-major-version-only --program-suffix=-9 --program-prefix=x86_64-linux-gnu- --enable-shared --enable-linker-build-id --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --libdir=/usr/lib --enable-nls --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --with-default-libstdcxx-abi=new --enable-gnu-unique-object --disable-vtable-verify --enable-plugin --enable-default-pie --with-system-zlib --with-target-system-zlib=auto --enable-objc-gc=auto --enable-multiarch --disable-werror --with-arch-32=i686 --with-abi=m64 --with-multilib-list=m32,m64,mx32 --enable-multilib --with-tune=generic --enable-offload-targets=nvptx-none,hsa --without-cuda-driver --enable-checking=release --build=x86_64-linux-gnu --host=x86_64-linux-gnu --target=x86_64-linux-gnu Thread model: posix gcc version 9.3.0 (Ubuntu 9.3.0-10ubuntu2) COLLECT_GCC_OPTIONS='-I' '/home/yuanfang/jdk14/build/linux-x86_64-server-release/hotspot/variant-server/gensrc/adfiles' '-I' '......'-g' '-fpch-preprocess' '-v' '-dD' '-E' '-D' '___CIDR_DEFINITIONS_END' '-mtune=generic' '-march=x86-64' cc1obj -E -quiet -v @/tmp/cci3XM6r -imultiarch x86_64-linux-gnu -D ___CIDR_DEFINITIONS_END /tmp/compiler-file5929385022787926768 -mtune=generic -march=x86-64 -fpch-preprocess -g -fworking-directory -fasynchronous-unwind-tables -fstack-protector-strong -Wformat -Wformat-security -fstack-clash-protection -fcf-protection -dD cc: fatal error: cannot execute 'cc1obj': execvp: No such file or directory compilation terminated. [Failed to reload]
是新添加的文件夹。 - 我重新加载了CMake项目,但是发生了一些CMake错误(如下所示),为什么CLion无法找到那些文件? javaI谷歌搜索,但找不到任何有效的解决方案。有什么我可以做或参考的吗?预先感谢。
u1 u2 jaccard adamic p link pref
0 alekseev wyderka 0.0 0.0 0.0 1 2
1 alekseev fan 0.0 0.0 0.0 1 6
2 alekseev fermi 0.0 0.0 0.0 1 4
解决方法
- 步骤:查看此项目:https://github.com/ojdkbuild/ojdkbuild.git
- 步骤:将OpenJDK14的源代码放入ojdkbuild / src /
- 步骤:将reousrces目录和CMakelists.txt复制到OpenJDK14
- 步骤:重新编译openjdk并将项目导入到CLin
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。