Skip to content

Commit 441f51d

Browse files
tamoggerganov
authored andcommitted
ci : build with CLBlast + ggml-opencl use GGML_API (whisper/1576)
* Build with CLBlast * Declare GGML_API After rebasing, examples/talk-llama failed: "D:\a\whisper.cpp\whisper.cpp\build\ALL_BUILD.vcxproj" (build target) (1) -> "D:\a\whisper.cpp\whisper.cpp\build\examples\talk-llama\talk-llama.vcxproj" (default target) (14) -> (Link target) -> llama.obj : error LNK2019: unresolved external symbol ggml_cl_free_data referenced in function "public: __cdecl llama_model::~llama_model(void)" (??1llama_model@@qeaa@XZ) [D:\a\whisper.cpp\whisper.cpp\build\examples\talk-llama\talk-llama.vcxproj] llama.obj : error LNK2019: unresolved external symbol ggml_cl_transform_tensor referenced in function "public: void __cdecl llama_model_loader::load_all_data(struct ggml_context *,void (__cdecl*)(float,void *),void *,struct llama_mlock *)" (?load_all_data@llama_model_loader@@QEAAXPEAUggml_context@@P6AXMPEAX@Z1PEAUllama_mlock@@@z) [D:\a\whisper.cpp\whisper.cpp\build\examples\talk-llama\talk-llama.vcxproj] D:\a\whisper.cpp\whisper.cpp\build\bin\Release\talk-llama.exe : fatal error LNK1120: 2 unresolved externals [D:\a\whisper.cpp\whisper.cpp\build\examples\talk-llama\talk-llama.vcxproj]
1 parent 38b3de4 commit 441f51d

File tree

1 file changed

+9
-9
lines changed

1 file changed

+9
-9
lines changed

ggml-opencl.h

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -6,19 +6,19 @@
66
extern "C" {
77
#endif
88

9-
void ggml_cl_init(void);
9+
GGML_API void ggml_cl_init(void);
1010

11-
void ggml_cl_mul(const struct ggml_tensor * src0, const struct ggml_tensor * src1, struct ggml_tensor * dst);
12-
bool ggml_cl_can_mul_mat(const struct ggml_tensor * src0, const struct ggml_tensor * src1, struct ggml_tensor * dst);
13-
size_t ggml_cl_mul_mat_get_wsize(const struct ggml_tensor * src0, const struct ggml_tensor * src1, struct ggml_tensor * dst);
14-
void ggml_cl_mul_mat(const struct ggml_tensor * src0, const struct ggml_tensor * src1, struct ggml_tensor * dst, void * wdata, size_t wsize);
11+
GGML_API void ggml_cl_mul(const struct ggml_tensor * src0, const struct ggml_tensor * src1, struct ggml_tensor * dst);
12+
GGML_API bool ggml_cl_can_mul_mat(const struct ggml_tensor * src0, const struct ggml_tensor * src1, struct ggml_tensor * dst);
13+
GGML_API size_t ggml_cl_mul_mat_get_wsize(const struct ggml_tensor * src0, const struct ggml_tensor * src1, struct ggml_tensor * dst);
14+
GGML_API void ggml_cl_mul_mat(const struct ggml_tensor * src0, const struct ggml_tensor * src1, struct ggml_tensor * dst, void * wdata, size_t wsize);
1515

16-
void * ggml_cl_host_malloc(size_t size);
17-
void ggml_cl_host_free(void * ptr);
16+
GGML_API void * ggml_cl_host_malloc(size_t size);
17+
GGML_API void ggml_cl_host_free(void * ptr);
1818

19-
void ggml_cl_free_data(const struct ggml_tensor* tensor);
19+
GGML_API void ggml_cl_free_data(const struct ggml_tensor* tensor);
2020

21-
void ggml_cl_transform_tensor(void * data, struct ggml_tensor * tensor);
21+
GGML_API void ggml_cl_transform_tensor(void * data, struct ggml_tensor * tensor);
2222

2323
#ifdef __cplusplus
2424
}

0 commit comments

Comments
 (0)