Jump to content

    

Openocd не собирается

Добрый день. начинаю собирать такая штука

checking whether standard drivers can be built... yes

checking for LIBUSB1... no

configure: WARNING: libusb-1.x not found, trying legacy libusb-0.1 as a fallback; consider installing libusb-1.x instead

checking for LIBUSB0... no

checking for HIDAPI... no

checking for HIDAPI... no

checking for HIDAPI... no

configure: error: libusb-1.x or libusb-0.1 is required for the Segger J-Link JTAG Programmer

Хотя библиотека есть.

vlad@debian:~/openocd-0.9.0$ dpkg -l | grep 'libusb'

ii libgusb2:amd64 0.1.6-5 amd64 GLib wrapper around libusb1

ii libusb-0.1-4:amd64 2:0.1.12-25 amd64 userspace USB programming library

ii libusb-0.1-4:i386 2:0.1.12-25 i386 userspace USB programming library

ii libusb-1.0-0:amd64 2:1.0.19-1 amd64 userspace USB programming library

ii libusb-1.0-0:i386 2:1.0.19-1 i386 userspace USB programming library

ii libusb-1.0-0-dev:amd64 2:1.0.19-1 amd64 userspace USB programming library development files

ii libusb-1.0-0-dev:i386 2:1.0.19-1 i386 userspace USB programming library development files

ii libusb-1.0-doc 2:1.0.19-1 all documentation for userspace USB programming

ii libusb-dev 2:0.1.12-25 i386 userspace USB programming library development files

ii libusbmuxd2:amd64 1.0.9-1 amd64 USB multiplexor daemon for iPhone and iPod Touch devices - library

ii libusbredirhost1:amd64 0.7-1 amd64 Implementing the usb-host (*) side of a usbredir connection (runtime)

ii libusbredirparser1:amd64 0.7-1 amd64 Parser for the usbredir protocol (runtime)

 

ОС Debian 8.8 Openocd пробовал разные версии

Идеи кончились, поиск в основном говорит ставь библиотеку. Но она установлена

Share this post


Link to post
Share on other sites

А пакет с development files тоже установлен? Нужны пакеты libusb-1.0-0 и libusb-1.0-0-dev (версия в вашем дистрибутиве может отличаться).

Share this post


Link to post
Share on other sites
А пакет с development files тоже установлен?
Как проверить или поставить?

 

Share this post


Link to post
Share on other sites

В консоле:

sudo apt-get install libusb-1*

 

Хотя, перечитал Ваше первое сообщение, похоже нужные пакеты и правда уже установлены...

Share this post


Link to post
Share on other sites

Может как то AMD64 пакеты мешают.

 

И если предположить что проблема в версии то configure: WARNING: libusb-1.x not found. 1.x так понимаю версия не актуальна. Ну да ладно не помогает. Библиотеки есть но их нету.

Share this post


Link to post
Share on other sites
ОС Debian 8.8 Openocd пробовал разные версии

Идеи кончились, поиск в основном говорит ставь библиотеку. Но она установлена

а в чем цель самостоятельной сборки и почему не поставить готовый бинарник?

и откуда вы взяли исходники?

беру например отсюда:

http://http.debian.net/debian/pool/main/o/...9.0.orig.tar.gz

разворачиваю под виртуалкой на Ubuntu-14.10-x64

конфигурю

https://pastebin.com/f5miPUDe

собираю без проблем

Edited by Jury093

Share this post


Link to post
Share on other sites

А что у вас в /etc/ld.so.conf

и в файлах, которые в него включены.

 

Находятся ли ваши библиотеки в списке команды:

`gcc -print-prog-name=cc1` -v

 

Скопируйте команды, а если будете набирать, то кавычки специальные с клавиши рядом с <1>.

 

Если нет, то попробуйте или линки создать в одной директории из списка или в Makefile добавьте путь для линковки.

 

Еще команда

cpp -v

Share this post


Link to post
Share on other sites

Openocd брал отсюда https://sourceforge.net/projects/openocd/files/openocd/

Почему сборка нашел несколько статей в них он собирался поэтому пошел этим путем.

 

ld.so.conf у меня нет а вот:

vlad@debian:/etc/ld.so.conf.d$ dir

fakeroot-x86_64-linux-gnu.conf i386-linux-gnu.conf libc.conf x86_64-linux-gnu.conf

 

fakeroot-x86_64-linux-gnu.conf

/usr/lib/x86_64-linux-gnu/libfakeroot

 

i386-linux-gnu.conf

# Multiarch support

/lib/i386-linux-gnu

/usr/lib/i386-linux-gnu

/lib/i586-linux-gnu

/usr/lib/i586-linux-gnu

 

libc.conf

#libc default configuration

/usr/local/lib

 

x86_64-linux-gnu.conf

# Multiarch support

/lib/x86_64-linux-gnu

/usr/lib/x86_64-linux-gnu

 

vlad@debian:/etc/ld.so.conf.d$ `gcc -print-prog-name=cc1` -v

ignoring nonexistent directory "/usr/lib/gcc/x86_64-linux-gnu/4.9/../../../../x86_64-linux-gnu/include"

#include "..." search starts here:

#include <...> search starts here:

