Error 1248 on compile

So, as an avid fan of getting my hands figuratively dirty with coding, I decided to play around with the Mixxx code to see if I could add a custom widget for skins for my own uses. Now, as someone with experience, the first thing I do when I get my hands on code is compile it before I touch anything just to make sure everything is working right prior to me breaking it (lol). Unfortunately, I’ve got this weird issue (keep in mind, I haven’t changed any files yet). The exact error says:

win64_build\libmixxx.lib : fatal error LNK1248: image size (10029F653) exceeds maximum allowable size (FFFFFFFF)
scons: *** [win64_build\libmixxx.lib] Error 1248
scons: building terminated because of errors.

Weird, I haven’t seen this issue yet. Which branch did you try to build? Can you try to build master with CMake?

I saw that error once, but now I am not sure what I did to fix it.

First, even though I see that you are building a 64bit Mixxx, could you verify that you are using the 64bit compiler? ( that is, the one named amd64, not the one named x86_amd64).

If that’s not the problem, I would suggest trying to build with cmake.
You have some instructions here:

Definitely building with the 64 bit compiler. The very first output says:

2.3-j00019-x64-release-static-55e94982-minimal already exists at E:\Projects\Coding\source\mixxx-master…
Building with preconfigured path at: “C:\Program Files (x86)\Microsoft Visual Studio\2019\BuildTools\VC”
Using 64-bit compiler.

I’ll have to try CMake then. Will let you know how that goes.

Don’t know if this will help at all in the future but I ran the command with logging to file so I could get you the entire output. This is what my build log says. It’s at pastebin because it isn’t short. https://pastebin.com/4cfPJzKq

CMake is giving me problems too. I’m going to try re-cloning the repository again and starting from a completely clean slate. We’ll see if that works, lol.

Update: Still no luck. First it was complaining about a module not being installed (Which was installed) so I reinstalled that which fixed it, now it’s saying "Could NOT find FFTW (missing: FFTW_LIBRARY FFTW_INCLUDE_DIR). Followed the instructions to a T. Even tried manually installing FFTW.

------ Build All started: Project: mixxx-master, Configuration: x64-Debug ------
[1/772] Copying resources to build directory…
[2/772] Copying QScriptEngine extensions to build directory…
[3/772] Copying test data to build directory…
[4/772] Performing build step for ‘libebur128’
ninja: no work to do.
[5/772] Performing update step for ‘keyfinder’
[6/772] Performing install step for ‘libebur128’
[0/1] Install the project…
– Install configuration: “Debug”
– Up-to-date: E:/Projects/Coding/source/C++/mixxx-master/mixxx-master/out/build/x64-Debug/lib/libebur128-install/include/ebur128.h
– Up-to-date: E:/Projects/Coding/source/C++/mixxx-master/mixxx-master/out/build/x64-Debug/lib/libebur128-install/lib/libebur128.dll.a
– Up-to-date: E:/Projects/Coding/source/C++/mixxx-master/mixxx-master/out/build/x64-Debug/lib/libebur128-install/lib/libebur128.dll
– Up-to-date: E:/Projects/Coding/source/C++/mixxx-master/mixxx-master/out/build/x64-Debug/lib/libebur128-install/lib/libebur128.a
– Up-to-date: E:/Projects/Coding/source/C++/mixxx-master/mixxx-master/out/build/x64-Debug/lib/libebur128-install/lib/pkgconfig/libebur128.pc
[7/772] Completed ‘libebur128’
[8/772] Performing configure step for ‘keyfinder’
FAILED: keyfinder-prefix/src/keyfinder-stamp/keyfinder-configure
cmd.exe /C “cd /D E:\Projects\Coding\source\C++\mixxx-master\mixxx-master\out\build\x64-Debug\keyfinder-prefix\src\keyfinder-build && “C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\Common7\IDE\CommonExtensions\Microsoft\CMake\CMake\bin\cmake.exe” -DBUILD_STATIC_LIBS=ON -DCMAKE_SKIP_INSTALL_ALL_DEPENDENCY=ON -DCMAKE_BUILD_TYPE=Debug -DCMAKE_INSTALL_PREFIX:PATH=E:/Projects/Coding/source/C++/mixxx-master/mixxx-master/out/build/x64-Debug/lib/keyfinder-install -DCMAKE_PREFIX_PATH:PATH=“E:\Projects\Coding\source\C++\mixxx-master\2.3-j00019-x64-release-static-55e94982-minimal E:\Projects\Coding\source\C++\mixxx-master\2.3-j00019-x64-release-static-55e94982-minimal\Qt-5.14.2” -GNinja E:/Projects/Coding/source/C++/mixxx-master/mixxx-master/out/build/x64-Debug/keyfinder-prefix/src/keyfinder && “C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\Common7\IDE\CommonExtensions\Microsoft\CMake\CMake\bin\cmake.exe” -E touch E:/Projects/Coding/source/C++/mixxx-master/mixxx-master/out/build/x64-Debug/keyfinder-prefix/src/keyfinder-stamp/keyfinder-configure”
– Building libKeyFinder as a static library
CMake Error at C:/Program Files (x86)/Microsoft Visual Studio/2019/Community/Common7/IDE/CommonExtensions/Microsoft/CMake/CMake/share/cmake-3.17/Modules/FindPackageHandleStandardArgs.cmake:164 (message):
Could NOT find FFTW (missing: FFTW_LIBRARY FFTW_INCLUDE_DIR)
Call Stack (most recent call first):
C:/Program Files (x86)/Microsoft Visual Studio/2019/Community/Common7/IDE/CommonExtensions/Microsoft/CMake/CMake/share/cmake-3.17/Modules/FindPackageHandleStandardArgs.cmake:445 (_FPHSA_FAILURE_MESSAGE)
cmake/FindFFTW.cmake:51 (find_package_handle_standard_args)
CMakeLists.txt:47 (find_package)

