Installieren von eBUS SDK 5.1.5 auf Ubuntu 18.04

Installieren von eBUS SDK 5.1.5 auf Ubuntu 18.04

Ich habe vor kurzem eine PhotonFocus-Kamera gekauft und möchte sie verwenden mitUbuntu 18.04. Ich habe gesehenHierdas brauche ich dafüreBUS SDK6.x. AbHierIch kann nur die Version 5.1.5 herunterladen. Welche Möglichkeiten habe ich?

Beim Versuch, die .deb-Datei der Version 5.1.5 zu installieren, erhalte ich folgende Ausgabe:

(Reading database ... 468606 files and directories currently installed.)
Preparing to unpack eBUS_SDK_Ubuntu-x86_64-5.1.5-4563.deb ...
Removing /etc/ld.so.conf.d/eBUS_SDK.conf.
Reloading library path.
eBUS daemon is running: stopping the service.
Disabling automatic startup of eBUSd.
Removing /etc/init.d/eBUSd.
The /etc/udev/rules.d/80-drivers-eBUSSDK-28b7.rules rule has been removed.
The /etc/udev/rules.d/80-drivers-eBUSSDK-14fb.rules rule has been removed.
Cannot uninstall ebUniversalProForEthernet: it is not installed.
Unpacking ebus_sdk_ubuntu-x86_64 (5.1.5) over (5.1.5) ...
Setting up ebus_sdk_ubuntu-x86_64 (5.1.5) ...
Creating /etc/ld.so.conf.d/eBUS_SDK.conf.
Reloading library path.
*********************************************
  Build ebUniversalProForEthernet-x86_64.ko
*********************************************

Using output folder /opt/pleora/ebus_sdk/Ubuntu-x86_64/module
Using kernel from folder /lib/modules/4.15.0-65-generic/build
Invoking makefile to build the ebUniversalProForEthernet-x86_64.ko module
make: Entering directory '/opt/pleora/ebus_sdk/Ubuntu-x86_64/module/ebUniversalProForEthernet'
make[1]: Entering directory '/usr/src/linux-headers-4.15.0-65-generic'
  CC [M]  /opt/pleora/ebus_sdk/Ubuntu-x86_64/module/ebUniversalProForEthernet/LFT_Module.o
  CC [M]  /opt/pleora/ebus_sdk/Ubuntu-x86_64/module/ebUniversalProForEthernet/NET_KMLRXPacket.o
  CC [M]  /opt/pleora/ebus_sdk/Ubuntu-x86_64/module/ebUniversalProForEthernet/NET_KMLUtil.o
  CC [M]  /opt/pleora/ebus_sdk/Ubuntu-x86_64/module/ebUniversalProForEthernet/OS_KMLEvent.o
  CC [M]  /opt/pleora/ebus_sdk/Ubuntu-x86_64/module/ebUniversalProForEthernet/OS_KMLGCCCompiler.o
  CC [M]  /opt/pleora/ebus_sdk/Ubuntu-x86_64/module/ebUniversalProForEthernet/OS_KMLInit.o
  CC [M]  /opt/pleora/ebus_sdk/Ubuntu-x86_64/module/ebUniversalProForEthernet/OS_KMLLock.o
  CC [M]  /opt/pleora/ebus_sdk/Ubuntu-x86_64/module/ebUniversalProForEthernet/OS_KMLMemory.o
  CC [M]  /opt/pleora/ebus_sdk/Ubuntu-x86_64/module/ebUniversalProForEthernet/OS_KMLMemoryMap.o
  CC [M]  /opt/pleora/ebus_sdk/Ubuntu-x86_64/module/ebUniversalProForEthernet/OS_KMLNetwork.o
  CC [M]  /opt/pleora/ebus_sdk/Ubuntu-x86_64/module/ebUniversalProForEthernet/OS_KMLString.o
  CC [M]  /opt/pleora/ebus_sdk/Ubuntu-x86_64/module/ebUniversalProForEthernet/OS_KMLSystem.o
  CC [M]  /opt/pleora/ebus_sdk/Ubuntu-x86_64/module/ebUniversalProForEthernet/OS_KMLRWLock.o
  CC [M]  /opt/pleora/ebus_sdk/Ubuntu-x86_64/module/ebUniversalProForEthernet/OS_KMLTime.o
  CC [M]  /opt/pleora/ebus_sdk/Ubuntu-x86_64/module/ebUniversalProForEthernet/OS_KMLTimer.o
