
我最近買了一台 PhotonFocus 相機,我想將它與烏班圖18.04。我見過這裡為此我需要總線軟體開發工具包6.x。然而,從這裡我只能下載5.1.5版本。我有什麼選擇?
當我嘗試安裝 5.1.5 版本的 .deb 時,我得到以下輸出:
(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) ...
我也嘗試過建立驅動程式:
miguel@miguel-ubuntu:/opt/pleora/ebus_sdk/Ubuntu-x86_64/module$ sudo ./build.sh --kernel=/usr/src/linux-headers-4.15.0-65
但我收到以下錯誤:
*********************************************
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 ***
提前致謝。
答案1
我也遇到了這個問題。 Pleora 在 5 之後的版本中不提供核心支援4.14
。您要么支付版本 6 的費用,要么嘗試自己修補其核心模組。我一直在嘗試修補核心模組,但改動很大,而且還沒有成功。
答案2
很有可能是核心版本問題。我在使用匯流排 sdk 和 Ubuntu 16.04 時遇到了同樣的問題。解決方案是從下載 4.1.0 內核 https://kernel.ubuntu.com/~kernel-ppa/mainline/
下載以下文件:
linux-headers-xxxxxx-generic-xxxxxx_amd64.deb
linux-headers-xxxxxx_all.deb
linux-image-xxxxxx-generic-xxxxxx_amd64.deb
在安裝其他核心之前,請先取得 module-init-tools: sudo apt install -y 模組初始化工具
然後導航到包含下載的核心檔案的資料夾並安裝它們(如果不起作用,只需更改它們的安裝順序):
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
若要引導至新內核,請在引導期間按 Shift 鍵進入 GRUB。在子選單中選擇新核心並繼續引導。
現在再次嘗試安裝 eBUS SDK