/usr/lib/gcc/x86_64-linux-gnu/4.9/include

/usr/local/include

/usr/lib/gcc/x86_64-linux-gnu/4.9/include-fixed

/usr/include

End of search list.

 

Где лежит libusb?

Edited by Vlad_9

Share this post


Link to post
Share on other sites

попробуйте это

* Debian based distros (debian, ubuntu)

* `build-essential`

* `cmake`

* `libusb-1.0` (plus development headers for building, on debian based distros `libusb-1.0.0-dev` package)

Share this post


Link to post
Share on other sites

Я начинающий пользователь, неделю только использую линукс. Если можно то просьба чуть подробнее писать

* Debian based distros (debian, ubuntu)

* `build-essential`

* `cmake`

* `libusb-1.0` (plus development headers for building, on debian based distros `libusb-1.0.0-dev` package)

Share this post


Link to post
Share on other sites
Openocd брал отсюда https://sourceforge.net/projects/openocd/files/openocd/

Почему сборка нашел несколько статей в них он собирался поэтому пошел этим путем.

вытащил оттуда 0.10, конфигурится, собирается..

https://pastebin.com/WRmejGE3

 

возможно вас касается этот варнинг:

 

configure: libusb-1.0 header bug workaround: LIBUSB1_CFLAGS changed to "-isystem /usr/include/libusb-1.0"

где это и что, я без понятия..

 

Где лежит libusb?

в системе, что у меня

jury093@ubuntu64:~/src/openocd/openocd-0.10.0$ find /usr |grep libusb
/usr/include/libusb-1.0
/usr/include/libusb-1.0/libusb.h
/usr/bin/libusb-config
/usr/lib/x86_64-linux-gnu/libusb.a
/usr/lib/x86_64-linux-gnu/libusbmuxd.so.2.1.0
/usr/lib/x86_64-linux-gnu/pkgconfig/libusb-1.0.pc
/usr/lib/x86_64-linux-gnu/pkgconfig/libusb.pc
/usr/lib/x86_64-linux-gnu/libusb-1.0.so
/usr/lib/x86_64-linux-gnu/libusbmuxd.so.2
/usr/lib/x86_64-linux-gnu/libusb.so
/usr/lib/x86_64-linux-gnu/libusb-1.0.a
/usr/lib/x86_64-linux-gnu/libusb-0.1.so.4

и там еще в доках что-то находит

Share this post


Link to post
Share on other sites
возможно вас касается этот варнинг:

 

Код

configure: libusb-1.0 header bug workaround: LIBUSB1_CFLAGS changed to "-isystem /usr/include/libusb-1.0"

где это и что, я без понятия..

По этому пути у меня лежит хедер libusb.

 

а вот так понимаю код который это порождает:

pkg_failed=no

{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for LIBUSB1" >&5

$as_echo_n "checking for LIBUSB1... " >&6; }

 

if test -n "$LIBUSB1_CFLAGS"; then

pkg_cv_LIBUSB1_CFLAGS="$LIBUSB1_CFLAGS"

elif test -n "$PKG_CONFIG"; then

if test -n "$PKG_CONFIG" && \

{ { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libusb-1.0\""; } >&5

($PKG_CONFIG --exists --print-errors "libusb-1.0") 2>&5

ac_status=$?

$as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5

test $ac_status = 0; }; then

pkg_cv_LIBUSB1_CFLAGS=`$PKG_CONFIG --cflags "libusb-1.0" 2>/dev/null`

test "x$?" != "x0" && pkg_failed=yes

else

pkg_failed=yes

fi

else

pkg_failed=untried

 

это моя сборка

checking for LIBUSB1... no

configure: WARNING: libusb-1.x not found, trying legacy libusb-0.1 as a fallback; consider installing libusb-1.x instead

 

это исходник

use_libusb1=no

{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: libusb-1.x not found, trying legacy libusb-0.1 as a f$

$as_echo "$as_me: WARNING: libusb-1.x not found, trying legacy libusb-0.1 as a fallback; consider installing li$

 

 

Edited by Vlad_9

Share this post


Link to post
Share on other sites
По этому пути у меня лежит хедер libusb.

 

а вот так понимаю код который это порождает:

Не смотрите в configure, это производный файл. Смотрите в исходник -- это configure.ac или в configure.in.

 

Судя по configure, проверка libusb делается так:

$PKG_CONFIG --exists --print-errors "libusb-1.0"

Для начала покажите выхлоп

pkg-config --list-all | grep usb

Share this post


Link to post
Share on other sites

vlad@debian:~/openocd-0.10.0$ pkg-config --list-all |grep usb

libusbmuxd libusbmuxd - A library to communicate with the usbmux daemon

libusbredirhost libusbredirhost - usbredirhost library

libusb libusb - USB access library

usbutils usbutils - USB device database

libusb-1.0 libusb-1.0 - C API for USB device access from Linux, Mac OS X, Windows and OpenBSD/NetBSD userspace

libusbredirparser-0.5 libusbredirparser-0.5 - usbredirparser library

 

Если нет, то попробуйте или линки создать в одной директории из списка или в Makefile добавьте путь для линковки.

Может попробовать только как проделать операцию?

Edited by Vlad_9

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this