{"id":2141,"date":"2024-05-25T16:15:58","date_gmt":"2024-05-25T08:15:58","guid":{"rendered":"https:\/\/wp.minicoda.com\/?p=2141"},"modified":"2024-06-03T20:00:45","modified_gmt":"2024-06-03T12:00:45","slug":"%e5%a6%82%e4%bd%95%e5%9c%a8ubuntu%e7%8e%af%e5%a2%83%e7%bc%96%e8%af%91jdk","status":"publish","type":"post","link":"https:\/\/wp.minicoda.com\/index.php\/%e5%a6%82%e4%bd%95%e5%9c%a8ubuntu%e7%8e%af%e5%a2%83%e7%bc%96%e8%af%91jdk\/","title":{"rendered":"\u5982\u4f55\u5728Ubuntu\u73af\u5883\u7f16\u8bd1JDK?"},"content":{"rendered":"\n<p>  Ubuntu 22.04 WSL<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u4e0b\u8f7dJDK source code (i.e. <a href=\"https:\/\/github.com\/openjdk\/jdk\/tree\/jdk-23%2B25\">GitHub - openjdk\/jdk at jdk-23+25<\/a>).<\/li>\n\n\n\n<li>\u4e0b\u8f7d\u7f16\u8bd1\u73af\u5883\u4f9d\u8d56\u5305\uff1a<br>sudo apt-get build-essential install gawk m4 libasound2-dev libcups2-dev&nbsp; libxrender-dev xorg-dev xutils-dev&nbsp; binutils&nbsp; libmotif-dev ant<\/li>\n\n\n\n<li>\u4e0b\u8f7dbootstrap \u65e7\u7248\u672cJDK<br>\u4fdd\u5b58\u5728\u5f53\u524dsource code\u76ee\u5f55\uff0c\u4f8b\u5982<strong><em>jdk-22.0.1<\/em><\/strong>(\u5982\u679c\u4f60\u7684JDK source code\u7248\u672c\u66f4\u4f4e\uff0c\u8981\u9009\u62e9\u66f4\u4f4e\u7684bootstrap JDK\u7248\u672c).<\/li>\n\n\n\n<li>\u914d\u7f6e\u7f16\u8bd1\u76ee\u6807\u4e3aLinux\u7248\u672cx64\u67b6\u6784\u7684JDK\u3001bootstrap JDK\u4e3a<strong><em>jdk-22.0.1<\/em><\/strong><br>bash configure --enable-debug --with-jvm-variants=client --with-boot-jdk=<strong><em>.\/jdk-22.0.1<\/em><\/strong> --build=x86_64-unknown-linux-gnu --openjdk-target=x86_64-unknown-linux-gnu<\/li>\n\n\n\n<li>\u7f16\u8bd1<br>make images 2&gt;&amp;1 | tee b.log<br>  - \u6700\u7ec8\u7f16\u8bd1\u7684JDK\u76ee\u5f55\uff1abuild\/linux-x86_64-client-fastdebug\/images\/jdk<\/li>\n<\/ul>\n\n\n\n<p>  \u52a1\u5fc5\u6ce8\u610f\uff1a\u7f16\u8bd1JDK\u53ef\u80fd\u9047\u5230\u5f88\u591a\u95ee\u9898\uff0c<a href=\"https:\/\/github.com\/openjdk\/jdk\/blob\/master\/doc\/building.md\">jdk\/doc\/building.md at master \u00b7 openjdk\/jdk \u00b7 GitHub<\/a> \u6709\u5217\u51fa\u5404\u79cd\u5404\u6837\u7684\u9519\u8bef\u8981\u5982\u4f55\u89e3\u51b3\uff0c\u8bf7\u591a\u591a\u7559\u610f\u3002<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Ubuntu 22.04 WSL \u52a1\u5fc5\u6ce8\u610f\uff1a\u7f16\u8bd1JDK\u53ef\u80fd\u9047\u5230\u5f88\u591a\u95ee\u9898\uff0cjdk\/doc\/building.md at master \u00b7 openjdk\/jdk \u00b7 GitHub \u6709\u5217\u51fa\u5404\u79cd\u5404\u6837\u7684\u9519\u8bef\u8981&#46;&#46;&#46;<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[299],"tags":[],"class_list":["post-2141","post","type-post","status-publish","format-standard","hentry","category-think"],"views":84,"_links":{"self":[{"href":"https:\/\/wp.minicoda.com\/index.php\/wp-json\/wp\/v2\/posts\/2141","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/wp.minicoda.com\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/wp.minicoda.com\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/wp.minicoda.com\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/wp.minicoda.com\/index.php\/wp-json\/wp\/v2\/comments?post=2141"}],"version-history":[{"count":6,"href":"https:\/\/wp.minicoda.com\/index.php\/wp-json\/wp\/v2\/posts\/2141\/revisions"}],"predecessor-version":[{"id":2195,"href":"https:\/\/wp.minicoda.com\/index.php\/wp-json\/wp\/v2\/posts\/2141\/revisions\/2195"}],"wp:attachment":[{"href":"https:\/\/wp.minicoda.com\/index.php\/wp-json\/wp\/v2\/media?parent=2141"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/wp.minicoda.com\/index.php\/wp-json\/wp\/v2\/categories?post=2141"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/wp.minicoda.com\/index.php\/wp-json\/wp\/v2\/tags?post=2141"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}