无法打开文件:./sysdeps/posix/system.c

Cannot open file: ../sysdeps/posix/system.c

本文关键字:sysdeps posix system 文件      更新时间:2023-10-16

我试图将一些字符串pat到 espeak,它将通过此代码说:

#include <string.h>
#include <malloc.h>
#include <espeak/speak_lib.h>
#include <iostream>
#include <stdlib.h>
#include <unistd.h>
//#include <cstring>
using namespace std;
int main()
{

    espeak_POSITION_TYPE position_type;
    espeak_AUDIO_OUTPUT output;
    char *path=NULL;
    int Buflength = 500, Options=0;
    void* user_data;
    t_espeak_callback *SynthCallback;
    espeak_PARAMETER Parm;

    char Voice[] = {"English"};
    int i=0;
    char text[11][200] {"hi ",
                        "This is...",
                        "you can ... ",
                        "I am ,,,, " ,
                        "you can ... ",
                        "hope you ... ",
                        "come in ... ",
                        "if you ... ",
                        "you will... ",
                        "I hope ... ",
                        "Take care "
                       };

    unsigned int Size,position=0, end_position=0, flags=espeakCHARS_AUTO, *unique_identifier;

    output = AUDIO_OUTPUT_PLAYBACK;
    espeak_Initialize(output, Buflength, path, Options );
    espeak_SetVoiceByName(Voice);
    const char *langNativeString = "en_US";
    espeak_VOICE voice= {0};
    voice.languages = langNativeString;
    voice.name = "US";
    voice.variant = 2;
    voice.gender = 1;
    //  Size = strlen(text)+1;

    for (;;)
    {

        for(i=0; i<11; i++)
        {
            Size = sizeof(text[i]);
            system("eog --fullscreen --disable-gallery --single-window 1.jpg &");
            usleep(3000000);
            espeak_Synth( text[i], Size, position, position_type, end_position, flags,
                          unique_identifier, user_data );
            espeak_Synchronize( );
            system("eog --fullscreen --disable-gallery --single-window 1.jpg &");
            usleep(3000000);
        }
//fflush(stdout);
    }
    return 0;
}

,但我得到segmentation fault(core dumped)错误。我试图调试代码,这是错误的错误:Cannot open file: ../sysdeps/posix/system.c发生在这一行中: system("eog --fullscreen --disable-gallery --single-window 1.jpg &");。我该如何解决?

you think 有11个数组(句子),但实际上只有10个。这两个

          "I am glad too meet you here "
          "you can see many science and technology products here ",

实际上只是一个,因为您错过了最后的逗号

我确实将代码的这一部分运输到main()函数外部,并且现在没有错误工作:

espeak_POSITION_TYPE position_type;
espeak_AUDIO_OUTPUT output;
char *path=NULL;
int Buflength = 500, Options=0;
void* user_data;
t_espeak_callback *SynthCallback;
espeak_PARAMETER Parm;

char Voice[] = {"English"};
int i=0;
unsigned int Size,position=0, end_position=0, flags=espeakCHARS_AUTO, *unique_identifier;