eastriverlee / LLM.swift

LLM.swift is a simple and readable library that allows you to interact with large language models locally with ease for macOS, iOS, watchOS, tvOS, and visionOS.
MIT License
382 stars 40 forks source link

Duplicate symbols -clang: error: linker command failed with exit code 1 #32

Open johnyquest7 opened 2 months ago

johnyquest7 commented 2 months ago

Describe the bug I have a swift project that uses LLM.swift and Swift whisper package. Plan was to use swift whisper to transcribe speech and send it to LLM. Both these packages works well independently. But when I tried to include these packages in one code base, Xcode errors popped up / stating there were duplicate symbols. I guess this is because both packages share ggml.h files? Is there a way to fix it ?

error: llama.h - 151 duplicate symbols Linker command failed with exit code 1 (use -v to see invocation)


Unable to compile swift mac app. ld: 151 duplicate symbols clang: error: linker command failed with exit code 1 (use -v to see invocation)


duplicate symbol '_ggml_dup' in: /Users//Library/Developer/Xcode/DerivedData/UI4trans-bkeawpcbkmzcuuhcwlvkcchdijkn/Build/Products/Debug/llama.o /Users//Library/Developer/Xcode/DerivedData/UI4trans-bkeawpcbkmzcuuhcwlvkcchdijkn/Build/Products/Debug/whisper_cpp.o duplicate symbol '_ggml_step' in:

ld: 151 duplicate symbols clang: error: linker command failed with exit code 1 (use -v to see invocation)


To Reproduce

import LLM
import SwiftWhisper

Expected behavior Project compiles without error

Screenshots If applicable, add screenshots to help explain your problem.

Desktop (please complete the following information): Apple M2 16 GB macOS 14