Благодаря некоторой помощи мне удалось получить приведенную ниже программу для компиляции и запуска, но, хотя она продолжает пыхтеть, я не вижу ничего нарисованного на экране Пи.
Я не думаю, что это проблема, уникальная для использования кода openvg и ajstarks, так как во время проблема у меня была компиляция тестовой программы, Я попробовал другой способ написания изображений (извините, все, что я помню, это то, что он был низкого уровня и не нуждался во включениях для openvg). Для компиляции потребовалось немного поиска и переписывания, и когда это произошло, произошло то же самое.
Я выстоял некоторое время, но не получил, где. Были некоторые ссылки на какое-то ограничение с Raspberry Pi и X Windows, приводящее к той же самой проблеме. Вы рисуете что-то, но это не отображается. Учитывая, что было несколько комментариев, предполагающих, что openvg работал, я вернулся к этому и (благодаря парню по имени Росс) в конце концов понял, почему я не смог скомпилировать код.
Так что теперь я могу скомпилировать код, который должен успешно выполняться другими, но он ничего не рисует на экране. Я знаю, что код работает — он жует циклы процессора (ну, официальная демонстрация делает, мой меньше, хотя он все еще определенно идет), и код можно завершить с
Другой метод работы с графикой столкнулся с той же проблемой отсутствия вывода изображения, поэтому я думаю, что проблема где-то на моем Pi, но я нарисовал пробел о том, как обращаться к X Windows (или это мог быть X11, если бы Я держал открытые вкладки!) Не желая рисовать вопрос.
Любая помощь с благодарностью, заранее спасибо!
#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
extern "C" {
#include "VG/openvg.h"#include "VG/vgu.h"#include "fontinfo.h"#include "shapes.h"}
using namespace std;
int main (void) {
int width, height;
VGfloat w2, h2, w;
char s[3];
init(&width, &height); // Graphics initialization
w2 = (VGfloat)(width/2);
h2 = (VGfloat)(height/2);
w = (VGfloat)w;
Start(width, height); // Start the picture
Background(0, 0, 0); // Black background
Fill(44, 77, 232, 1); // Big blue marble
Circle(w2, 0, w); // The "world"Fill(255, 255, 255, 1); // White text
TextMid(w2, h2, "hello, world", SerifTypeface, width/10); // Greetings
End(); // End the picture
fgets(s, 2, stdin); // Pause until RETURN]
finish(); // Graphics cleanup
exit(0);
}
Хорошо…
Благодаря удаче я нашел ответ, и он странный. Для меня все равно …
В случае, если кто-то еще усомнился в проблеме, вот (частичное) решение, которое приводит к тому, что вскоре будет опубликован еще один вопрос.
Я пытаюсь запустить клуб программирования в своей школе, и нецелесообразно физически подключать Pi к kb, мышке и монитору, чтобы все они автоматически запускали VNC, а мы подключались к машинам с помощью Ultra-VNC. Программы написаны в общем каталоге, и Eclipse C ++ работает на хосте; поэтому весь вывод программы просматривается через VNC.
Я продолжал пытаться решить проблему, и в какой-то момент подключил клавиатуру и мышь и заметил, что они, казалось, были распознаны (включился лазер, переключился Caps Lock и т. Д.), Но они ничего не сделали, когда переместили / набрали на.
В конце концов, копейка начала болтаться, так как я все больше смущался, почему ни у кого больше не было этой проблемы. Казалось странным, что ни у кого больше не было проблемы, и тогда я начал задаваться вопросом больше о проблеме kb / mouse.
Я попытался подключить выход HDMI к монитору дома (все еще аналоговые d-sub!), И вот, физический кб и мышь работали. Тогда это стало действительно странно!
Как-то у меня одновременно работают 2 рабочих стола. Физическая клавиатура и мышь управляют одним, а VNC — другим. Интересно, что VNC имеет название Pi’s X Desktop Предполагая, что проблема с графикой может быть связана с X, но я не уверен по причине ниже.
Если я запускаю окно терминала на «Физическом» рабочем столе, оно не отображается на рабочем столе «VNC» и наоборот — они кажутся независимыми, хотя это не совсем так.
Когда я запускаю тестовый файл на «Физическом» рабочем столе, он работает нормально и может управляться только с помощью физического КБ. Когда я запускаю его на рабочем столе ‘VNC’, им можно управлять только с помощью VNC kb, но вывод выводится на физический экран.
Я действительно не понимаю этого!
Таким образом, это отвечает на оригинальный вопрос, так как программа работает на Pi.
Не задавать (надеюсь, последний) вопрос о том, как заставить VNC показывать «физический» рабочий стол или как настроить вывод графического объекта на «правильный» рабочий стол.