BrowserWorks / Waterfox-Classic

The Waterfox Classic repository, for legacy systems and customisation.
https://classic.waterfox.net
Mozilla Public License 2.0
183 stars 31 forks source link

How do I build this? #216

Open K4sum1 opened 9 months ago

K4sum1 commented 9 months ago

Making this a separate issue because I don't want to fill up a unrelated issue.

So far I've installed Mozillabuild 3.4, but not sure what else to do. ./mach bootstrap doesn't work so I just tried to ./mach build. Gave an error about not having Visual Studio 2017, so I installed it, and now I have ERROR: Cannot find the target C compiler, and I'm not sure how to fix it. It mentions mingw32, so I tried grabbing that, but I have no idea what to pick in the installer, if I even found the right installer. What do I do?

Also pinging @hawkeye116477 since he seems to have the most knowledge about this.

hawkeye116477 commented 9 months ago

Just check here => https://github.com/WaterfoxCo/Waterfox-Classic/blob/classic/.github/workflows/build.yml#L60 how it's done on GitHub Actions. Besides those you may also need Windows 10 SDK. However maybe you will need to try some lower versions of depends.

K4sum1 commented 9 months ago

I tried installing those, but I get the same error.

hawkeye116477 commented 9 months ago

Only installing isn't enough, you may need to set environment variables and start mozilla-build shell, almost everything same as in linked URL.

K4sum1 commented 9 months ago

I checked the environment variables, and they matched outside of mine being installed in different paths. I even rebooted since environment variables sometimes require that.

hawkeye116477 commented 9 months ago

So check if you can execute clang or clang-cl inside mozilla-build shell. If not, then maybe try editing batch file to set variables just like it's done on GH Actions, otherwise I've no idea, I was building it long time ago and don't remember.

K4sum1 commented 9 months ago

So I have clang in my path, I can run it with normal CMD. However I always get command not found in MozillaBuild.

hawkeye116477 commented 9 months ago

So as I said, you need to edit that mozilla-build batch file, find line with SET "PATH= and replace (add path to every thing which it can't find).

K4sum1 commented 9 months ago

After dealing with a few other issues and manually upgrading watchman, now I get this.

` 1:38.22 DEBUG: configure(2205,1): error: type specifier missing, defaults to 'int'; ISO C99 and later do not support implicit int [-Wimplicit-int]

1:38.22 DEBUG: 2205 | main(){return(0);}

1:38.22 DEBUG: | ^

1:38.23 DEBUG: | int

1:38.23 DEBUG: 1 error generated.

1:38.23 DEBUG: configure: failed program was:

1:38.23 DEBUG:

1:38.23 DEBUG: #line 2203 "configure"

1:38.23 DEBUG: #include "confdefs.h"

1:38.23 DEBUG:

1:38.23 DEBUG: main(){return(0);}

1:38.23 DEBUG: configure: error: installation or configuration problem: C compiler cannot create executables.

1:38.24 ERROR: old-configure failed`

hawkeye116477 commented 9 months ago

You need to try some older version of LLVM/Clang and maybe some other depends will also need different version if you'll still see errors. I don't remember which versions of these tools are good for Classic.

walmar commented 7 months ago

1) The issue topic seems to me to be a repetition that would be better avoided.

#issuecomment-831834241 - [Classic] Where's the build documentation? - Issue #43 - WaterfoxCo/Waterfox-Classic - GitHub

2) > I don't remember which versions of these tools are good for Classic.

#issuecomment-1319924456 - Windows action failing - Issue #173 - WaterfoxCo/Waterfox-Classic - GitHub

Eventually you can try with last good working llvm/clang version (14.0.6, scoop install [app]@[version]).

3) If the existing information is not enough to solve the issue, I think it's okay to additionally ask @MrAlex94, @buttercookie42, @aeiouaeiouaeiouaeiouaeiouaeiou or @dbsoft for the Waterfox Classic build environment recommendation to @K4sum1 and possibly others.