/opt/pleora/ebus_sdk/Ubuntu-x86_64/module/ebUniversalProForEthernet/OS_KMLTimer.c: In function ‘OS_TimerCreate’:
/opt/pleora/ebus_sdk/Ubuntu-x86_64/module/ebUniversalProForEthernet/OS_KMLTimer.c:61:5: error: implicit declaration of function ‘init_timer’; did you mean ‘init_timers’? [-Werror=implicit-function-declaration]
     init_timer( lTimer );
     ^~~~~~~~~~
     init_timers
/opt/pleora/ebus_sdk/Ubuntu-x86_64/module/ebUniversalProForEthernet/OS_KMLTimer.c:64:11: error: ‘struct timer_list’ has no member named ‘data’
     lTimer->data = ( unsigned long ) aTimer;
           ^~
/opt/pleora/ebus_sdk/Ubuntu-x86_64/module/ebUniversalProForEthernet/OS_KMLTimer.c:70:26: error: assignment from incompatible pointer type [-Werror=incompatible-pointer-types]
         lTimer->function = OS_TimerPeriodicInternalFunc;
                          ^
/opt/pleora/ebus_sdk/Ubuntu-x86_64/module/ebUniversalProForEthernet/OS_KMLTimer.c:74:26: error: assignment from incompatible pointer type [-Werror=incompatible-pointer-types]
         lTimer->function = OS_TimerInternalFunc;
                          ^
cc1: some warnings being treated as errors
scripts/Makefile.build:330: recipe for target '/opt/pleora/ebus_sdk/Ubuntu-x86_64/module/ebUniversalProForEthernet/OS_KMLTimer.o' failed
make[2]: *** [/opt/pleora/ebus_sdk/Ubuntu-x86_64/module/ebUniversalProForEthernet/OS_KMLTimer.o] Error 1
Makefile:1571: recipe for target '_module_/opt/pleora/ebus_sdk/Ubuntu-x86_64/module/ebUniversalProForEthernet' failed
make[1]: *** [_module_/opt/pleora/ebus_sdk/Ubuntu-x86_64/module/ebUniversalProForEthernet] Error 2
make[1]: Leaving directory '/usr/src/linux-headers-4.15.0-65-generic'
Makefile:28: recipe for target 'all' failed
make: *** [all] Error 2
make: Leaving directory '/opt/pleora/ebus_sdk/Ubuntu-x86_64/module/ebUniversalProForEthernet'
Error: *** Fail to create the module ebUniversalProForEthernet-x86_64.ko ***
Driver build failed, skipping installation.
Setting rp_filter mode to No source validation.
  For more information, read the RHEL knowledge note:
  https://access.redhat.com/knowledge/solutions/53031
Restarting network stack.
Configuring eBUSd for automatic startup.
Starting eBUS daemon.
The /etc/udev/rules.d/80-drivers-eBUSSDK-28b7.rules rule has been created.
The /etc/udev/rules.d/80-drivers-eBUSSDK-14fb.rules rule has been created.

Installation summary:
set_puregev_env script generation      [  OK  ]
Update libraries path                  [  OK  ]
eBUS Universal Pro driver build        [ FAIL ]
eBUS Universal Pro driver installation [ FAIL ]
set_rp_filter.sh configuration         [  OK  ]
eBUS daemon installation               [  OK  ]

Installation complete.
eBUS SDK installed in /opt/pleora/ebus_sdk/Ubuntu-x86_64

Processing triggers for libc-bin (2.27-3ubuntu1) ...

Ich habe auch versucht, den Treiber zu erstellen:

miguel@miguel-ubuntu:/opt/pleora/ebus_sdk/Ubuntu-x86_64/module$ sudo ./build.sh --kernel=/usr/src/linux-headers-4.15.0-65

aber ich erhalte die folgende Fehlermeldung:

*********************************************
  Build ebUniversalProForEthernet-x86_64.ko
