Skip to content

Commit 71fc70b

Browse files
committed
add FetchContent installation method description to README
1 parent 8435926 commit 71fc70b

File tree

1 file changed

+29
-11
lines changed

1 file changed

+29
-11
lines changed

docs/README.md

+29-11
Original file line numberDiff line numberDiff line change
@@ -68,6 +68,24 @@ C-SDK 使用 [cURL](http://curl.haxx.se/) 进行网络相关操作。无论是
6868

6969
如果在项目构建过程中出现环境相关的编译错误和链接错误,请确认这些选项是否都已经正确配置,以及所依赖的库是否都已经正确的安装。
7070

71+
#### 通过 CMake 编译
72+
73+
如果想在 CMake 项目里使用 C-SDK,可以直接在 CMake 里导入 C-SDK:
74+
75+
```cmake
76+
INCLUDE(FetchContent)
77+
FetchContent_Declare(
78+
qiniu
79+
GIT_REPOSITORY https://github.com/qiniu/c-sdk.git
80+
GIT_TAG v7.8.0
81+
)
82+
FetchContent_MakeAvailable(qiniu)
83+
FIND_PACKAGE(CURL REQUIRED)
84+
FIND_PACKAGE(OpenSSL REQUIRED)
85+
TARGET_LINK_LIBRARIES(${PROJECT_NAME} PRIVATE qiniu m)
86+
TARGET_LINK_LIBRARIES(${PROJECT_NAME} PRIVATE ${CURL_LIBRARIES})
87+
TARGET_LINK_LIBRARIES(${PROJECT_NAME} PRIVATE ${OPENSSL_LIBRARIES})
88+
```
7189

7290
<a name="appkey"></a>
7391

@@ -169,7 +187,7 @@ typedef struct _Qiniu_Error {
169187
typedef struct _Qiniu_RS_StatRet {
170188
const char* hash;
171189
const char* mimeType;
172-
Qiniu_Int64 fsize;
190+
Qiniu_Int64 fsize;
173191
Qiniu_Int64 putTime;
174192
} Qiniu_RS_StatRet;
175193
```
@@ -427,7 +445,7 @@ void stat(Qiniu_Client* client, const char* bucket, const char* key)
427445
typedef struct _Qiniu_RS_StatRet {
428446
const char* hash;
429447
const char* mimeType;
430-
Qiniu_Int64 fsize;
448+
Qiniu_Int64 fsize;
431449
Qiniu_Int64 putTime;
432450
} Qiniu_RS_StatRet;
433451
```
@@ -456,8 +474,8 @@ void delete(Qiniu_Client* client, const char* bucket, const char* key)
456474
复制和移动操作,需要指定源路径和目标路径。
457475

458476
```{c}
459-
void copy(Qiniu_Client* client,
460-
const char* bucketSrc, const char* keySrc,
477+
void copy(Qiniu_Client* client,
478+
const char* bucketSrc, const char* keySrc,
461479
const char* bucketDest, const char* keyDest)
462480
{
463481
Qiniu_Error err = Qiniu_RS_Copy(client, bucketSrc, keySrc, bucketDest, keyDest);
@@ -470,8 +488,8 @@ void copy(Qiniu_Client* client,
470488
```
471489

472490
```{c}
473-
void move(Qiniu_Client* client,
474-
const char* bucketSrc, const char* keySrc,
491+
void move(Qiniu_Client* client,
492+
const char* bucketSrc, const char* keySrc,
475493
const char* bucketDest, const char* keyDest)
476494
{
477495
Qiniu_Error err = Qiniu_RS_Move(client, bucketSrc, keySrc, bucketDest, keyDest);
@@ -494,7 +512,7 @@ void move(Qiniu_Client* client,
494512
调用`Qiniu_RS_BatchStat`可以批量查看多个文件的属性信息。
495513

496514
```{c}
497-
void batchStat(Qiniu_Client* client,
515+
void batchStat(Qiniu_Client* client,
498516
Qiniu_RS_EntryPath* entries, Qiniu_ItemCount entryCount)
499517
{
500518
Qiniu_RS_BatchStatRet* rets = calloc(entryCount, sizeof(Qiniu_RS_BatchStatRet));
@@ -551,7 +569,7 @@ typedef struct _Qiniu_RS_BatchStatRet {
551569
typedef struct _Qiniu_RS_StatRet {
552570
const char* hash;
553571
const char* mimeType;
554-
Qiniu_Int64 fsize;
572+
Qiniu_Int64 fsize;
555573
Qiniu_Int64 putTime;
556574
} Qiniu_RS_StatRet;
557575
```
@@ -563,7 +581,7 @@ typedef struct _Qiniu_RS_StatRet {
563581
调用`Qiniu_RS_BatchDelete`可以批量删除多个文件。
564582

565583
```{c}
566-
void batchDelete(Qiniu_Client* client,
584+
void batchDelete(Qiniu_Client* client,
567585
Qiniu_RS_EntryPath* entries, Qiniu_ItemCount entryCount)
568586
{
569587
Qiniu_RS_BatchItemRet* rets = calloc(entryCount, sizeof(Qiniu_RS_BatchItemRet));
@@ -604,7 +622,7 @@ typedef struct _Qiniu_RS_BatchItemRet {
604622
调用`Qiniu_RS_BatchCopy`可以批量复制多个文件。
605623

606624
```{c}
607-
void batchCopy(Qiniu_Client* client,
625+
void batchCopy(Qiniu_Client* client,
608626
Qiniu_RS_EntryPathPair* entryPairs, Qiniu_ItemCount entryCount)
609627
{
610628
Qiniu_RS_BatchItemRet* rets = calloc(entryCount, sizeof(Qiniu_RS_BatchItemRet));
@@ -644,7 +662,7 @@ typedef struct _Qiniu_RS_EntryPathPair {
644662
批量移动和批量复制很类似,唯一的区别就是调用`Qiniu_RS_BatchMove`
645663

646664
```{c}
647-
void batchMove(Qiniu_Client* client,
665+
void batchMove(Qiniu_Client* client,
648666
Qiniu_RS_EntryPathPair* entryPairs, Qiniu_ItemCount entryCount)
649667
{
650668
Qiniu_RS_BatchItemRet* rets = calloc(entryCount, sizeof(Qiniu_RS_BatchItemRet));

0 commit comments

Comments
 (0)