Kind of off-topic Personally, I would be especially grateful if someone could implement the following missing features. * Class Fields * [#issuecomment-1854367897 - GitHub - Missing redesigned code file view on Waterfox Classic (non-e10s) - Issue #94 - martok/palefill - GitHub](https://github.com/martok/palefill/issues/94#issuecomment-1854367897) * :is() CSS pseudo-class * [Merge pull request 'Implement :is() and :where() CSS pseudo-classes' (#2110) from FranklinDM/UXP-contrib:work_css-is-where into master · 9d9d93381e - UXP - Pale Moon repositories](https://repo.palemoon.org/MoonchildProductions/UXP/commit/9d9d93381e03157413f0a18fc544afafad4fff70) * Web Components * [#1361 - Implement Google WebComponents - UXP - Pale Moon repositories](https://repo.palemoon.org/MoonchildProductions/UXP/issues/1361) As such features don't seem to be properly provided by an extension like Polly+.
K4sum1 commented 7 months ago

Hmm, I might try getting everything I need to build Mypal68, and once or if I get that working, I try seeing if I can also build Waterfox Classic. If I still can't I'll try this, I'll look into those.

Squall-Leonhart commented 5 months ago

Just check here => https://github.com/WaterfoxCo/Waterfox-Classic/blob/classic/.github/workflows/build.yml#L60 how it's done on GitHub Actions. Besides those you may also need Windows 10 SDK. However maybe you will need to try some lower versions of depends.

workflows are outdated and don't work properly.

Squall-Leonhart commented 5 months ago

After dealing with a few other issues and manually upgrading watchman, now I get this.

` 1:38.22 DEBUG: configure(2205,1): error: type specifier missing, defaults to 'int'; ISO C99 and later do not support implicit int [-Wimplicit-int]

1:38.22 DEBUG: 2205 | main(){return(0);}

1:38.22 DEBUG: | ^

1:38.23 DEBUG: | int

1:38.23 DEBUG: 1 error generated.

1:38.23 DEBUG: configure: failed program was:

1:38.23 DEBUG:

1:38.23 DEBUG: #line 2203 "configure"

1:38.23 DEBUG: #include "confdefs.h"

1:38.23 DEBUG:

1:38.23 DEBUG: main(){return(0);}

1:38.23 DEBUG: configure: error: installation or configuration problem: C compiler cannot create executables.

1:38.24 ERROR: old-configure failed`

You can use current clang if you can find where you need to add cflag -Wno-error=implicit-function-declaration

walmar commented 5 months ago

In general, Firefox-based browsers usually include an about:buildconfig page with information about build configuration. This is linked on the about:support page.

K4sum1 commented 4 months ago

I tried replicating the setup I use to build my UXP based stuffs and adding Rust, however that gives an error when trying to build.

Admin@FurryFoxVM-22H2 ~/Documents/GitHub/r3dfox-classic
$ MOZCONFIG=C:/Users/Admin/Documents/GitHub/r3dfox-classic/mozconfigs/mozconfig-win ./mach build
 0:00.67 Clobber not needed.
 0:00.67 Adding make options from C:\Users\Admin\Documents\GitHub\r3dfox-classic\mozconfigs\mozconfig-win
    CONFIG_GUESS=x86_64-pc-mingw32
    MOZ_OPTIMIZE=1
    MOZ_CRASHREPORTER=0
    MOZ_DATA_REPORTING=0
    MOZ_SERVICES_HEALTHREPORT=0
    MOZ_TELEMETRY_REPORTING=
    MOZ_MAKE_FLAGS=-j16
    MOZ_OBJDIR=c:/Users/Admin/Documents/GitHub/r3dfox-classic/obj-x86_64-pc-mingw32
    OBJDIR=c:/Users/Admin/Documents/GitHub/r3dfox-classic/obj-x86_64-pc-mingw32
    FOUND_MOZCONFIG=C:/Users/Admin/Documents/GitHub/r3dfox-classic/mozconfigs/mozconfig-win
    export FOUND_MOZCONFIG
 0:00.72 c:\mozilla-build-3.2\bin\mozmake.EXE -f client.mk MOZ_PARALLEL_BUILD=16 -s configure
 0:00.88 cd c:/Users/Admin/Documents/GitHub/r3dfox-classic/obj-x86_64-pc-mingw32
 0:00.91 c:/Users/Admin/Documents/GitHub/r3dfox-classic/configure
 0:01.30 Reexecuting in the virtualenv
 0:01.59 Adding configure options from C:\Users\Admin\Documents\GitHub\r3dfox-classic\mozconfigs\mozconfig-win
 0:01.59   --host=x86_64-pc-mingw32
 0:01.59   --target=x86_64-pc-mingw32
 0:01.59   --enable-application=browser
 0:01.59   --disable-artifact-builds
 0:01.59   --disable-updater
 0:01.59   --disable-accessibility
 0:01.59   --disable-debug
 0:01.59   --disable-debug-js-modules
 0:01.59   --disable-debug-symbols
 0:01.59   --disable-tests
 0:01.59   --enable-hardening
 0:01.59   --enable-jemalloc
 0:01.59   --enable-lto
 0:01.59   --enable-optimize=-O2 -Ob2ity -GS- -GFAT -Qpar -Qfast_transcendentals -openmp
 0:01.59   --enable-release
 0:01.59   --enable-shared-js
 0:01.59   --enable-strip
 0:01.59   --enable-av1
 0:01.59   --enable-raw
 0:01.59   --enable-webrtc
 0:01.59   --disable-crashreporter
 0:01.59   --disable-eme
 0:01.59   --disable-maintenance-service
 0:01.59   --disable-parental-controls
 0:01.59   OPT_LEVEL=3
 0:01.59   RUSTC_OPT_LEVEL=3
 0:01.59   MOZ_LTO=1
 0:01.59   CPPFLAGS=-O2
 0:01.59   MOZ_CRASHREPORTER=0
 0:01.59   MOZ_SOURCE_CHANGESET=iloveneedingtobodgechangesetfornoreason
 0:01.59   VERBOSE=1
 0:01.59   MOZ_TELEMETRY_REPORTING=
 0:01.59   LDFLAGS=-Wl,-O3 -msse2
 0:01.59   RUSTFLAGS=-C target-cpu=athlon64 -C target-feature=+sse2 -C codegen-units=1
 0:01.59   MOZ_LTO=1
 0:01.59   MOZ_REQUIRE_SIGNING=
 0:01.59   CXXFLAGS=-O2
 0:01.59   MOZ_INCLUDE_SOURCE_INFO=1
 0:01.59   MOZILLA_OFFICIAL=1
 0:01.59   CFLAGS=-O2
 0:01.59   RUSTC_OPT_LEVEL=3
 0:01.61   MOZ_OPTIMIZE=1
 0:01.61   OPT_LEVEL=3
 0:01.61   MOZ_DATA_REPORTING=0
 0:01.61   STRIP_FLAGS=--strip-debug --strip-unneeded
 0:01.61   POLLY=-mllvm -polly -mllvm -polly-2nd-level-tiling -mllvm -polly-loopfusion-greedy -mllvm -polly-pattern-matching-based-opts -mllvm -polly-position=before-vectorizer
-mllvm -polly-vectorizer=stripmine
 0:01.61   WIN_UCRT_REDIST_DIR=C:\Dev\Windows Kits\10\/Redist/10.0.19041.0/ucrt/DLLs/r64
 0:01.61   WIN32_REDIST_DIR=C:\DEV\MSVC14/Redist/MSVC/14.16.27012/x64
 0:01.61 checking for vcs source checkout... git
 0:01.73 checking for a shell... C:/mozilla-build-3.2/msys/bin/sh.exe
 0:01.98 checking for host system type... x86_64-pc-mingw32
 0:02.19 checking for target system type... x86_64-pc-mingw32
 0:02.23 checking for a shell... C:/mozilla-build-3.2/msys/bin/sh.exe
 0:02.44 checking for host system type... x86_64-pc-mingw32
 0:02.66 checking for target system type... x86_64-pc-mingw32
 0:02.70 checking for vcs source checkout... git
 0:02.70 checking whether cross compiling... no
 0:02.73 checking for the target C compiler... c:/Dev/MSVC14/bin/Hostx64/x64/cl.exe
 0:02.91 checking whether the target C compiler can be used... yes
 0:02.92 checking for git... 'c:/PROGRA~1/Git/cmd/git.exe'
 0:02.95 checking for Git version... 2.44.0.windows.1
 0:02.97 checking for pkg_config... not found
 0:02.97 checking for yasm... c:/mozilla-build-3.2/bin/yasm.exe
 0:02.97 checking yasm version... 1.3.0
 0:03.00 checking for nasm... not found
 0:03.00 checking the target C compiler version... 19.16.27051
 0:03.00 checking the target C compiler works... yes
 0:03.00 checking for the target C++ compiler... c:/Dev/MSVC14/bin/Hostx64/x64/cl.exe
 0:03.05 checking whether the target C++ compiler can be used... no
 0:03.05 DEBUG: <truncated - see config.log for full output>
 0:03.05 DEBUG: | %KERNEL "Linux"
 0:03.05 DEBUG: | #elif _WIN32 || __CYGWIN__
 0:03.05 DEBUG: | %KERNEL "WINNT"
 0:03.05 DEBUG: | #elif __NetBSD__
 0:03.05 DEBUG: | %KERNEL "NetBSD"
 0:03.05 DEBUG: | #elif __APPLE__
 0:03.05 DEBUG: | %KERNEL "Darwin"
 0:03.05 DEBUG: | #endif
 0:03.05 DEBUG: | #if _MSC_VER || __BYTE_ORDER__ == __ORDER_LITTLE_ENDIAN__
 0:03.05 DEBUG: | %ENDIANNESS "little"
 0:03.05 DEBUG: | #elif __BYTE_ORDER__ == __ORDER_BIG_ENDIAN__
 0:03.05 DEBUG: | %ENDIANNESS "big"
 0:03.05 DEBUG: | #endif
 0:03.05 DEBUG: Executing: `c:/Dev/MSVC14/bin/Hostx64/x64/cl.exe -std=gnu++17 -E 'c:\users\admin\appdata\local\temp\conftest.rcwnlk.cpp'`
 0:03.05 DEBUG: COMPILER = msvc
 0:03.05 DEBUG: VERSION = 191627051
 0:03.05 DEBUG: cplusplus = 199711L
 0:03.05 DEBUG: CPU = x86_64
 0:03.05 DEBUG: KERNEL = WINNT
 0:03.05 DEBUG: ENDIANNESS = little
 0:03.05 ERROR: Unknown compiler or compiler not supported.
 0:03.08 *** Fix above errors and then restart with\
 0:03.08                "c:/mozilla-build-3.2/bin/mozmake.EXE -f client.mk build"
 0:03.09 mozmake.EXE: *** [client.mk:149: configure] Error 1

Full config.log

INFO: Adding configure options from C:\Users\Admin\Documents\GitHub\r3dfox-classic\mozconfigs\mozconfig-win
INFO:   --host=x86_64-pc-mingw32
INFO:   --target=x86_64-pc-mingw32
INFO:   --enable-application=browser
INFO:   --disable-artifact-builds
INFO:   --disable-updater
INFO:   --disable-accessibility
INFO:   --disable-debug
INFO:   --disable-debug-js-modules
INFO:   --disable-debug-symbols
INFO:   --disable-tests
INFO:   --enable-hardening
INFO:   --enable-jemalloc
INFO:   --enable-lto
INFO:   --enable-optimize=-O2 -Ob2ity -GS- -GFAT -Qpar -Qfast_transcendentals -openmp
INFO:   --enable-release
INFO:   --enable-shared-js
INFO:   --enable-strip
INFO:   --enable-av1
INFO:   --enable-raw
INFO:   --enable-webrtc
INFO:   --disable-crashreporter
INFO:   --disable-eme
INFO:   --disable-maintenance-service
INFO:   --disable-parental-controls
INFO:   OPT_LEVEL=3
INFO:   RUSTC_OPT_LEVEL=3
INFO:   MOZ_LTO=1
INFO:   CPPFLAGS=-O2
INFO:   MOZ_CRASHREPORTER=0
INFO:   MOZ_SOURCE_CHANGESET=iloveneedingtobodgechangesetfornoreason
INFO:   VERBOSE=1
INFO:   MOZ_TELEMETRY_REPORTING=
INFO:   LDFLAGS=-Wl,-O3 -msse2
INFO:   RUSTFLAGS=-C target-cpu=athlon64 -C target-feature=+sse2 -C codegen-units=1
INFO:   MOZ_LTO=1
INFO:   MOZ_REQUIRE_SIGNING=
INFO:   CXXFLAGS=-O2
INFO:   MOZ_INCLUDE_SOURCE_INFO=1
INFO:   MOZILLA_OFFICIAL=1
INFO:   CFLAGS=-O2
INFO:   RUSTC_OPT_LEVEL=3
INFO:   MOZ_OPTIMIZE=1
INFO:   OPT_LEVEL=3
INFO:   MOZ_DATA_REPORTING=0
INFO:   STRIP_FLAGS=--strip-debug --strip-unneeded
INFO:   POLLY=-mllvm -polly -mllvm -polly-2nd-level-tiling -mllvm -polly-loopfusion-greedy -mllvm -polly-pattern-matching-based-opts -mllvm -polly-position=before-vectorizer -mllvm -polly-vectorizer=stripmine
INFO:   WIN_UCRT_REDIST_DIR=C:\Dev\Windows Kits\10\/Redist/10.0.19041.0/ucrt/DLLs/r64
INFO:   WIN32_REDIST_DIR=C:\DEV\MSVC14/Redist/MSVC/14.16.27012/x64
INFO: checking for vcs source checkout... 
INFO: git
INFO: checking for a shell... 
INFO: C:/mozilla-build-3.2/msys/bin/sh.exe
INFO: checking for host system type... 
INFO: x86_64-pc-mingw32
INFO: checking for target system type... 
INFO: x86_64-pc-mingw32
INFO: checking for a shell... 
INFO: C:/mozilla-build-3.2/msys/bin/sh.exe
INFO: checking for host system type... 
INFO: x86_64-pc-mingw32
INFO: checking for target system type... 
INFO: x86_64-pc-mingw32
INFO: checking for vcs source checkout... 
INFO: git
INFO: checking whether cross compiling... 
INFO: no
INFO: checking for the target C compiler... 
DEBUG: _cc: Trying cl
INFO: c:/Dev/MSVC14/bin/Hostx64/x64/cl.exe
INFO: checking whether the target C compiler can be used... 
DEBUG: Creating `c:\users\admin\appdata\local\temp\conftest.vpyg1r.c` with content:
DEBUG: | #if defined(_MSC_VER)
DEBUG: | #if defined(__clang__)
DEBUG: | %COMPILER "clang-cl"
DEBUG: | %VERSION _MSC_FULL_VER
DEBUG: | #else
DEBUG: | %COMPILER "msvc"
DEBUG: | %VERSION _MSC_FULL_VER
DEBUG: | #endif
DEBUG: | #elif defined(__clang__)
DEBUG: | %COMPILER "clang"
DEBUG: | #  if __has_warning("-Wtautological-constant-compare")
DEBUG: | %VERSION __clang_major__.__clang_minor__.__clang_patchlevel__
DEBUG: | #  endif
DEBUG: | #elif defined(__GNUC__)
DEBUG: | %COMPILER "gcc"
DEBUG: | %VERSION __GNUC__.__GNUC_MINOR__.__GNUC_PATCHLEVEL__
DEBUG: | #endif
DEBUG: | 
DEBUG: | #if __cplusplus
DEBUG: | %cplusplus __cplusplus
DEBUG: | #elif __STDC_VERSION__
DEBUG: | %STDC_VERSION __STDC_VERSION__
DEBUG: | #elif __STDC__
DEBUG: | %STDC_VERSION 198900L
DEBUG: | #endif
DEBUG: | #if __i386__ || _M_IX86
DEBUG: | %CPU "x86"
DEBUG: | #elif __x86_64__ || _M_X64
DEBUG: | %CPU "x86_64"
DEBUG: | #elif __arm__ || _M_ARM
DEBUG: | %CPU "arm"
DEBUG: | #elif __aarch64__
DEBUG: | %CPU "aarch64"
DEBUG: | #elif __ia64__
DEBUG: | %CPU "ia64"
DEBUG: | #elif __s390x__
DEBUG: | %CPU "s390x"
DEBUG: | #elif __s390__
DEBUG: | %CPU "s390"
DEBUG: | #elif __powerpc64__
DEBUG: | %CPU "ppc64"
DEBUG: | #elif __powerpc__
DEBUG: | %CPU "ppc"
DEBUG: | #elif __alpha__
DEBUG: | %CPU "Alpha"
DEBUG: | #elif __hppa__
DEBUG: | %CPU "hppa"
DEBUG: | #elif __sparc__ && __arch64__
DEBUG: | %CPU "sparc64"
DEBUG: | #elif __sparc__
DEBUG: | %CPU "sparc"
DEBUG: | #elif __mips64
DEBUG: | %CPU "mips64"
DEBUG: | #elif __mips__
DEBUG: | %CPU "mips32"
DEBUG: | #elif __sh__
DEBUG: | %CPU "sh4"
DEBUG: | #endif
DEBUG: | #if __FreeBSD_kernel__
DEBUG: | %KERNEL "kFreeBSD"
DEBUG: | #elif __DragonFly__
DEBUG: | %KERNEL "DragonFly"
DEBUG: | #elif __OpenBSD__
DEBUG: | %KERNEL "OpenBSD"
DEBUG: | #elif __sun__
DEBUG: | %KERNEL "SunOS"
DEBUG: | #elif __FreeBSD__
DEBUG: | %KERNEL "FreeBSD"
DEBUG: | #elif __linux__
DEBUG: | %KERNEL "Linux"
DEBUG: | #elif _WIN32 || __CYGWIN__
DEBUG: | %KERNEL "WINNT"
DEBUG: | #elif __NetBSD__
DEBUG: | %KERNEL "NetBSD"
DEBUG: | #elif __APPLE__
DEBUG: | %KERNEL "Darwin"
DEBUG: | #endif
DEBUG: | #if _MSC_VER || __BYTE_ORDER__ == __ORDER_LITTLE_ENDIAN__
DEBUG: | %ENDIANNESS "little"
DEBUG: | #elif __BYTE_ORDER__ == __ORDER_BIG_ENDIAN__
DEBUG: | %ENDIANNESS "big"
DEBUG: | #endif
DEBUG: Executing: `c:/Dev/MSVC14/bin/Hostx64/x64/cl.exe -E 'c:\users\admin\appdata\local\temp\conftest.vpyg1r.c'`
DEBUG: COMPILER = msvc
DEBUG: VERSION = 191627051
DEBUG: CPU = x86_64
DEBUG: KERNEL = WINNT
DEBUG: ENDIANNESS = little
INFO: yes
INFO: checking for git... 
DEBUG: git: Trying git
INFO: 'c:/PROGRA~1/Git/cmd/git.exe'
INFO: checking for Git version... 
DEBUG: Executing: `'c:/PROGRA~1/Git/cmd/git.exe' --version`
INFO: 2.44.0.windows.1
INFO: checking for pkg_config... 
DEBUG: pkg_config: Trying pkg-config
INFO: not found
INFO: checking for yasm... 
DEBUG: yasm: Trying yasm
INFO: c:/mozilla-build-3.2/bin/yasm.exe
INFO: checking yasm version... 
DEBUG: Executing: `c:/mozilla-build-3.2/bin/yasm.exe --version`
INFO: 1.3.0
INFO: checking for nasm... 
DEBUG: nasm: Trying nasm
INFO: not found
INFO: checking the target C compiler version... 
INFO: 19.16.27051
INFO: checking the target C compiler works... 
DEBUG: Creating `c:\users\admin\appdata\local\temp\conftest.k8rwib.c` with content:
DEBUG: | 
DEBUG: | int
DEBUG: | main(void)
DEBUG: | {
DEBUG: | 
DEBUG: |   ;
DEBUG: |   return 0;
DEBUG: | }
DEBUG: Executing: `c:/Dev/MSVC14/bin/Hostx64/x64/cl.exe -c 'c:\users\admin\appdata\local\temp\conftest.k8rwib.c'`
INFO: yes
INFO: checking for the target C++ compiler... 
DEBUG: _cxx: Trying c:/Dev/MSVC14/bin/Hostx64/x64/cl.exe
INFO: c:/Dev/MSVC14/bin/Hostx64/x64/cl.exe
INFO: checking whether the target C++ compiler can be used... 
DEBUG: Creating `c:\users\admin\appdata\local\temp\conftest.kxzshu.cpp` with content:
DEBUG: | #if defined(_MSC_VER)
DEBUG: | #if defined(__clang__)
DEBUG: | %COMPILER "clang-cl"
DEBUG: | %VERSION _MSC_FULL_VER
DEBUG: | #else
DEBUG: | %COMPILER "msvc"
DEBUG: | %VERSION _MSC_FULL_VER
DEBUG: | #endif
DEBUG: | #elif defined(__clang__)
DEBUG: | %COMPILER "clang"
DEBUG: | #  if __has_warning("-Wtautological-constant-compare")
DEBUG: | %VERSION __clang_major__.__clang_minor__.__clang_patchlevel__
DEBUG: | #  endif
DEBUG: | #elif defined(__GNUC__)
DEBUG: | %COMPILER "gcc"
DEBUG: | %VERSION __GNUC__.__GNUC_MINOR__.__GNUC_PATCHLEVEL__
DEBUG: | #endif
DEBUG: | 
DEBUG: | #if __cplusplus
DEBUG: | %cplusplus __cplusplus
DEBUG: | #elif __STDC_VERSION__
DEBUG: | %STDC_VERSION __STDC_VERSION__
DEBUG: | #elif __STDC__
DEBUG: | %STDC_VERSION 198900L
DEBUG: | #endif
DEBUG: | #if __i386__ || _M_IX86
DEBUG: | %CPU "x86"
DEBUG: | #elif __x86_64__ || _M_X64
DEBUG: | %CPU "x86_64"
DEBUG: | #elif __arm__ || _M_ARM
DEBUG: | %CPU "arm"
DEBUG: | #elif __aarch64__
DEBUG: | %CPU "aarch64"
DEBUG: | #elif __ia64__
DEBUG: | %CPU "ia64"
DEBUG: | #elif __s390x__
DEBUG: | %CPU "s390x"
DEBUG: | #elif __s390__
DEBUG: | %CPU "s390"
DEBUG: | #elif __powerpc64__
DEBUG: | %CPU "ppc64"
DEBUG: | #elif __powerpc__
DEBUG: | %CPU "ppc"
DEBUG: | #elif __alpha__
DEBUG: | %CPU "Alpha"
DEBUG: | #elif __hppa__
DEBUG: | %CPU "hppa"
DEBUG: | #elif __sparc__ && __arch64__
DEBUG: | %CPU "sparc64"
DEBUG: | #elif __sparc__
DEBUG: | %CPU "sparc"
DEBUG: | #elif __mips64
DEBUG: | %CPU "mips64"
DEBUG: | #elif __mips__
DEBUG: | %CPU "mips32"
DEBUG: | #elif __sh__
DEBUG: | %CPU "sh4"
DEBUG: | #endif
DEBUG: | #if __FreeBSD_kernel__
DEBUG: | %KERNEL "kFreeBSD"
DEBUG: | #elif __DragonFly__
DEBUG: | %KERNEL "DragonFly"
DEBUG: | #elif __OpenBSD__
DEBUG: | %KERNEL "OpenBSD"
DEBUG: | #elif __sun__
DEBUG: | %KERNEL "SunOS"
DEBUG: | #elif __FreeBSD__
DEBUG: | %KERNEL "FreeBSD"
DEBUG: | #elif __linux__
DEBUG: | %KERNEL "Linux"
DEBUG: | #elif _WIN32 || __CYGWIN__
DEBUG: | %KERNEL "WINNT"
DEBUG: | #elif __NetBSD__
DEBUG: | %KERNEL "NetBSD"
DEBUG: | #elif __APPLE__
DEBUG: | %KERNEL "Darwin"
DEBUG: | #endif
DEBUG: | #if _MSC_VER || __BYTE_ORDER__ == __ORDER_LITTLE_ENDIAN__
DEBUG: | %ENDIANNESS "little"
DEBUG: | #elif __BYTE_ORDER__ == __ORDER_BIG_ENDIAN__
DEBUG: | %ENDIANNESS "big"
DEBUG: | #endif
DEBUG: Executing: `c:/Dev/MSVC14/bin/Hostx64/x64/cl.exe -E 'c:\users\admin\appdata\local\temp\conftest.kxzshu.cpp'`
DEBUG: COMPILER = msvc
DEBUG: VERSION = 191627051
DEBUG: cplusplus = 199711L
DEBUG: CPU = x86_64
DEBUG: KERNEL = WINNT
DEBUG: ENDIANNESS = little
DEBUG: Creating `c:\users\admin\appdata\local\temp\conftest.rcwnlk.cpp` with content:
DEBUG: | #if defined(_MSC_VER)
DEBUG: | #if defined(__clang__)
DEBUG: | %COMPILER "clang-cl"
DEBUG: | %VERSION _MSC_FULL_VER
DEBUG: | #else
DEBUG: | %COMPILER "msvc"
DEBUG: | %VERSION _MSC_FULL_VER
DEBUG: | #endif
DEBUG: | #elif defined(__clang__)
DEBUG: | %COMPILER "clang"
DEBUG: | #  if __has_warning("-Wtautological-constant-compare")
DEBUG: | %VERSION __clang_major__.__clang_minor__.__clang_patchlevel__
DEBUG: | #  endif
DEBUG: | #elif defined(__GNUC__)
DEBUG: | %COMPILER "gcc"
DEBUG: | %VERSION __GNUC__.__GNUC_MINOR__.__GNUC_PATCHLEVEL__
DEBUG: | #endif
DEBUG: | 
DEBUG: | #if __cplusplus
DEBUG: | %cplusplus __cplusplus
DEBUG: | #elif __STDC_VERSION__
DEBUG: | %STDC_VERSION __STDC_VERSION__
DEBUG: | #elif __STDC__
DEBUG: | %STDC_VERSION 198900L
DEBUG: | #endif
DEBUG: | #if __i386__ || _M_IX86
DEBUG: | %CPU "x86"
DEBUG: | #elif __x86_64__ || _M_X64
DEBUG: | %CPU "x86_64"
DEBUG: | #elif __arm__ || _M_ARM
DEBUG: | %CPU "arm"
DEBUG: | #elif __aarch64__
DEBUG: | %CPU "aarch64"
DEBUG: | #elif __ia64__
DEBUG: | %CPU "ia64"
DEBUG: | #elif __s390x__
DEBUG: | %CPU "s390x"
DEBUG: | #elif __s390__
DEBUG: | %CPU "s390"
DEBUG: | #elif __powerpc64__
DEBUG: | %CPU "ppc64"
DEBUG: | #elif __powerpc__
DEBUG: | %CPU "ppc"
DEBUG: | #elif __alpha__
DEBUG: | %CPU "Alpha"
DEBUG: | #elif __hppa__
DEBUG: | %CPU "hppa"
DEBUG: | #elif __sparc__ && __arch64__
DEBUG: | %CPU "sparc64"
DEBUG: | #elif __sparc__
DEBUG: | %CPU "sparc"
DEBUG: | #elif __mips64
DEBUG: | %CPU "mips64"
DEBUG: | #elif __mips__
DEBUG: | %CPU "mips32"
DEBUG: | #elif __sh__
DEBUG: | %CPU "sh4"
DEBUG: | #endif
DEBUG: | #if __FreeBSD_kernel__
DEBUG: | %KERNEL "kFreeBSD"
DEBUG: | #elif __DragonFly__
DEBUG: | %KERNEL "DragonFly"
DEBUG: | #elif __OpenBSD__
DEBUG: | %KERNEL "OpenBSD"
DEBUG: | #elif __sun__
DEBUG: | %KERNEL "SunOS"
DEBUG: | #elif __FreeBSD__
DEBUG: | %KERNEL "FreeBSD"
DEBUG: | #elif __linux__
DEBUG: | %KERNEL "Linux"
DEBUG: | #elif _WIN32 || __CYGWIN__
DEBUG: | %KERNEL "WINNT"
DEBUG: | #elif __NetBSD__
DEBUG: | %KERNEL "NetBSD"
DEBUG: | #elif __APPLE__
DEBUG: | %KERNEL "Darwin"
DEBUG: | #endif
DEBUG: | #if _MSC_VER || __BYTE_ORDER__ == __ORDER_LITTLE_ENDIAN__
DEBUG: | %ENDIANNESS "little"
DEBUG: | #elif __BYTE_ORDER__ == __ORDER_BIG_ENDIAN__
DEBUG: | %ENDIANNESS "big"
DEBUG: | #endif
DEBUG: Executing: `c:/Dev/MSVC14/bin/Hostx64/x64/cl.exe -std=gnu++17 -E 'c:\users\admin\appdata\local\temp\conftest.rcwnlk.cpp'`
DEBUG: COMPILER = msvc
DEBUG: VERSION = 191627051
DEBUG: cplusplus = 199711L
DEBUG: CPU = x86_64
DEBUG: KERNEL = WINNT
DEBUG: ENDIANNESS = little
INFO: no
ERROR: Unknown compiler or compiler not supported.
hawkeye116477 commented 4 months ago

@K4sum1 UXP uses other compiler, just go to about:buildconfig from latest Classic binary to see Clang, Rust (latest won't work) and LLVM versions you need.

K4sum1 commented 4 months ago

If I wanted to force MSVC, how would I bypass the error?