Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/c/72.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/macos/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
代码块可以构建C程序,但可以';我不能运行它_C_Macos_Codeblocks - Fatal编程技术网

代码块可以构建C程序,但可以';我不能运行它

代码块可以构建C程序,但可以';我不能运行它,c,macos,codeblocks,C,Macos,Codeblocks,我是MacOS新手,这就是为什么我不知道它是如何工作的 当我用代码块构建我的C程序时,我对编译器没有问题,但是当我试图运行它时,我得到以下错误: '/Applications/CodeBlocks.app/Contents/MacOS/cb_console_runner DYLD_LIBRARY_PATH=$DYLD_LIBRARY_PATH:. /Users/gabin/Documents/codeblocks/fd/bin/Debug/fd ' zsh: no such file or di

我是MacOS新手,这就是为什么我不知道它是如何工作的

当我用代码块构建我的C程序时,我对编译器没有问题,但是当我试图运行它时,我得到以下错误:

'/Applications/CodeBlocks.app/Contents/MacOS/cb_console_runner DYLD_LIBRARY_PATH=$DYLD_LIBRARY_PATH:. /Users/gabin/Documents/codeblocks/fd/bin/Debug/fd '
zsh: no such file or directory: /Applications/CodeBlocks.app/Contents/MacOS/cb_console_runner DYLD_LIBRARY_PATH=$DYLD_LIBRARY_PATH:. /Users/gabin/Documents/codeblocks/fd/bin/Debug/fd 

我在另一篇文章中看到,这是程序名中有空格的问题,但这里的程序名是“fd”,因此我看不出问题出在哪里。

如果可以在代码块中添加自定义运行命令,请使用此选项

DYLD_LIBRARY_PATH=$DYLD_LIBRARY_PATH:. /Users/gabin/Documents/codeblocks/fd/bin/Debug/fd 
它应该是一个环境变量,后跟一个二进制,参数之间有任意数量的空格(参数间的空格,而不是参数内的空格)

我不知道代码块,但Xcode接受.app包作为启动项。如果您想从终端启动任何东西,请使用主二进制文件的完整路径

/Users/gabin/Documents/codeblocks/fd/bin/Debug/fd

只需复制/粘贴不带引号“”的命令:

/Applications/CodeBlocks.app/Contents/MacOS/cb_console_runner DYLD_LIBRARY_PATH=$DYLD_LIBRARY_PATH:. /Users/gabin/Documents/codeblocks/fd/bin/Debug/fd

它将运行。

问题在于命令周围的引号“”。如果复制/粘贴不带引号的命令,它将执行代码。下面是一个关于上述问题的例子:

/Applications/CodeBlocks.app/Contents/MacOS/cb_console_runner DYLD_LIBRARY_PATH=$DYLD_LIBRARY_PATH:. /Users/gabin/Documents/codeblocks/fd/bin/Debug/fd

其他文件可能会有所不同。

文件是否存在:
/Users/gabin/Documents/codeblocks/fd/bin/Debug/fd
?如果有,这个文件是否存在:
/Applications/CodeBlocks.app/Contents/MacOS/cb_console\u runner
?还有一个问题,第一行的末尾似乎有一个空格
../Debug/fd'
@user3386109您好,谢谢您的回答,我检查了这两个文件是否存在。对于您的第二条评论,结尾有一个空格,但它不是程序名称中的空格。有可能删除它吗?代码块似乎试图将整个字符串用作一个文件名,而编写它的人似乎有意将其解释为一个shell命令(因此将其解析为多个片段并进行shell参数扩展,尾随空格字符无关紧要).单引号字符在那里做什么?他们错了,,