Я пытаюсь запустить clang-компиляцию из приложения Java. Он отлично работает, пока я не попытаюсь передать аргумент pkg-config. Например:`pkg-config` аргумент для clang из Java
clang -I/usr/lib/gcc/x86_64-linux-gnu/4.6/include `pkg-config --cflags --libs gtk+-2.0` -o file.o main.c
Линия, подобная этой линии, отлично работает с терминалом, но не работает с Java. Clang сообщает об отсутствии такого файла или каталога: `` pkg-config -cflags -libs gtk + -2.0` '.
Я использую следующий код для запуска компилятора:
List<String> cmd = new LinkedList<String>();
cmd.add("clang");
cmd.add("-I/usr/lib/gcc/x86_64-linux-gnu/4.6/include");
cmd.add("`pkg-config --cflags --libs gtk+-2.0`");
cmd.add("-o");
cmd.add("file.o");
cmd.add("main.c");
Process proc = Runtime.getRuntime().exec(cmd.toArray(new String[0]));
...
Любые идеи, почему это работает отлично от терминала, но точно такая же линия терпит неудачу, когда набираемые Java?
Право, конечно! Благодарю. – user1164112