問題
Ubuntu 20.04下啟動虛擬機VMware
時,報錯:Before you can run VMware several modules must be compiled and loaded into the running kernel
. 按提示點擊install
無法解決。
解決辦法
1 下載vmware-host-modules并切換到對應分支
git clone https://github.com/mkubecek/vmware-host-modules
cd vmware-host-modules
git checkout workstation-16.1.2 #這里16.1.2替換為你的VM版本
這里如果直接執(zhí)行sudo make & sudo make install
會報以下錯誤:
67 | ASSERT_ON_COMPILE(sizeof(Selector) == 2 && \
| ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
68 | ((__builtin_constant_p(expr) && ((expr) >> 16) == 0) || \
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
69 | sizeof(expr) <= 2))
| ~~~~~~~~~~~~~~~~~~
2. 編輯vm_asm_x86.h
編輯vmware-host-modules/vmmon-only/include/vm_asm_x86.h
將第65行附近的以下內容:
#ifndef USE_UBSAN
#define ASSERT_ON_COMPILE_SELECTOR_SIZE(expr) \
ASSERT_ON_COMPILE(sizeof(Selector) == 2 && \
((__builtin_constant_p(expr) && ((expr) >> 16) == 0) || \
sizeof(expr) <= 2))
#else
#define ASSERT_ON_COMPILE_SELECTOR_SIZE(expr)
#endif
修改為(注釋其它,只保留#define ASSERT_ON_COMPILE_SELECTOR_SIZE(expr)
這一行):
// #ifndef USE_UBSAN
// #define ASSERT_ON_COMPILE_SELECTOR_SIZE(expr) \
// ASSERT_ON_COMPILE(sizeof(Selector) == 2 && \
// ((__builtin_constant_p(expr) && ((expr) >> 16) == 0) || \
// sizeof(expr) <= 2))
// #else
#define ASSERT_ON_COMPILE_SELECTOR_SIZE(expr)
// #endif
3. make & make install
然后再執(zhí)行:
sudo make
sudo make install
最后,便可成功啟動VM.文章來源:http://www.zghlxwxcb.cn/news/detail-502868.html
參考鏈接:文章來源地址http://www.zghlxwxcb.cn/news/detail-502868.html
- 參考鏈接
到了這里,關于VM報錯Before you can run VMware several modules must be compiled and loaded into the running kernel的文章就介紹完了。如果您還想了解更多內容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關文章,希望大家以后多多支持TOY模板網(wǎng)!