Компиляция программы CO2 Monitor

Модератор: Модераторы разделов

Ответить
Аватара пользователя
DjSpike
Сообщения: 2265
Статус: в поисках истины
ОС: Lubuntu 12.04

Компиляция программы CO2 Monitor

Сообщение DjSpike »

Помогите разобраться что за ошибки выдается при компиляции программы.
https://github.com/dmage/co2mon

Код: Выделить всё

spike@home:~/co2mon-master$ cmake CMakeLists.txt
-- The C compiler identification is GNU 4.8.4
-- The CXX compiler identification is GNU 4.8.4
-- Check for working C compiler: /usr/bin/cc
-- Check for working C compiler: /usr/bin/cc -- works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working CXX compiler: /usr/bin/c++
-- Check for working CXX compiler: /usr/bin/c++ -- works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Found PkgConfig: /usr/bin/pkg-config (found version "0.26")
-- checking for one of the modules 'hidapi-libusb;hidapi'
CMake Error at /usr/share/cmake-2.8/Modules/FindPkgConfig.cmake:367 (message):
  None of the required 'hidapi-libusb;hidapi' found
Call Stack (most recent call first):
  libco2mon/CMakeLists.txt:7 (pkg_search_module)


-- Looking for libusb_strerror
-- Looking for libusb_strerror - not found
-- checking for one of the modules 'hidapi-libusb;hidapi'
CMake Error at /usr/share/cmake-2.8/Modules/FindPkgConfig.cmake:367 (message):
  None of the required 'hidapi-libusb;hidapi' found
Call Stack (most recent call first):
  co2mond/CMakeLists.txt:5 (pkg_search_module)


-- Configuring incomplete, errors occurred!
See also "/home/spike/co2mon-master/CMakeFiles/CMakeOutput.log".
See also "/home/spike/co2mon-master/CMakeFiles/CMakeError.log".
spike@home:~/co2mon-master$


cMakeError.log

Код: Выделить всё

Determining if the libusb_strerror exist failed with the following output:
Change Dir: /home/spike/co2mon-master/CMakeFiles/CMakeTmp

Run Build Command:/usr/bin/make "cmTryCompileExec1130740830/fast"
/usr/bin/make -f CMakeFiles/cmTryCompileExec1130740830.dir/build.make CMakeFiles/cmTryCompileExec1130740830.dir/build
make[1]: Вход в каталог `/home/spike/co2mon-master/CMakeFiles/CMakeTmp'
/usr/bin/cmake -E cmake_progress_report /home/spike/co2mon-master/CMakeFiles/CMakeTmp/CMakeFiles 1
Building C object CMakeFiles/cmTryCompileExec1130740830.dir/CheckSymbolExists.c.o
/usr/bin/cc   -std=c99    -o CMakeFiles/cmTryCompileExec1130740830.dir/CheckSymbolExists.c.o   -c /home/spike/co2mon-master/CMakeFiles/CMakeTmp/CheckSymbolExists.c
/home/spike/co2mon-master/CMakeFiles/CMakeTmp/CheckSymbolExists.c:2:20: fatal error: libusb.h: Нет такого файла или каталога
 #include <libusb.h>
                    ^
compilation terminated.
make[1]: *** [CMakeFiles/cmTryCompileExec1130740830.dir/CheckSymbolExists.c.o] Ошибка 1
make[1]: Выход из каталога `/home/spike/co2mon-master/CMakeFiles/CMakeTmp'
make: *** [cmTryCompileExec1130740830/fast] Ошибка 2

File /home/spike/co2mon-master/CMakeFiles/CMakeTmp/CheckSymbolExists.c:
/* */
#include <libusb.h>

int main(int argc, char** argv)
{
  (void)argv;
#ifndef libusb_strerror
  return ((int*)(&libusb_strerror))[argc];
#else
  (void)argc;
  return 0;
#endif
}
AvReg - По для организации Видеонаблюдения на Linux.
ДЭНСИ:КАССА - Рабочее место кассира под Linux.
Терминальные решения под Linux
Консультации по установке 1с+PostgreSQL+Ubuntu.
Спасибо сказали:
Аватара пользователя
Bizdelnick
Модератор
Сообщения: 20752
Статус: nulla salus bello
ОС: Debian GNU/Linux

Re: Компиляция программы CO2 Monitor

Сообщение Bizdelnick »

DjSpike писал(а):
26.02.2016 22:56
None of the required 'hidapi-libusb;hidapi' found

Нужна библиотека под названием не то hidapi-libusb, не то hidapi. В дебианообразных дистрибутивах должно лечиться установкой пакета libhidapi-dev.

DjSpike писал(а):
26.02.2016 22:56
libusb.h: Нет такого файла или каталога

И, видимо, libusb-1.0-0-dev.
Пишите правильно:
в консоли
вку́пе (с чем-либо)
в общем
вообще
в течение (часа)
новичок
нюанс
по умолчанию
приемлемо
проблема
пробовать
трафик
Спасибо сказали:
Аватара пользователя
Olej
Сообщения: 659
ОС: Fedora, Mint, Debian, QNX
Контактная информация:

