使用gcc编译时没有创建输出文件

时间:2012-06-28 08:42:38

标签: java bash gcc compilation cygwin

在Java Source中调用gcc编译器来编译C文件。

  List<String> command = new ArrayList<String>();
  String fs = System.getProperty("file.separator");
  command.add("C:\\cygwin" + fs + "bin" + fs + "sh");
  command.add("-c");
  command.add("/usr/bin/gcc /cygdrive/d/WorkSpace/TEST/HelloWorld.c -o /cygdrive/d/WorkSpace/HHH");
  ProcessBuilder builder = new ProcessBuilder(command);
  final Process process = builder.start();

未创建HHH.exe。有人可以解释一下这段代码有什么问题吗?

1 个答案:

答案 0 :(得分:1)

您需要将字符串“cmd”和“/ c”作为命令列表中的前两个元素。从Java调用任何命令行进程时,这是必需的。