*********************************************

Using output folder /opt/pleora/ebus_sdk/Ubuntu-x86_64/module
Using kernel from folder /usr/src/linux-headers-4.15.0-65
Invoking makefile to build the ebUniversalProForEthernet-x86_64.ko module
make: Entering directory '/opt/pleora/ebus_sdk/Ubuntu-x86_64/module/ebUniversalProForEthernet'
make[1]: Entering directory '/usr/src/linux-headers-4.15.0-65'

  ERROR: Kernel configuration is invalid.
         include/generated/autoconf.h or include/config/auto.conf are missing.
         Run 'make oldconfig && make prepare' on kernel src to fix it.


  WARNING: Symbol version dump ./Module.symvers
           is missing; modules will have no dependencies and modversions.

  CC [M]  /opt/pleora/ebus_sdk/Ubuntu-x86_64/module/ebUniversalProForEthernet/LFT_Module.o
In file included from <command-line>:0:0:
././include/linux/kconfig.h:5:10: fatal error: generated/autoconf.h: No such file or directory
 #include <generated/autoconf.h>
          ^~~~~~~~~~~~~~~~~~~~~~
compilation terminated.
scripts/Makefile.build:330: recipe for target '/opt/pleora/ebus_sdk/Ubuntu-x86_64/module/ebUniversalProForEthernet/LFT_Module.o' failed
make[2]: *** [/opt/pleora/ebus_sdk/Ubuntu-x86_64/module/ebUniversalProForEthernet/LFT_Module.o] Error 1
Makefile:1571: recipe for target '_module_/opt/pleora/ebus_sdk/Ubuntu-x86_64/module/ebUniversalProForEthernet' failed
make[1]: *** [_module_/opt/pleora/ebus_sdk/Ubuntu-x86_64/module/ebUniversalProForEthernet] Error 2
make[1]: Leaving directory '/usr/src/linux-headers-4.15.0-65'
Makefile:28: recipe for target 'all' failed
make: *** [all] Error 2
make: Leaving directory '/opt/pleora/ebus_sdk/Ubuntu-x86_64/module/ebUniversalProForEthernet'
Error: *** Fail to create the module ebUniversalProForEthernet-x86_64.ko ***

Dank im Voraus.

Antwort1

Ich stoße auch auf dieses Problem. Pleora hat ab Version 5 keinen Kernel-Support mehr bereitgestellt 4.14. Sie müssen entweder für Version 6 bezahlen oder versuchen, das Kernel-Modul selbst zu patchen. Ich habe versucht, das Kernel-Modul zu patchen, aber es sind ziemlich viele Änderungen und ich war bisher nicht erfolgreich.

Antwort2

Es handelt sich wahrscheinlich um ein Problem mit der Kernelversion. Ich hatte das gleiche Problem mit dem Bus-SDK und Ubuntu 16.04. Die Lösung bestand darin, den 4.1.0-Kernel von herunterzuladen https://kernel.ubuntu.com/~kernel-ppa/mainline/

Laden Sie die folgenden Dateien herunter:

linux-headers-xxxxxx-generic-xxxxxx_amd64.deb

linux-headers-xxxxxx_all.deb

linux-image-xxxxxx-generic-xxxxxx_amd64.deb

Bevor Sie den anderen Kernel installieren, holen Sie sich module-init-tools: sudo apt install -y Modul-Init-Tools

Navigieren Sie anschließend zu dem Ordner mit den heruntergeladenen Kerneldateien und installieren Sie diese (falls dies nicht funktioniert, ändern Sie einfach die Reihenfolge, in der sie installiert werden):

sudo dpkg -i linux-headers-xxxxxx_all.deb

sudo dpkg -i linux-image-xxxxxx-generic-xxxxxx_amd64.deb

sudo dpkg -i linux-headers-xxxxxx-generic-xxxxxx_amd64.deb

Um den neuen Kernel zu starten, drücken Sie während des Startvorgangs die Umschalttaste, um GRUB aufzurufen. Wählen Sie den neuen Kernel in einem Untermenü aus und setzen Sie den Start fort.

Versuchen Sie nun erneut, das eBUS SDK zu installieren

verwandte Informationen