Re: Компиляция программы CO2 Monitor

Сообщение Olej »

DjSpike писал(а):
26.02.2016 22:56

Код: Выделить всё

-- checking for one of the modules 'hidapi-libusb;hidapi'
CMake Error at /usr/share/cmake-2.8/Modules/FindPkgConfig.cmake:367 (message):
  None of the required 'hidapi-libusb;hidapi' found

Как мне кажется, здесь речь о модуле ядра:

Код: Выделить всё

olej@nvidia ~ $ lsmod | grep hid
mac_hid                13037  0
hid_generic            12492  0
usbhid                 47070  0
hid                    87604  2 hid_generic,usbhid

Ну и конечно пакет libusb. И это всё вещи взаимосвязанные.
Спасибо сказали:
Аватара пользователя
Bizdelnick
Модератор
Сообщения: 20752
Статус: nulla salus bello
ОС: Debian GNU/Linux

Re: Компиляция программы CO2 Monitor

Сообщение Bizdelnick »

Olej писал(а):
27.02.2016 00:41
Как мне кажется, здесь речь о модуле ядра:

Нет, это библиотека. Да и не проверяется наличие модулей ядра при сборке чего бы то ни было (по крайней мере я ни разу ткого не встречал). А что cmake говорит про «модули» — для него в порядке вещей.

Olej писал(а):
27.02.2016 00:41
Ну и конечно пакет libusb.

Только с оговоркой, что именно версии 1, а не 0 (конкретное имя пакета зависит от дистрибутива).
Пишите правильно:
в консоли
вку́пе (с чем-либо)
в общем
вообще
в течение (часа)
новичок
нюанс
по умолчанию
приемлемо
проблема
пробовать
трафик
Спасибо сказали:
Аватара пользователя
Bizdelnick
Модератор
Сообщения: 20752
Статус: nulla salus bello
ОС: Debian GNU/Linux

Re: Компиляция программы CO2 Monitor

Сообщение Bizdelnick »

Дополнение: при использовании cmake, чтобы не захламлять каталог с исходниками (и избежать перезаписывания файлов в случае криворукости разработчика), лучше сборку производить в подкаталоге, примерно так:
mkdir build
cd build
cmake ..
make
Собственно, в README.md ровно так и написано.
Пишите правильно:
в консоли
вку́пе (с чем-либо)
в общем
вообще
в течение (часа)
новичок
нюанс
по умолчанию
приемлемо
проблема
пробовать
трафик
Спасибо сказали:
Аватара пользователя
DjSpike
Сообщения: 2265
Статус: в поисках истины
ОС: Lubuntu 12.04

Re: Компиляция программы CO2 Monitor

Сообщение DjSpike »

нашел готовые пакеты для ubuntu https://launchpad.net/~ivan1986/+archive/ubuntu/ppa

но теперь другая проблема при запуске программы выдается ошибка:

co2mond
hid_open: error
Unable to open CO2 device
hid_open: error
hid_open: error
hid_open: error
hid_open: error
hid_open: error
hid_open: error
hid_open: error
AvReg - По для организации Видеонаблюдения на Linux.
ДЭНСИ:КАССА - Рабочее место кассира под Linux.
Терминальные решения под Linux
Консультации по установке 1с+PostgreSQL+Ubuntu.
Спасибо сказали:
Аватара пользователя
Bizdelnick
Модератор
Сообщения: 20752
Статус: nulla salus bello
ОС: Debian GNU/Linux

Re: Компиляция программы CO2 Monitor

Сообщение Bizdelnick »

Если запускаете от непривилегированного юзера, всё правильно: у него нет прав на прямой доступ к устройству.
Пишите правильно:
в консоли
вку́пе (с чем-либо)
в общем
вообще
в течение (часа)
новичок
нюанс
по умолчанию
приемлемо
проблема
пробовать
трафик
Спасибо сказали:
Аватара пользователя
DjSpike
Сообщения: 2265
Статус: в поисках истины
ОС: Lubuntu 12.04

Re: Компиляция программы CO2 Monitor

Сообщение DjSpike »

Спасибо. под рутом заработало...
Теперь бы еще какой-нибудь графический интерфей чтобы строил графики...
AvReg - По для организации Видеонаблюдения на Linux.
ДЭНСИ:КАССА - Рабочее место кассира под Linux.
Терминальные решения под Linux
Консультации по установке 1с+PostgreSQL+Ubuntu.
Спасибо сказали:
Аватара пользователя
Bizdelnick
Модератор
Сообщения: 20752
Статус: nulla salus bello
ОС: Debian GNU/Linux

Re: Компиляция программы CO2 Monitor

Сообщение Bizdelnick »

Bizdelnick писал(а):
27.02.2016 11:35
нет прав на прямой доступ к устройству

Впрочем... https://github.com/dmage/co2mon/blob/master...99-co2mon.rules
Пишите правильно:
в консоли
вку́пе (с чем-либо)
в общем
вообще
в течение (часа)
новичок
нюанс
по умолчанию
приемлемо
проблема
пробовать
трафик
Спасибо сказали:
Ответить