LINUX.ORG.RU

Сообщения bigov

 

Файлы СТАНДАРТНЫХ библиотек Си

Форум — Development

Здравствуйте!

Знакомлюсь с языком Си (GNU, ANSI ...) - типа «от азов». Изучил К&R, покурил разные маны и туторы. Нигде не встретил ответа на простой вопрос: как в конкретной операционной системе при сборке проекта и подключении стандартных Си библиотек находить названия файлов для линковки?

Например: в исходнике пишем инклуд на <math.h> а при сборке указываем библиотеку " -lm"! Почему не " -lmath"? Я конечно по форумам нашел, что оказывается файл библиотеки - «m.so»! А где это найти в системе? Где для хедеров стандартных библиотек «секретные» списки названий файлов для сборки?

Может я не так у Гугля спрашиваю, а то он меня все в разные мануалы тычет, где ничего про это не сказано.

==== ЕСТЬ ОТВЕТ ====

Для систем на платформе Linux:

1. Для стандартной библиотеки ищем в мануале по имени функции:

$ man sin | grep Link
       Link with -lm.
$ man cosf | grep Link
       Link with -lm.

2. Для расширений можно посмотреть командой:

$ pkg-config --cflags --libs freeglut
-lglut

В MS-Windows при использовании MinGW аналогично:

f:\cDev>pkg-config --cflags --libs libpng
-If:/cDev/mingw64/i686/include/libpng14  -Lf:/cDev/mingw64/i686/lib -lpng14

 

bigov
()

как работает bash?

Форум — General

Здравствуйте, кто знает, как еще bash ищет исполняемый файл команды кроме алисов и путей?

Суть проблемы - не запускается команда, присутствующая в каталоге, прописанном в $PATH. Баш упорно пытается запустить ее только из /usr/bin/ и «не желает замечать» в других каталогах. Вот пример:

$ nim
bash: /usr/bin/nim: Нет такого файла или каталога
$ nimfuck
bash: nimfuck: команда не найдена
$ alias -p
alias :q='exit'
alias ls='ls --color=auto'
alias p2='source /home/ib/.pyenv/p2/bin/activate'
alias p3='source /home/ib/.pyenv/p3/bin/activate'
$ echo $PATH
/usr/local/sbin:/usr/local/bin:/usr/bin:/usr/lib/jvm/default/bin:/home/ib/bin
$ ls /home/ib/bin/nim
/home/ib/bin/nim
$
$ /home/ib/bin/nim -v
Nim Compiler Version 0.11.3 (2015-06-16) [Linux: amd64]
Copyright (c) 2006-2015 by Andreas Rumpf

git hash: 116a60caebec32e4e20e9e4673ff90d2ae5c72f8
active boot switches: -d:release
$ nim -v
bash: /usr/bin/nim: Нет такого файла или каталога
$ 

Пытаюсь запустить скомпилированный из исходников nim, расположенный в домашней директории, а Баш (после удаления системного пакета nim) ищет его только на старом месте.

Конечно, можно через sudo прибить софтлинк в /usr/bin/nim. Но хочется понять суть.

 

bigov
()

Трехмерный объект в pyglet

Форум — Development

Здравствуйте! Взываю к спецам по OpenGL. В частности к тем, у кого имеется опыт общения с pyglet - поможите сирым! Уже неделю курю маны по OpenGL (тяжко, не сишник я совсем), перечитал всю доку по pyglet - не могу устранить дефекты при рисовании простых кубиков с двумерной текстурой на гранях в пакетном режиме отрисовки: http://i57.fastpic.ru/big/2015/0327/91/feb1cb5fccfa89aec364c8cb3b540891.png

Проблема в том, что у меня изображения дальних от наблюдателя граней фигуры часто перекрывают изображения граней, расположенных ближе к наблюдателю. Получается сюрреальная смесь четырехугольников, а не объемный куб. Я чую, что дело тут в очередности прорисовки граней, но не могу найти описания техники. И как быть, если наблюдатель перемещается на противоположную сторону объекта - пересчитывать весь объект при смещении камеры?

Может у кого есть ссылка в доку или хотя бы краткое изложение пути решения? А то в доке на pyglet этот вопрос не освещен вообще, а с первоисточником по OpenGL у меня пока напряженные отношения, а хочется все и сразу :-)

 ,

bigov
()

Кривое отображение приложений Gnome в среде Xfce4

Форум — Desktop

Привет Всем! Уважаемые гуру по GUI, посоветуйте, где поковырять тему отображения окон приложений Gnome в среде Xfce4? Я использую Xfce 4.10 в составе Arch Linux. В окнах приложений Liferea и Gwget строка меню слепилась с сплошную длинную строку букв без пробелов между пунктами меню, выпадающие элементы меню тоже не имеют элементов оформления текущей темы и выглядят слишком сжато. Скрин: http://www.zimagez.com/zimage/-19012015-093941.php

Хотя типично гномовый Sylpheed рисует окно штатно: http://en.zimagez.com/zimage/sylpheed.php

 , ,

bigov
()

RSS подписка на новые темы