gnuplot-cpp не може да подаде команда към канал

Използвам gnuplot-cpp за чертане на математически графики с помощта на C++. Както смътно разбирам, това е интерфейс, който подава команда към pgnuplot.exe и показва изхода в друг GUI.

Досега имам грешка като:

'C:\Program' is not recognized as an internal or external command...

първоначалната команда, която се подава към тръбата, е:

"C:\Program Files (x86)\gnuplot\bin/pgnuplot.exe"

същата команда, изпълнена в _access(cmd), връща TRUE за съществуването на изпълнимия файл, докато връща грешката, описана преди това, когато се изпълнява в _popen(cmd,"w");

Чудя се, че грешката идва от формата на cmd низ и опитах "/", "\", "\\"... но нищо не работи

двата кодови файла са gnuplot_i.hpp и example.cc

Благодаря ви предварително за всяка помощ!

Редактиране 01:

Актуализирах двата кодови файла. Те съдържат някои от моите допълнителни редакции


person TSL_    schedule 22.11.2013    source източник
comment
Можете ли да покажете някакъв код?   -  person Christoph    schedule 22.11.2013
comment
Това не е gnuplot-iostream, а gnuplot-cpp. Опитахте ли да избягате от пространствата? Gnuplot::set_GNUPlotPath("C:/Program\ Files\ (x86)/gnuplot/bin");   -  person Christoph    schedule 22.11.2013
comment
@Christoph: Вече опитах, не се получи. Както споменах, човек работи на _access(cmd) трябва да работи и на _popen(cmd). но не и в моя случай   -  person TSL_    schedule 22.11.2013
comment
Видях, че това е регистрирано като грешка: Празни места в пътят на gnuplot причинява грешка. Но явно това не е поправено. Като заобиколно решение можете да опитате да добавите директорията към вашия PATH и да извикате ony pgnuplot.exe.   -  person Christoph    schedule 22.11.2013
comment
@Christoph: благодаря ти!! Успях да го поправя. Това е добър урок за мен да следвам таблото за съобщения на групата за разработка. Моля, направете го отговор, за да може този въпрос да бъде затворен   -  person TSL_    schedule 03.12.2013


Отговори (1)


Това е известен бъг на gnuplot-cpp, вижте проблема Празните места в пътя на gnuplot причиняват грешка.

Като заобиколно решение можете да добавите директорията gnuplot към вашия PATH и да извикате само pgnuplot.exe.

person Christoph    schedule 03.12.2013