QNX RTP Logo QNX Realtime Platform: Русский Портал QNX
Thursday, 20 Nov 2008 13:13
Меню

Проект OpenNET - все о Unix
Главная

 · Начало · Статистика · Поиск ·

  QNX.ORG.RU —› Встраиваемые системы —› Проблема с phfont'ом

Посл.ответ Сообщение


Дата: 5 Сен,  11:36 · Поправил: Aquarius

Доброго времени суток всем.
Проблема в следующем: пытаюсь собрать фотон во встраиваемой системе(QNX6.3.0), но почему-то не запускается сервер шрифтов. На экран выводится следущее:
# ./ph
Starting Photon
=========================
Starting font server
Fatal error - check sloginfo.
Unable to open font DLL: No such file or directory

В slogger пишется:
Aug 24 01:01:56 1 8 0 phfont_init
Aug 24 01:01:56 1 8 0 phfontXX started OK
Aug 24 01:01:56 1 8 0 FatalError
Aug 24 01:01:56 1 8 0 No render engines loaded. io-font
Aug 24 01:01:56 1 8 0 Unable to launch Photon Font Server main.

Делал всё по хелпу (Appendix: Photon in Embedded Systems).
font_repository полностью скопировал с ПК.
В качестве скрипта ph есть вот такой shell код:
#!/bin/sh

PHOTON=/dev/photon
PHOTON_PATH=/usr/photon
PHFONT=/dev/phfont
LD_LIBRARY_PATH=/lib:/lib/dll:/usr/lib:

echo Starting Photon
${PHOTON_PATH}/bin/Photon &
on -w $PHOTON -W 10
echo =========================

echo Starting font server
${PHOTON_PATH}/bin/phfont -d ${PHOTON_PATH}/font_repository &
on -w $PHFONT -W 10
echo =========================

echo Starting graphic driver
${PHOTON_PATH}/bin/io-graphics -g640x480x16 -dldevg-geode.so -I0 -d0x1078,0x104
echo =========================

echo Starting window manager
/usr/photon/bin/pwm &
echo Photon started!!!

Если в начало скрипта добавить export DL_DEBUG=1, то выводится следующее:
# ./ph
Starting Photon
=========================
Starting font server
load_object: attempt load of libfont.so.1
load_elf32: loaded lib at addr b8200000(text) b820a660(data)
dlopen("phfont.so",3586)
load_object: attempt load of phfont.so
load_elf32: loaded lib at addr b820b000(text) b822a480(data)
dlsym(804b060,_btext)=804876c
Library loaded; type 'add-sym phfont.so 804876c' in gdb to load symbols
load_object: attempt load of libfontharnessutils.so.1
load_elf32: loaded lib at addr b822f000(text) b8233860(data)
dlsym(804b060,PHFONT_INTERNAL_API)=b822a520
Fatal error - check sloginfo.
Unable to open font DLL: No such file or directory

