请大家帮忙分析一个c11程序的编译错误?

#define STDC_WANT_LIB_EXT1 1
#include
#include
#include
#include

#define TEXT_LEN 10000 //Maximum length of text
#define BUF_SIZE 100 //Input buffer size
#define MAX_WORDS 500 //Maximum number of different words
#define WORD_LEN 12 //Maximum word length

int main(void) {
//char delimiters[] = " \n\".,;:!?)(";
char text[TEXT_LEN] = " "; //stores the complete text
char buf[BUF_SIZE]; //stores one input line
//char words[MAX_WORDS][WORD_LEN]; //stores words from text
//int nword[MAX_WORDS] = {0}; //numbers of word occurences
//int word_count = 0; //number of words stored

printf("Enter text on an arbitrary number of lines.");
printf("\nEnter an empty line to end input: \n ");
//read an arbitrary number of lines of text
while(true) {
    fgets(buf, BUF_SIZE, stdin);
    if(buf[0] == '\n')
        break;
    if( strcat_s(text, TEXT_LEN, buf) ){
        printf("Maximum capacity for text exceededd. Terimating program.\n");
        return 1;
    }
}

return EXIT_SUCCESS;

}

$ gcc -std=c11 analyzing_text.c

analyzing_text.c: 在函数‘main’中:
analyzing_text.c:36:3: 警告:隐式声明函数‘strcat_s’ [-Wimplicit-function-declaration]
if( strcat_s(text, TEXT_LEN, buf) ){
^
/tmp/ccPmoHRO.o: In function main':
analyzing_text.c:(.text+0x9c): undefined reference to
strcat_s'
collect2: 错误:ld 返回 1http://ask.csdn.net/my#

gcc版本低了吧,不支持c11

加上gcc编译参数 -std=c1x