我正在M1 Mac上运行M1 11.6.1。试图在终端窗口中用GCC编写一个简单的文本到语音程序。
制作文件是: gcc voabTest.c -o词汇表
它编译,但不链接。尝试过g++。尝试过-arch x86_64。不断出错:
架构的未定义符号arm64:"_CFStringCreateWithCString",引用自: etc
我错过图书馆了吗?
任何帮助都非常感谢。我严格来说是个编程业余爱好者。谢谢。
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
#import <Carbon/Carbon.h>
// #include "SpeechSynthesis.h"
int main(void)
{
char text[120] = "Hello, World"; /* lines, S/E, chars */
SpeechChannel chan;
CFStringRef aString;
aString = CFStringCreateWithCString(NULL, text, kCFStringEncodingMacRoman);
printf("text = %s\n", text);
SpeakCFString(chan, aString, NULL);
return(0);
}
发布于 2022-05-10 07:45:26
我感谢那些作出回应的人。它帮助我找到了答案。我确实需要连接图书馆。这是最后一个工作的MakeFile和代码。
gcc vocabTest.c -o vocab -framework Carbon
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
#import <Carbon/Carbon.h>
int main(void)
{
char text[120] = "Hello, World"; /* lines, S/E, chars */
SpeechChannel chan;
CFStringRef aString;
OSErr theErr = noErr;
theErr = NewSpeechChannel(NULL, &chan);
aString = CFStringCreateWithCString(NULL, text, kCFStringEncodingMacRoman);
SpeakCFString(chan, aString, NULL);
while (SpeechBusySystemWide());
return(0);
}
https://stackoverflow.com/questions/72178269
复制