– Configuring incomplete, errors occurred!
See also “E:/Projects/Coding/source/C++/mixxx-master/mixxx-master/out/build/x64-Debug/keyfinder-prefix/src/keyfinder-build/CMakeFiles/CMakeOutput.log”.
ninja: build stopped: subcommand failed.

Build All failed.

You can configure cmake with -DKEYFINDER=OFF to work around that issue. FFTW is not part of our pre-built Windows environment yet.

That fixed that error but now I’m getting another one. Now it’s saying:

fatal error LNK1181: cannot open input file 'lib\libebur128-install\lib\ebur128_static.lib'

I think I’m just going to let you guys worry about making features because I’m beyond frustrated at this point. Two days straight of trying to just build the git files as-is without even touching them. Been programming for like a decade… can’t figure out how to build the git clone… kind of feel like an idiot, lol.

You are no idiot, compiling on windows is complicated. Please don’t give up.

Not a single one of our core devs uses windows, so we desperately need Windows devs to help with Windows-specific Issues. Unfortunately this also means we don’t always know how to help you because we don’t use Windows ourselves, which makes it less likely that we attract new Windows devs to help with Mixxx development. Kind of a vicious circle.

Can you post more context? Has libebur been successfully built?

Did you use the Ninja genererator when configuring with CMake (-G Ninja)? I think nobody ever tried to build with the VS generators.

Also, maybe you can ask on Zulip. Someone recently managed to self-compile on windows using cmake.

I haven’t given up yet, just tired and frustrated and kind of rage quit to my fluffy bed, lol. I’m installing an older version of Visual Studio (Specifically 2017) because I got passed the last issue and now it’s telling me a bunch of stuff is compiled on an older compiler and now I realized that for some reason every time I try to force my 2019 to use MSVC 141 it completely ignores me and uses 142. I’ll update you when something seems to be moving.

Update:
Turns out VS 2017 would work great… except it uses CMake 3.12 and I need 3.13 and there is no way to upgrade CMake version in VS 2017. LOL. Nice work Microsoft, nice work. I’ll figure this out. There has to be a way to force VS 2019 to use the 141 toolset even though it’s hell-bent on not doing so.

Well, I’ve now managed to force it to use the correct compiler and I hate Microsoft more than ever at this point. Now it’s throwing an error saying “STL1001: Unexpected compiler version, expected MSVC 19.26 or newer.” So basically, I’ll have to work with a different IDE. This one refuses to use CMake 3.13+ with MSVC 141. Older version have too old of a CMake version and newer versions throw errors when using MSVC 141. Nice work Microsoft.

I’ve made it through a lot more of the red tape with this by installing a different compiler and CMake that are unrelated to VS (Mingw & CMake directly from their website). Unfortunately now I find myself constantly being bombarded with “fatal error: {insert file name here}: No such file or directory” and when looking into these files, each and every one is a Linux only file. So far most seem to come from glibc. I see why nobody works with this on Windows, lol.

I have idea about Ides, but here’s a suggestion and maybe it’s worth to try.

  1. Install an up-to-date version of CMake
  2. Open the x64 developer console (should be installed). It should set all env variables so that a compiler can be found.
  3. Check if the cmake version is up-to-date
  4. If so, run cmake manually and use the Ninja generator (-G Ninja)

Warning: Mixxx has never been attempted to be built successfully with mingw, so that’s even a harder route to try.

I have VS2019 and wrote those instructions i posted. But I think that I didn’t try building it with the 14.1 compiler. I have this on a log:

Compiler: C:/Program Files (x86)/Microsoft Visual Studio/2019/Community/VC/Tools/MSVC/14.25.28610/bin/HostX64/x64/cl.exe

Compilador de optimización de C/C++ de Microsoft ® versión 19.25.28614 para x64

I also have the 14.1 compiler, but I have that configured just on scons.

In both cases, I am using the 2.3-j00019-x64-release-fastbuild-static-55e94982-minimal

So it is just a weird, me-issue then? If I try to use the 14.2 toolset I get an error stating that chromaprint and a bunch of other files from the build environment were compiled with an older compiler and to recompile all old files. An interesting thing to note, my 14.2 is 14.27.29110, not 14.25.28610. I’ll have to see if I can get 14.25.2861.

Thanks for the info. I’ll let you know if that helps me move forward with this.

Hat night be because i haven’t updated it in a while. I hink i have sp4, and current is sp6 IIRC

El ds., 17 oct. 2020 , 18:29, Alexis via Mixxx <mixxx@discoursemail.com> va escriure: