【error】scripts/basic/fixdep: Syntax error: "(" unexpected

本文总结了PCIE驱动安装过程中可能遇到的问题及其解决办法,包括未正确加载驱动、系统配置文件不完整、内核编译错误、权限问题及驱动编译等,并提供了具体的解决方案。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

前言

第一次安装PCIE驱动的时候容易出现各种问题,总结一下下。。

原因分析

一般情况下,直接make的时候会出现问题.

scripts/basic/fixdep: 1: scripts/basic/fixdep: Syntax error: "(" unexpected
scripts/Makefile.build:261: recipe for target '/opt/pcie_v4l2_mono-master/app/uisee-sensor.o' failed
make[3]: *** [/opt/pcie_v4l2_mono-master/app/uisee-sensor.o] Error 2
Makefile:1414: recipe for target '_module_/opt/pcie_v4l2_mono-master/app' failed
make[2]: *** [_module_/opt/pcie_v4l2_mono-master/app] Error 2
make[2]: Leaving directory '/usr/src/linux-headers-4.4.38-tegra'
Makefile:16: recipe for target 'all' failed
make[1]: *** [all] Error 2
make[1]: Leaving directory '/opt/pcie_v4l2_mono-master/app'
Makefile:42: recipe for target 'all' failed
make: *** [all] Error 2

 原因一:

没有在/etc/rc.local文件中加载pcie驱动;

        echo "PCIE card exist, start pcie video driver"
        modprobe videodev
        modprobe videobuf2-core
        modprobe videobuf2-vmalloc
        modprobe videobuf2-dma-contig
        modprobe v4l2-common

等等。。。

原因二:

系统ext配置文件不完整;

解决方法:

在/boot/extconf,修改extconf文件,增加coherent_pool=16M,加在APPEND最后;

nvidia@tegra-ubuntu:/boot/extlinux$ sudo vi extlinux.conf 
 
TIMEOUT 30
DEFAULT primary

MENU TITLE p2771-0000 eMMC boot options

LABEL primary
MENU LABEL primary kernel
LINUX /boot/Image
APPEND ${cbootargs} root=/dev/mmcblk0p1 rw rootwait rootfstype=ext4 coherent_pool=16M

原因三:

内核需要重新编译;

cd /lib/modules/4.4.38-tegra/
cd build
cd scripts/
sudo make scripts

scripts目录出错:

make: *** No rule to make target 'scripts'.  Stop.

注意,也可能是在build而不是scripts目录下进行编译;

build目录编译成功:

nvidia@tegra-ubuntu:/lib/modules/4.4.38-tegra/build$ sudo make scripts
  HOSTCC  scripts/basic/fixdep
  HOSTCC  scripts/basic/bin2c
  HOSTCC  scripts/kconfig/conf.o
  HOSTCC  scripts/kconfig/zconf.tab.o
  HOSTLD  scripts/kconfig/conf
scripts/kconfig/conf  --silentoldconfig Kconfig
#
# configuration written to .config
#
  HOSTCC  scripts/dtc/dtc.o
  HOSTCC  scripts/dtc/flattree.o
  HOSTCC  scripts/dtc/fstree.o
  HOSTCC  scripts/dtc/data.o
  HOSTCC  scripts/dtc/livetree.o
  HOSTCC  scripts/dtc/treesource.o
  HOSTCC  scripts/dtc/srcpos.o
  HOSTCC  scripts/dtc/checks.o
  HOSTCC  scripts/dtc/util.o
  HOSTCC  scripts/dtc/dtc-lexer.lex.o
  HOSTCC  scripts/dtc/dtc-parser.tab.o
  HOSTLD  scripts/dtc/dtc
  CC      scripts/mod/empty.o
  HOSTCC  scripts/mod/mk_elfconfig
  MKELF   scripts/mod/elfconfig.h
  HOSTCC  scripts/mod/modpost.o
  CC      scripts/mod/devicetable-offsets.s
  GEN     scripts/mod/devicetable-offsets.h
  HOSTCC  scripts/mod/file2alias.o
  HOSTCC  scripts/mod/sumversion.o
  HOSTLD  scripts/mod/modpost
  HOSTCC  scripts/kallsyms
  HOSTCC  scripts/pnmtologo
  HOSTCC  scripts/conmakehash
  HOSTCC  scripts/sortextable

 

原因四:
驱动文件的权限问题;

sudo chown nvidia:nvidia pcie_v4l2_mono-master/ -R

原因五:

编译驱动;

cd /opt/pcie_***
sudo make clean
make #( no sudo)
sudo make insert

参考

1.编译驱动内核

转载于:https://www.cnblogs.com/happyamyhope/p/9430225.html

k1@k1:~/linux/IMAX6ULL/NXP_uboot/uboot-imx-rel_imx_4.1.15_2.1.0_ga$ ./mx6ull_alientek_emmc.sh CLEAN scripts/basic CLEAN scripts/kconfig CLEAN include/config include/generated HOSTCC scripts/basic/fixdep HOSTCC scripts/kconfig/conf.o SHIPPED scripts/kconfig/zconf.tab.c SHIPPED scripts/kconfig/zconf.lex.c SHIPPED scripts/kconfig/zconf.hash.c HOSTCC scripts/kconfig/zconf.tab.o HOSTLD scripts/kconfig/conf board/freescale/mx6ull_alientek_emmc/Kconfig:2: syntax error arch/arm/cpu/armv7/mx6/Kconfig:3: missing end statement for this entry arch/arm/Kconfig:1: missing end statement for this entry board/freescale/mx6ull_alientek_emmc/Kconfig:1: invalid statement board/freescale/mx6ull_alientek_emmc/Kconfig:15: unexpected end statement arch/arm/cpu/armv7/mx6/Kconfig:287: unexpected end statement arch/arm/Kconfig:862: unexpected end statement scripts/kconfig/Makefile:114: recipe for target 'mx6ull_alientek_emmc_defconfig' failed make[1]: *** [mx6ull_alientek_emmc_defconfig] Error 1 Makefile:480: recipe for target 'mx6ull_alientek_emmc_defconfig' failed make: *** [mx6ull_alientek_emmc_defconfig] Error 2 make -f ./Makefile silentoldconfig make -f ./scripts/Makefile.build obj=scripts/basic rm -f .tmp_quiet_recordmcount make -f ./scripts/Makefile.build obj=scripts/kconfig silentoldconfig mkdir -p include/config include/generated scripts/kconfig/conf --silentoldconfig Kconfig board/freescale/mx6ull_alientek_emmc/Kconfig:2: syntax error arch/arm/cpu/armv7/mx6/Kconfig:3: missing end statement for this entry arch/arm/Kconfig:1: missing end statement for this entry board/freescale/mx6ull_alientek_emmc/Kconfig:1: invalid statement board/freescale/mx6ull_alientek_emmc/Kconfig:15: unexpected end statement arch/arm/cpu/armv7/mx6/Kconfig:287: unexpected end statement arch/arm/Kconfig:862: unexpected end statement scripts/kconfig/Makefile:46: recipe for target 'silentoldconfig' failed make[2]: *** [silentoldconfig] Error 1 Makefile:480: recipe for target 'silentoldconfig' failed make[1]: *** [silentoldconfig] Error 2 make: *** No rule to make target 'include/config/auto.conf', needed by 'include/config/uboot.release'。 停止。 k1@k1:~/linux/IMAX6ULL/NXP_uboot/uboot-imx-rel_imx_4.1.15_2.1.0_ga$
最新发布
08-16
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值