Skip to content

Commit afdae88

Browse files
committed
fix(build): update MSVC library paths to use backslashes for compatibility
1 parent ced43b6 commit afdae88

2 files changed

Lines changed: 25 additions & 13 deletions

File tree

.github/workflows/main.yml

Lines changed: 21 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -356,8 +356,9 @@ jobs:
356356
where dpcpp
357357
echo PATH=%PATH%
358358
)
359-
set PATH=%VCToolsInstallDir%bin\Hostx64\x64;%WindowsSdkBinPath%x64;%PATH:C:\msys64\usr\bin;=%
360-
set PATH=%PATH:C:\msys64\mingw64\bin;=%
359+
set "PATH=%VCToolsInstallDir%bin\Hostx64\x64;%WindowsSdkBinPath%x64;%PATH%"
360+
set "PATH=%PATH:C:\msys64\usr\bin;=%"
361+
set "PATH=%PATH:C:\msys64\mingw64\bin;=%"
361362
make build/llama.cpp.stamp ${{ matrix.make && matrix.make || ''}}
362363
363364
- name: build llama.cpp (mingw/windows)
@@ -381,8 +382,9 @@ jobs:
381382
where icx
382383
where dpcpp
383384
)
384-
set PATH=%VCToolsInstallDir%bin\Hostx64\x64;%WindowsSdkBinPath%x64;%PATH:C:\msys64\usr\bin;=%
385-
set PATH=%PATH:C:\msys64\mingw64\bin;=%
385+
set "PATH=%VCToolsInstallDir%bin\Hostx64\x64;%WindowsSdkBinPath%x64;%PATH%"
386+
set "PATH=%PATH:C:\msys64\usr\bin;=%"
387+
set "PATH=%PATH:C:\msys64\mingw64\bin;=%"
386388
make build/whisper.cpp.stamp ${{ matrix.make && matrix.make || ''}}
387389
388390
- name: build whisper.cpp (mingw/windows)
@@ -406,8 +408,9 @@ jobs:
406408
where icx
407409
where dpcpp
408410
)
409-
set PATH=%VCToolsInstallDir%bin\Hostx64\x64;%WindowsSdkBinPath%x64;%PATH:C:\msys64\usr\bin;=%
410-
set PATH=%PATH:C:\msys64\mingw64\bin;=%
411+
set "PATH=%VCToolsInstallDir%bin\Hostx64\x64;%WindowsSdkBinPath%x64;%PATH%"
412+
set "PATH=%PATH:C:\msys64\usr\bin;=%"
413+
set "PATH=%PATH:C:\msys64\mingw64\bin;=%"
411414
make build/miniaudio.stamp ${{ matrix.make && matrix.make || ''}}
412415
413416
- name: build miniaudio (mingw/windows)
@@ -424,8 +427,9 @@ jobs:
424427
shell: cmd
425428
run: |
426429
call "C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Auxiliary\Build\vcvarsall.bat" x64
427-
set PATH=%VCToolsInstallDir%bin\Hostx64\x64;%WindowsSdkBinPath%x64;%PATH:C:\msys64\usr\bin;=%
428-
set PATH=%PATH:C:\msys64\mingw64\bin;=%
430+
set "PATH=%VCToolsInstallDir%bin\Hostx64\x64;%WindowsSdkBinPath%x64;%PATH%"
431+
set "PATH=%PATH:C:\msys64\usr\bin;=%"
432+
set "PATH=%PATH:C:\msys64\mingw64\bin;=%"
429433
where link
430434
make extension ${{ matrix.make && matrix.make || ''}}
431435
@@ -450,8 +454,9 @@ jobs:
450454
)
451455
where icx
452456
where dpcpp
453-
set PATH=%VCToolsInstallDir%bin\Hostx64\x64;%WindowsSdkBinPath%x64;%PATH:C:\msys64\usr\bin;=%
454-
set PATH=%PATH:C:\msys64\mingw64\bin;=%
457+
set "PATH=%VCToolsInstallDir%bin\Hostx64\x64;%WindowsSdkBinPath%x64;%PATH%"
458+
set "PATH=%PATH:C:\msys64\usr\bin;=%"
459+
set "PATH=%PATH:C:\msys64\mingw64\bin;=%"
455460
make extension ${{ matrix.make && matrix.make || ''}}
456461
457462
- name: windows build sqlite-ai (mingw)
@@ -515,8 +520,13 @@ jobs:
515520
run: |
516521
call "C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Auxiliary\Build\vcvarsall.bat" x64
517522
if "${{ matrix.name }}" == "windows-sycl" (
518-
call "%ONEAPI_ROOT%\setvars.bat"
523+
if exist "%ONEAPI_ROOT%\setvars.bat" (
524+
call "%ONEAPI_ROOT%\setvars.bat"
525+
)
519526
)
527+
set "PATH=%VCToolsInstallDir%bin\Hostx64\x64;%WindowsSdkBinPath%x64;%PATH%"
528+
set "PATH=%PATH:C:\msys64\usr\bin;=%"
529+
set "PATH=%PATH:C:\msys64\mingw64\bin;=%"
520530
make test ${{ matrix.make && matrix.make || ''}}
521531
522532
- name: windows test sqlite-ai (mingw)

Makefile

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -229,7 +229,7 @@ ifneq (,$(findstring CUDA,$(LLAMA)))
229229
ifeq ($(USE_MSVC),1)
230230
# MSVC CUDA build - use .lib files and MSVC linker syntax
231231
LLAMA_LIBS += $(BUILD_LLAMA)/ggml/src/ggml-cuda/Release/ggml-cuda.lib
232-
MSVC_LIBS += "$(CUDA_PATH)/lib/x64/cuda.lib" "$(CUDA_PATH)/lib/x64/cudart.lib"
232+
MSVC_LIBS += "$(CUDA_PATH)\lib\x64\cuda.lib" "$(CUDA_PATH)\lib\x64\cudart.lib"
233233
else
234234
# MinGW CUDA build - use original approach
235235
LLAMA_LDFLAGS = -L./$(BUILD_LLAMA)/common/Release -L./$(BUILD_LLAMA)/ggml/src/Release -L./$(BUILD_LLAMA)/src/Release -L./$(BUILD_LLAMA)/ggml/src/ggml-cuda/Release -L"$(CUDA_PATH)/lib/x64" $(L)common.lib $(L)llama.lib $(L)ggml.lib $(L)ggml-base.lib $(L)ggml-cuda.lib -lcuda -lcudart
@@ -283,7 +283,9 @@ all: $(TARGET)
283283
# Loadable library
284284
$(TARGET): $(OBJ_FILES) $(DEF_FILE) $(LLAMA_LIBS) $(WHISPER_LIBS) $(MINIAUDIO_LIBS)
285285
ifeq ($(USE_MSVC),1)
286-
link.exe /nologo $(LDFLAGS) /OUT:$@ $(OBJ_FILES) $(LLAMA_LIBS) $(WHISPER_LIBS) $(MINIAUDIO_LIBS) $(MSVC_LIBS)
286+
which link
287+
which link.exe
288+
link.exe /nologo $(LDFLAGS) /DEF:$(DEF_FILE) /OUT:$@ $(OBJ_FILES) $(LLAMA_LIBS) $(WHISPER_LIBS) $(MINIAUDIO_LIBS) $(MSVC_LIBS)
287289
else
288290
$(CXX) $(OBJ_FILES) $(DEF_FILE) -o $@ $(LDFLAGS)
289291
ifeq ($(PLATFORM),windows)

0 commit comments

Comments
 (0)