Skip to content

Instantly share code, notes, and snippets.

@ebraminio
Forked from peterspackman/mingw-w64-x86_64.cmake
Last active June 11, 2025 09:24

Revisions

  1. ebraminio revised this gist Mar 19, 2021. 1 changed file with 1 addition and 0 deletions.
    1 change: 1 addition & 0 deletions mingw-w64-x86_64.cmake
    Original file line number Diff line number Diff line change
    @@ -23,4 +23,5 @@ set(CMAKE_FIND_ROOT_PATH_MODE_PROGRAM NEVER)
    set(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY)
    set(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY)

    set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -static -Os")
    set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -static -Os")
  2. ebraminio revised this gist Mar 19, 2021. 1 changed file with 7 additions and 4 deletions.
    11 changes: 7 additions & 4 deletions mingw-w64-x86_64.cmake
    Original file line number Diff line number Diff line change
    @@ -1,9 +1,10 @@
    # Sample toolchain file for building for Windows from an Ubuntu Linux system.
    #
    # Typical usage:
    # *) install cross compiler: `sudo apt-get install mingw-w64`
    # *) cd build
    # *) cmake -DCMAKE_TOOLCHAIN_FILE=~/mingw-w64-x86_64.cmake ..
    # *) install cross compiler: `sudo apt-get install mingw-w64` or `brew install mingw-w64` on macOS
    # *) cmake -DCMAKE_TOOLCHAIN_FILE=~/mingw-w64-x86_64.cmake -G Ninja -B build -S .
    # *) ninja -C build


    set(CMAKE_SYSTEM_NAME Windows)
    set(TOOLCHAIN_PREFIX x86_64-w64-mingw32)
    @@ -20,4 +21,6 @@ set(CMAKE_FIND_ROOT_PATH /usr/${TOOLCHAIN_PREFIX})
    # modify default behavior of FIND_XXX() commands
    set(CMAKE_FIND_ROOT_PATH_MODE_PROGRAM NEVER)
    set(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY)
    set(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY)
    set(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY)

    set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -static -Os")
  3. @peterspackman peterspackman created this gist Aug 16, 2016.
    23 changes: 23 additions & 0 deletions mingw-w64-x86_64.cmake
    Original file line number Diff line number Diff line change
    @@ -0,0 +1,23 @@
    # Sample toolchain file for building for Windows from an Ubuntu Linux system.
    #
    # Typical usage:
    # *) install cross compiler: `sudo apt-get install mingw-w64`
    # *) cd build
    # *) cmake -DCMAKE_TOOLCHAIN_FILE=~/mingw-w64-x86_64.cmake ..

    set(CMAKE_SYSTEM_NAME Windows)
    set(TOOLCHAIN_PREFIX x86_64-w64-mingw32)

    # cross compilers to use for C, C++ and Fortran
    set(CMAKE_C_COMPILER ${TOOLCHAIN_PREFIX}-gcc)
    set(CMAKE_CXX_COMPILER ${TOOLCHAIN_PREFIX}-g++)
    set(CMAKE_Fortran_COMPILER ${TOOLCHAIN_PREFIX}-gfortran)
    set(CMAKE_RC_COMPILER ${TOOLCHAIN_PREFIX}-windres)

    # target environment on the build host system
    set(CMAKE_FIND_ROOT_PATH /usr/${TOOLCHAIN_PREFIX})

    # modify default behavior of FIND_XXX() commands
    set(CMAKE_FIND_ROOT_PATH_MODE_PROGRAM NEVER)
    set(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY)
    set(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY)