macOS Big Sur编译OpenJDK12问题记录

错误一:

1 /test/hotspot/gtest/classfile/test_symbolTable.cpp:62:6: error: explicitly assigning value of variable of type 'TempNewSymbol' to itself [-Werror,-Wself-assign-overloaded]
2   s1 = s1; // self assignment
3   ~~ ^ ~~
4 Compiling 224 properties into resource bundles for jdk.localedata
5 1 error generated.

解决方案:

注释掉这行问题代码。

错误二:

1 /src/hotspot/share/runtime/arguments.cpp:1452:35: error: result of comparison against a string literal is unspecified (use an explicit string comparison function instead) [-Werror,-Wstring-compare]
2       if (old_java_vendor_url_bug != DEFAULT_VENDOR_URL_BUG) {
3                                   ^  ~~~~~~~~~~~~~~~~~~~~~~
4 1 error generated.

解决方案:

字符串比较用一下代码替换

1 strcmp(old_java_vendor_url_bug, DEFAULT_VENDOR_URL_BUG) != 0

错误三:

1 /src/java.desktop/macosx/native/libawt_lwawt/awt/CSystemColors.m:134:9: error: converting the result of '?:' with integer constants to a boolean always evaluates to 'true' [-Werror,-Wtautological-constant-compare]
2     if (colorIndex < (useAppleColor) ? sun_lwawt_macosx_LWCToolkit_NUM_APPLE_COLORS : java_awt_SystemColor_NUM_COLORS) {
3         ^
4 1 error generated.

解决方案:

已修复的bug,参考https://github.com/openjdk/jdk/commit/4622a18a修改,如下图。

 

 

posted @ 2021-03-07 23:35  天行健自强不息  阅读(356)  评论(0)    收藏  举报