Уже и не знаю что делать(((...


Дата: 5 Сен,  11:43

Aquarius
LD_LIBRARY_PATH=/lib:/lib/dll:/usr/lib:

Добавить /lib/dll/font .


Дата: 5 Сен,  11:47

Да и еще если работаете от рута, проверьте содержит ли переменная окружения системы _CS_LIBPATH то, что находится в LD_LIBRARY_PATH.

1) getconf _CS_LIBPATH
2) setconf _CS_LIBPATH_ $LD_LIBRARY_PATH


Дата: 5 Сен,  11:47

Пробовал... Тож самое. Хотя такая директория есть и библиотеки в ней тоже. С правами доступа тоже всё нормально.


Дата: 5 Сен,  11:50

Aquarius
Пробовал... Тож самое

Вначале скрипта поставьте export DL_DEBUG=1 и кидайте сюда полные логи.


Дата: 5 Сен,  11:51

Спасибо огромное!!!
Всё дело было в _CS_LIBPATH


Дата: 5 Сен,  12:07

Aquarius
Всё дело было в _CS_LIBPATH

На всякий случай скажу, что когда LD_LIBRARY_PATH устанавливается в бут-образе, то она после старта образа автоматически попадает в _CS_LIBPATH, поэтому те, кто устанавливал LD_LIBRARY_PATH сразу в образе, те проблем с фонтами не имеют.


Дата: 5 Сен,  12:34

Буду иметь в виду.
Спасибо.


Дата: 6 Ноя,  13:16 · Поправил: ACDC

Aquarius

Всё дело было в _CS_LIBPATH
У меня аналогичная ситуация. Лог который выкидывается при добавлении DL_DEBUG=1 такой же как и описано выше.
Переменная LD_LIBRARY_PATH=/usr/photon/lib:/usr/lib:/usr/photon/dll:/lib:/lib/dll:/lib/dll/font
_CS_LIBPATH содержит ту же строку.
фотон запускается со скрипта. Команда запуска phfont :
phfont -d /usr/photon/font_repository &
Скрипт запускается на том же диске, что и self-hosted система, только с собственного загрузчика (.altboot).
Версия ОС QNX6.3.0 SP2. В чем еще может быть проблема.


Дата: 8 Ноя,  15:24 · Поправил: ACDC

Прошу прощения, фотон запускается с другого диска (с host системы запускается все нормально). Его содержимое:
/bin: ksh, on, pidin, sh, sin, sloginfo, waitfor
/lib: libFF-T2K-fm.so.1, libFF-T2K.so.2, libblcashe.so.2, libc.so, libc.so.2, libfont.so.1, libfontutils.so, libfontutils.so.1, libm.so.2
/lib/dll: devg-vmware.so, phfont.so
/lib/dll/font:FCcore.so,PHFcore.so,ttfFFcore.so
/usr/bin: sleep
/usr/lib: libAp.so.3, libdisputil.so.2, libffb.so.2, libgri.so.2, libph.so.3, libphexlib.so.3, libphrender.so.2
/usr/photon/bin: Photon, devi-hirun, fontsleuth, getconf, io-graphics, phfont, pterm, pwm, setconf
/usr/sbin: slogger


Дата: 4 Сен,  12:19 · Поправил: Fregl

а у меня вообще после загрузки LD_LIBRARY_PATH пустой, getconf _CS_LIBPATH = /proc/boot.
в бутобразе LD_LIB...PATH задаю LD_LIBRARY_PATH=/usr/photon/lib:/usr/lib:/usr/photon/dll:/lib:/lib/dll:/lib/dll/font однако после загрузки она обнуляется...


Дата: 4 Сен,  16:02

вобщем сделал, проще - сделал простенький скрипт, в котором в эту _CS_LIBPATH вручную запихую эти пути, и фотон запускается.


Дата: 5 Сен,  04:03

Это все потому что вы недавно приводили неправильный билд файл. Все эти переменные LD_LIBRARY_PATH и PATH устанавливаются в одной строке перед тем как запустить procnto.
В скрипте http://qnx.org.ru/viewthread5n5429.html вы устанавливаете /proc/boot путь и больше ничего

PATH=/proc/boot procnto

Ну а результат таких действий вы уже знаете какой.


Дата: 5 Сен,  04:09

Вот поиском нашел первый попавшийся билд файл
http://qnx.org.ru/index.php?option=com_minibb&action=vthread&forum=2&topic=442 1
Я думал с тех пор синтаксис поменялся, но по вашим сообщениям вроде бы следует, что синтаксис вы поменяли по своим каким-то соображениям.

You must login to post.

©   2000-2003 Команда проекта QNX.ORG.RU // QNX.ORG.RU Team
Авторы проекта: Дмитрий Алексеев [dmi] и Дмитрий Васильев. Техническое сопровождение проекта: Игорь Сорокин [isorokin]. Информационное сопровождение: Дмитрий Алексеев [dmi]
QNX - зарегистрированная торговая марка QNX Software Systems, Ltd., Canada. Остальные упоминаемые на сайте торговые марки и логотипы являются исключительно собственностью их уважаемых владельцев. Ничьи права не затронуты. Материалы сайта не могут быть скопированы и где-либо использованы в той или иной форме без письменного разрешения разработчиков сайта.
Powered by Mambo Open Source