Skip to content

Commit 7427935

Browse files
author
Daniele Briggi
committed
fix(windows): missing codecvt link
1 parent 0e86c29 commit 7427935

File tree

2 files changed

+15
-2
lines changed

2 files changed

+15
-2
lines changed

.github/workflows/main.yml

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -57,6 +57,7 @@ jobs:
5757
install: >-
5858
mingw-w64-x86_64-cc
5959
mingw-w64-x86_64-cmake
60+
mingw-w64-x86_64-toolchain
6061
make
6162
6263
- name: linux install dependencies
@@ -147,8 +148,13 @@ jobs:
147148
adb push ${{ github.workspace }}/. /data/local/tmp/
148149
adb shell "sh /data/local/tmp/commands.sh"
149150
151+
- name: windows test sqlite-ai
152+
if: matrix.name == 'windows'
153+
run: make test
154+
shell: msys2 {0}
155+
150156
- name: test sqlite-ai
151-
if: matrix.name == 'linux' || matrix.name == 'windows' || matrix.name == 'macos'
157+
if: matrix.name == 'linux' || matrix.name == 'macos'
152158
run: make test
153159

154160
- uses: actions/[email protected]

Makefile

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,7 @@ MAKEFLAGS += -j$(CPUS)
2828
CC = gcc
2929
CXX = g++
3030
CFLAGS = -Wall -Wextra -Wno-unused-parameter -I$(SRC_DIR) -I$(LLAMA_DIR)/ggml/include -I$(LLAMA_DIR)/include
31+
CXXFLAGS =
3132
LDFLAGS = -L./$(BUILD_LLAMA)/common -L./$(BUILD_LLAMA)/ggml/src -L./$(BUILD_LLAMA)/src -L./$(BUILD_WHISPER)/src -lcommon -lggml -lggml-cpu -lggml-base -lllama -lwhisper
3233
LLAMA_OPTIONS = $(LLAMA) -DLLAMA_CURL=OFF -DLLAMA_BUILD_EXAMPLES=OFF -DLLAMA_BUILD_TESTS=OFF -DLLAMA_BUILD_TOOLS=OFF -DLLAMA_BUILD_SERVER=OFF
3334
WHISPER_OPTIONS = $(WHISPER) -DWHISPER_BUILD_EXAMPLES=OFF -DWHISPER_BUILD_TESTS=OFF -DWHISPER_BUILD_SERVER=OFF
@@ -55,6 +56,12 @@ ifeq ($(PLATFORM),windows)
5556
# Create .def file for Windows
5657
DEF_FILE := $(BUILD_DIR)/ai.def
5758
STRIP = strip --strip-unneeded $@
59+
# Windows-specific C++ flags to work around MinGW codecvt issues
60+
# CXXFLAGS += -D_GLIBCXX_USE_CXX11_ABI=1 -DGGML_USE_UNICODE=0 -DLLAMA_DISABLE_UNICODE=1
61+
CXXFLAGS += -std=c++17 -Wall -Wextra -Wno-unused-parameter -I$(SRC_DIR) -I$(LLAMA_DIR)/ggml/include -I$(LLAMA_DIR)/include
62+
# Windows-specific flags to work around MinGW codecvt issues
63+
# LLAMA_OPTIONS += -DCMAKE_CXX_STANDARD=17 -DCMAKE_CXX_FLAGS="-D_GLIBCXX_USE_CXX11_ABI=1 -DGGML_USE_UNICODE=0 -DLLAMA_DISABLE_UNICODE=1"
64+
# WHISPER_OPTIONS += -DCMAKE_CXX_STANDARD=17 -DCMAKE_CXX_FLAGS="-D_GLIBCXX_USE_CXX11_ABI=1 -DGGML_USE_UNICODE=0"
5865
else ifeq ($(PLATFORM),macos)
5966
TARGET := $(DIST_DIR)/ai.dylib
6067
LLAMA_LIBS += $(BUILD_LLAMA)/ggml/src/ggml-metal/libggml-metal.a $(BUILD_LLAMA)/ggml/src/ggml-blas/libggml-blas.a
@@ -132,7 +139,7 @@ all: $(TARGET)
132139

133140
# Loadable library
134141
$(TARGET): $(OBJ_FILES) $(DEF_FILE) $(LLAMA_LIBS) $(WHISPER_LIBS)
135-
$(CXX) $(OBJ_FILES) $(DEF_FILE) -o $@ $(LDFLAGS)
142+
$(CXX) $(CXXFLAGS) $(OBJ_FILES) $(DEF_FILE) -o $@ $(LDFLAGS)
136143
ifeq ($(PLATFORM),windows)
137144
# Generate import library for Windows
138145
dlltool -D $@ -d $(DEF_FILE) -l $(DIST_DIR)/ai.lib

0 commit comments

Comments
 (0)