I plan to make some modifications to the android emulator, but I haven't made any yet. Right now I'm just trying to get it to compile. I've followed the instructions here <https://android.googlesource.com/platform/external/qemu/+/emu-master-dev/android/docs/WINDOWS-DEV.md> on two different windows PCs, once with a fresh install of windows, and ran into the same problem both times.
Here is the log from external/qemu/android/rebuild.cmd: Running under Python 3.9.4, Platform: Windows-10-10.0.19041-SP0 Clearing out C:\Users\Andrew\src\emu-master-dev\external\qemu\objs Considering Visual Studio Community 2019 Accepted, setting env with "C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Auxiliary\Build\vcvars64.bat" variable 'VSINSTALLDIR' is not set, but was required to be available. variable 'VCTOOLSINSTALLDIR' is not set, but was required to be available. Traceback (most recent call last): File "C:\Users\Andrew\src\emu-master-dev\external\qemu\android\build\python\cmake.py", line 20, in <module> cmake.launch() File "C:\Users\Andrew\src\emu-master-dev\external\qemu\android\build\python\aemu\cmake.py", line 357, in launch main(args) File "C:\Users\Andrew\src\emu-master-dev\external\qemu\android\build\python\aemu\cmake.py", line 154, in main configure(args) File "C:\Users\Andrew\src\emu-master-dev\external\qemu\android\build\python\aemu\cmake.py", line 130, in configure run(cmake_cmd, args.out) File "C:\Users\Andrew\src\emu-master-dev\external\qemu\android\build\python\aemu\process.py", line 105, in run local_env = get_system_env() File "C:\Users\Andrew\src\emu-master-dev\external\qemu\android\build\python\aemu\process.py", line 81, in get_system_env raise Exception("Missing required environment variable") Exception: Missing required environment variable Obviously, the problem is that vcvars64.bat isn't setting the appropriate env variables, but I'm not sure why it isn't. I've tried using the official Visual Studio installer and selecting all of the tools required in the windows development document, and I've tried using the provided chocolatey script to get all of the dependencies. One thing I did try was to run the rebuild script in the "Developer Command Prompt for VS 2019" from the start menu, and apparently this provided the required env variables, but then I ran into another problem. Here is the log of rebuild.cmd: Running under Python 3.9.4, Platform: Windows-10-10.0.19041-SP0 Clearing out C:\Users\Andrew\src\emu-master-dev\external\qemu\objs Considering Visual Studio Community 2019 Accepted, setting env with "C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Auxiliary\Build\vcvars64.bat" Running: cmake.exe -BC:\Users\Andrew\src\emu-master-dev\external\qemu\objs -DCMAKE_TOOLCHAIN_FILE=C:\Users\Andrew\src\emu-master-dev\external\qemu\android\build\cmake\toolchain-windows_msvc-x86_64.cmake -DOPTION_CRASHUPLOAD=NONE -DCMAKE_BUILD_TYPE=Release -DQTWEBENGINE=True -DOPTION_SDK_TOOLS_REVISION=30.6.5 -G Ninja C:\Users\Andrew\src\emu-master-dev\external\qemu in C:\Users\Andrew\src\emu-master-dev\external\qemu\objs -- Configuring native windows build using clang-cl: clang-r416183b -- Configuring native windows build using clang-cl: clang-r416183b -- The C compiler identification is Clang 12.0.5 with MSVC-like command-line -- The CXX compiler identification is Clang 12.0.5 with MSVC-like command-line -- Detecting C compiler ABI info -- Detecting C compiler ABI info - failed -- Check for working C compiler: C:/Users/Andrew/src/emu-master-dev/external/qemu/objs/clang_cl.cmd -- Check for working C compiler: C:/Users/Andrew/src/emu-master-dev/external/qemu/objs/clang_cl.cmd - broken CMake Error at C:/Program Files (x86)/Microsoft Visual Studio/2019/Community/Common7/IDE/CommonExtensions/Microsoft/CMake/CMake/share/cmake-3.19/Modules/CMakeTestCCompiler.cmake:66 (message): The C compiler "C:/Users/Andrew/src/emu-master-dev/external/qemu/objs/clang_cl.cmd" is not able to compile a simple test program. It fails with the following output: Change Dir: C:/Users/Andrew/src/emu-master-dev/external/qemu/objs/CMakeFiles/CMakeTmp Run Build Command(s):C:/PROGRA~2/MICROS~2/2019/COMMUN~1/Common7/IDE/COMMON~1/MICROS~1/CMake/Ninja/ninja.exe cmTC_38377 && [1/2] Building C object CMakeFiles\cmTC_38377.dir\testCCompiler.c.obj [2/2] Linking C executable cmTC_38377.exe FAILED: cmTC_38377.exe cmd.exe /C "cd . && "C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\Common7\IDE\CommonExtensions\Microsoft\CMake\CMake\bin\cmake.exe" -E vs_link_exe --intdir=CMakeFiles\cmTC_38377.dir --rc=C:\PROGRA~2\WI3CF2~1\10\bin\100190~1.0\x86\rc.exe --mt=C:\PROGRA~2\WI3CF2~1\10\bin\100190~1.0\x86\mt.exe --manifests -- C:\Users\Andrew\src\emu-master-dev\prebuilts\clang\host\windows-x86\clang-r416183b\bin\lld-link.exe /nologo CMakeFiles\cmTC_38377.dir\testCCompiler.c.obj /out:cmTC_38377.exe /implib:cmTC_38377.lib /pdb:cmTC_38377.pdb /version:0.0 /IGNORE:4099 /DEBUG /NODEFAULTLIB:LIBCMT /MANIFEST:NO /debug /INCREMENTAL /subsystem:console kernel32.lib user32.lib gdi32.lib winspool.lib shell32.lib ole32.lib oleaut32.lib uuid.lib comdlg32.lib advapi32.lib && cd ." LINK: command "C:\Users\Andrew\src\emu-master-dev\prebuilts\clang\host\windows-x86\clang-r416183b\bin\lld-link.exe /nologo CMakeFiles\cmTC_38377.dir\testCCompiler.c.obj /out:cmTC_38377.exe /implib:cmTC_38377.lib /pdb:cmTC_38377.pdb /version:0.0 /IGNORE:4099 /DEBUG /NODEFAULTLIB:LIBCMT /MANIFEST:NO /debug /INCREMENTAL /subsystem:console kernel32.lib user32.lib gdi32.lib winspool.lib shell32.lib ole32.lib oleaut32.lib uuid.lib comdlg32.lib advapi32.lib" failed (exit code 1) with the following output: lld-link: error: <root>: undefined symbol: mainCRTStartup ninja: build stopped: subcommand failed. CMake will not be able to correctly generate this project. Call Stack (most recent call first): -- Configuring incomplete, errors occurred! CMakeLists.txt:1 (project) See also "C:/Users/Andrew/src/emu-master-dev/external/qemu/objs/CMakeFiles/CMakeOutput.log". See also "C:/Users/Andrew/src/emu-master-dev/external/qemu/objs/CMakeFiles/CMakeError.log". Traceback (most recent call last): File "C:\Users\Andrew\src\emu-master-dev\external\qemu\android\build\python\cmake.py", line 20, in <module> cmake.launch() File "C:\Users\Andrew\src\emu-master-dev\external\qemu\android\build\python\aemu\cmake.py", line 357, in launch main(args) File "C:\Users\Andrew\src\emu-master-dev\external\qemu\android\build\python\aemu\cmake.py", line 154, in main configure(args) File "C:\Users\Andrew\src\emu-master-dev\external\qemu\android\build\python\aemu\cmake.py", line 130, in configure run(cmake_cmd, args.out) File "C:\Users\Andrew\src\emu-master-dev\external\qemu\android\build\python\aemu\process.py", line 122, in run raise Exception("Failed to run %s - %s" % (" ".join(cmd), proc.returncode)) Exception: Failed to run cmake.exe -BC:\Users\Andrew\src\emu-master-dev\external\qemu\objs -DCMAKE_TOOLCHAIN_FILE=C:\Users\Andrew\src\emu-master-dev\external\qemu\android\build\cmake\toolchain-windows_msvc-x86_64.cmake -DOPTION_CRASHUPLOAD=NONE -DCMAKE_BUILD_TYPE=Release -DQTWEBENGINE=True -DOPTION_SDK_TOOLS_REVISION=30.6.5 -G Ninja C:\Users\Andrew\src\emu-master-dev\external\qemu - 1 If you can tell me how to compile the emulator it would be much appreciated. Most of my experience is in Java, not C/C++ so apologies if there is an obvious solution to my problem. -- -- You received this message because you are subscribed to the "Android Building" mailing list. To post to this group, send email to android-building@googlegroups.com To unsubscribe from this group, send email to android-building+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/android-building?hl=en --- You received this message because you are subscribed to the Google Groups "Android Building" group. To unsubscribe from this group and stop receiving emails from it, send an email to android-building+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/android-building/57633743-9694-4376-8000-826207809547n%40googlegroups.com.