Firefly开源社区

标题: 如何访问底板上特定规格的GPIO接口 [打印本页]

作者: music1913    时间: 2022-6-7 10:35
标题: 如何访问底板上特定规格的GPIO接口
本帖最后由 music1913 于 2022-6-20 12:44 编辑

我的需求是通过JD4主板上的 GPIO 接口,接入4路 3.3V (来自4个外部传感器)电平信号。
即我有4个外部传感器,它们共 输入/输出 4路3.3V 电平信号,所以需要板子提供3.3V 电平信号的 GPIO 接口4个。
查看了文档,搜索 GPIO 关键字,好像只能看到以下几个相关信息:






所标注的3个接口中,一个注明电平是3.3V,一个注明电平为1.8V,一个为


请问:
如何增加我所需要规格的GPIO接口数?
如何在 Python 代码中引用到这些接口?





tchip_askquestions

none.zip

154 Bytes, 下载次数: 2, 下载积分: 灯泡 -1 , 经验 -1


作者: music1913    时间: 2022-6-24 15:23
请问有人能帮忙看一下吗
作者: 799959745    时间: 2022-7-6 16:15
1、GPIO2_C0和GPIO0_D6是输出和输入3.3V。另外两个GPIO的话就需要你自己从底板里面引出来了。
2、python 调用就是普通的 gpio 口调用方式

作者: new_per    时间: 2022-7-6 21:35
799959745 发表于 2022-7-6 16:15
1、GPIO2_C0和GPIO0_D6是输出和输入3.3V。另外两个GPIO的话就需要你自己从底板里面引出来了。
2、python  ...

那么在调用GPIO2_C0和GPIO0_D6时针脚号pin是多少呢
作者: 799959745    时间: 2022-7-7 14:23
new_per 发表于 2022-7-6 21:35
那么在调用GPIO2_C0和GPIO0_D6时针脚号pin是多少呢

你可以看下官网的维基教程:https://wiki.t-firefly.com/iCore-3568JQ/driver_gpio.html
这些都是通用的
作者: new_per    时间: 2022-7-7 23:45
799959745 发表于 2022-7-7 14:23
你可以看下官网的维基教程:https://wiki.t-firefly.com/iCore-3568JQ/driver_gpio.html
这些都是通用的

谢谢,可以计算得到pin number, GPIO2_C0 pin 80可以正常使用,但是GPIO0_D6 pin 30不能使用,通过echo 30 > /sys/class/gpio/export导出时报错:-bash: echo: write error: Device or resource busy,
是因为这个口已经被使用了吗?

gpioerror.png (26.25 KB, 下载次数: 110)

gpioerror.png

作者: new_per    时间: 2022-7-8 12:47
799959745 发表于 2022-7-6 16:15
1、GPIO2_C0和GPIO0_D6是输出和输入3.3V。另外两个GPIO的话就需要你自己从底板里面引出来了。
2、python  ...

为什么一块板子上只有这么少的gpio口是可用的呢?有没有哪些针脚可能是共用的呢?可以作为gpio口也可以作为其他功能针脚呢?
作者: 799959745    时间: 2022-7-8 15:06
本帖最后由 799959745 于 2022-7-8 15:27 编辑
new_per 发表于 2022-7-7 23:45
谢谢,可以计算得到pin number, GPIO2_C0 pin 80可以正常使用,但是GPIO0_D6 pin 30不能使用,通过echo 3 ...

1、规格书标错了,GPIO0_D6 应该改成 GPIO1_A1 。
2、GPIO口是很多的,但是需要配合底板的功能使用。一般都是买核心板然后根据需求自己制作底板的。如果不想自己制作底板,只能根据规格书将你使用到的GPIO引出来了
作者: music1913    时间: 2022-7-8 15:24
799959745 发表于 2022-7-8 15:06
1、规格书标错了,GPIO0_D6 应该改成 GPIO1_A0 。
2、GPIO口是很多的,但是需要配合底板的功能使用。一 ...

多谢回复。

关于问题2:
直觉上,一块底板只有2个默认引出的GPIO,是不是也太少了呢? 请问有什么临时的办法,让我不用自己去做一块底板,而用比较简单的方法额外让我现在可以再引出2(共4)个GPIO吗?
作者: 799959745    时间: 2022-7-8 16:41
你可以使用串口4当作GPIO普通管脚使用。分别是:(UART4_TX)GPIO2_A6 和 (UART4_RX)GPIO2_A7。需要在设备树rv1126-firefly-rk809.dtsi把uart4的配置关掉:
  1. /*
  2. &uart4 {
  3.         pinctrl-0 = <&uart4m1_xfer>;
  4.         status = "okay";
  5. };
  6. */
复制代码

作者: music1913    时间: 2022-7-8 17:03
本帖最后由 music1913 于 2022-7-8 17:04 编辑
799959745 发表于 2022-7-8 16:41
你可以使用串口4当作GPIO普通管脚使用。分别是:(UART4_TX)GPIO2_A6 和 (UART4_RX)GPIO2_A7。需要在设 ...
因为Linux了解较少,请问能帮忙提供一下编辑和应用 Rv1126 Linux Device Tree 的步骤或者文档吗?我甚至没有找到 rv1126-firefly-rk809.dtsi 文件的位置。
作者: 799959745    时间: 2022-7-9 09:27
你可以用 fine -name xxx 搜索一下。具体路径在:sdk/kernel/arch/arm/boot/dts/rv1126-firefly-jd4-BE-45.dtsi
作者: new_per    时间: 2022-7-9 16:47
799959745 发表于 2022-7-8 15:06
1、规格书标错了,GPIO0_D6 应该改成 GPIO1_A1 。
2、GPIO口是很多的,但是需要配合底板的功能使用。一 ...

1, 改成GPIO1_A1后算出pin 为33, 可以通过echo 33 > /sys/class/gpio/export成功导出了,但是没能正确从这个引脚读到值。
我是这样做的:
在图中1处的引脚出使用5v跟接地,接到我的传感器上,在同一处的gpio(pin80)口上可以正确读到传感器触发后的值
然后保持传感器接入电源不变,把输出信号接到 pin33(图中2处),不能正确读到值了
问题:
图中1处 2处所用的GND 是相同的吗?我可以这样把用图中1处的作为传感器输入电源,把传感器输出接到图中2处吗?

1.png (474.74 KB, 下载次数: 59)

1.png

作者: 799959745    时间: 2022-7-9 17:00
你先确定管脚是否可以设置高低电平?不能的话要进行:echo out > direction 来设置 GPIO 为输出模式。然后再echo 1 > value设置高电平。万用表去量,看看是不是有电平变化。
作者: 799959745    时间: 2022-7-9 17:01
new_per 发表于 2022-7-9 16:47
1, 改成GPIO1_A1后算出pin 为33, 可以通过echo 33 > /sys/class/gpio/export成功导出了,但是没能正确从 ...

如果有电平变化的话,那就没问题了,剩下就是你的软硬件调试了。
作者: music1913    时间: 2022-7-11 12:07
本帖最后由 music1913 于 2022-7-11 12:09 编辑
799959745 发表于 2022-7-9 09:27
你可以用 fine -name xxx 搜索一下。具体路径在:sdk/kernel/arch/arm/boot/dts/rv1126-firefly-jd4-BE-45. ...
  1. firefly@firefly:/$ sudo find -name rv1126-firefly-jd4-BE-45.dtsi
  2. firefly@firefly:/$
复制代码

我用上述命令并未搜索到相应的文件,同样采用统配符:


  1. firefly@firefly:/$ sudo find -name *.dtsi
  2. firefly@firefly:/$
复制代码

也没有搜索到任何内容。

这是我rv1126板子上的根目录结构,似乎并没有 sdk/kernel/arch/arm/boot/dts/

  1. firefly@firefly:/$ ls /
  2. bin   dev  home  lost+found  mnt  proc  root-ro  sbin  sys  userdata  var
  3. boot  etc  lib   media       opt  root  run      srv   tmp  usr       vendor
复制代码

我使用的是firefly 官方的 debian 10 系统,请帮忙再确认一下文件路径。
作者: 799959745    时间: 2022-7-11 14:50
本帖最后由 799959745 于 2022-7-11 14:55 编辑
music1913 发表于 2022-7-11 12:07
我用上述命令并未搜索到相应的文件,同样采用统配符:

你有下载firefly官方的RV1126 SDK开发包吗?不是在板子上跑find命令,是在PC电脑上跑。使用find命令查找的SDK文件在哪里。
你先看下维基教程和相关的开发流程吧。内核需要在PC上面编译烧录进板子,不是直接在板子上编译的。
作者: music1913    时间: 2022-7-12 13:10
本帖最后由 music1913 于 2022-7-13 13:16 编辑
799959745 发表于 2022-7-11 14:50
你有下载firefly官方的RV1126 SDK开发包吗?不是在板子上跑find命令,是在PC电脑上跑。使用find命令查找 ...

谢谢回复。
我已经在 Ubuntu 20.04.4 (x64) PC机上安装了SDK: rv1126_rv1109_linux_release_20211022,在修改了文件 ./kernel/arch/arm/boot/dts/rv1126-firefly-rk809.dtsi 到你提供的示例内容:

  1. /*
  2. &uart4 {
  3.         pinctrl-0 = <&uart4m1_xfer>;
  4.         status = "okay";
  5. };
  6. */
复制代码
后,再运行:

  1. ./build.sh device/rockchip/rv1126_rv1109/aio-rv1126-jd4-BE-45.mk
复制代码



另外,在安装编译环境的时候,也有一些错误,请见以下,不清楚是否和上述编译错误有关与否:

  1. sudo apt-get install repo git-core gitk git-gui gcc-arm-linux-gnueabihf u-boot-tools device-tree-compiler gcc-aarch64-linux-gnu mtools parted libudev-devlibusb-1.0-0-dev python-linaro-image-tools linaro-image-tools autoconf autotools-dev libsigsegv2 m4 intltool libdrm-dev curl sed make binutils build-essential gccg++ bash patch gzip gawk bzip2 perl tar cpio python unzip rsync file bc wgetlibncurses5 libqt4-dev libglib2.0-dev libgtk2.0-dev libglade2-dev cvs gitmercurial rsync openssh-client subversion asciidoc w3m dblatex graphviz python-matplotlib libc6:i386 libssl-dev expect fakeroot cmake flex bison liblz4-toollibtool keychain
  2. [sudo] password for shawn:
  3. Reading package lists... Done
  4. Building dependency tree
  5. Reading state information... Done
  6. Note, selecting 'git' instead of 'git-core'
  7. Note, selecting 'gccgo-10-multilib' for regex 'gccg+'
  8. Note, selecting 'gccgo-7-multilib' for regex 'gccg+'
  9. Note, selecting 'gccgo-8-multilib-x86-64-linux-gnux32' for regex 'gccg+'
  10. Note, selecting 'gccgo-10-multilib-mipsisa32r6-linux-gnu' for regex 'gccg+'
  11. Note, selecting 'gccgo-multilib-mipsisa32r6el-linux-gnu' for regex 'gccg+'
  12. Note, selecting 'gccgo-10-multilib-mips-linux-gnu' for regex 'gccg+'
  13. Note, selecting 'gccgo-riscv64-linux-gnu' for regex 'gccg+'
  14. Note, selecting 'gccgo-7-doc' for regex 'gccg+'
  15. Note, selecting 'gccgo-10-powerpc64-linux-gnu' for regex 'gccg+'
  16. Note, selecting 'gccgo-8-multilib-sparc64-linux-gnu' for regex 'gccg+'
  17. Note, selecting 'gccgo-aarch64-linux-gnu' for regex 'gccg+'
  18. Note, selecting 'gccgo-9-multilib' for regex 'gccg+'
  19. Note, selecting 'gccgo-9-mipsisa32r6el-linux-gnu' for regex 'gccg+'
  20. Note, selecting 'gccgo-8-multilib-i686-linux-gnu' for regex 'gccg+'
  21. Note, selecting 'gccgo-9-mipsisa64r6el-linux-gnuabi64' for regex 'gccg+'
  22. Note, selecting 'gccgo-9-s390x-linux-gnu' for regex 'gccg+'
  23. Note, selecting 'gccgo-8-arm-linux-gnueabihf' for regex 'gccg+'
  24. Note, selecting 'gccgo-8-powerpc-linux-gnu' for regex 'gccg+'
  25. Note, selecting 'gccgo-10-i686-linux-gnu' for regex 'gccg+'
  26. Note, selecting 'gccgo-10-multilib-powerpc64-linux-gnu' for regex 'gccg+'
  27. Note, selecting 'gccgo-10-mips-linux-gnu' for regex 'gccg+'
  28. Note, selecting 'gccgo-mipsel-linux-gnu' for regex 'gccg+'
  29. Note, selecting 'gccgo-mips64el-linux-gnuabi64' for regex 'gccg+'
  30. Note, selecting 'gccgo-9-powerpc-linux-gnu' for regex 'gccg+'
  31. Note, selecting 'gccgo-9-mipsisa64r6-linux-gnuabi64' for regex 'gccg+'
  32. Note, selecting 'gccgo-s390x-linux-gnu' for regex 'gccg+'
  33. Note, selecting 'gccgo-8-x86-64-linux-gnux32' for regex 'gccg+'
  34. Note, selecting 'gccgo-8-multilib-powerpc64-linux-gnu' for regex 'gccg+'
  35. Note, selecting 'gccgo-9-multilib-x86-64-linux-gnux32' for regex 'gccg+'
  36. Note, selecting 'gccgo-8-i686-linux-gnu' for regex 'gccg+'
  37. Note, selecting 'gccgo-9-multilib-mipsisa32r6el-linux-gnu' for regex 'gccg+'
  38. Note, selecting 'gccgo-multilib-mipsisa32r6-linux-gnu' for regex 'gccg+'
  39. Note, selecting 'gccgo-10-multilib-powerpc-linux-gnu' for regex 'gccg+'
  40. Note, selecting 'gccgo-10-multilib-mips64-linux-gnuabi64' for regex 'gccg+'
  41. Note, selecting 'gccgo-10-mips64-linux-gnuabi64' for regex 'gccg+'
  42. Note, selecting 'gccgo-10-mipsisa32r6-linux-gnu' for regex 'gccg+'
  43. Note, selecting 'gccgo-10-sparc64-linux-gnu' for regex 'gccg+'
  44. Note, selecting 'gccgo-8-multilib-s390x-linux-gnu' for regex 'gccg+'
  45. Note, selecting 'gccgo-i686-linux-gnu' for regex 'gccg+'
  46. Note, selecting 'gccgo-mips-linux-gnu' for regex 'gccg+'
  47. Note, selecting 'gccgo-multilib-sparc64-linux-gnu' for regex 'gccg+'
  48. Note, selecting 'gccgo-10-powerpc64le-linux-gnu' for regex 'gccg+'
  49. Note, selecting 'gccgo-8-sparc64-linux-gnu' for regex 'gccg+'
  50. Note, selecting 'gccgo-10-mips64el-linux-gnuabi64' for regex 'gccg+'
  51. Note, selecting 'gccgo-8-alpha-linux-gnu' for regex 'gccg+'
  52. Note, selecting 'gccgo-10-multilib-mipsisa64r6-linux-gnuabi64' for regex 'gccg+'
  53. Note, selecting 'gccgo-9-multilib-powerpc64-linux-gnu' for regex 'gccg+'
  54. Note, selecting 'gccgo-10-mipsel-linux-gnu' for regex 'gccg+'
  55. Note, selecting 'gccgo-10-arm-linux-gnueabi' for regex 'gccg+'
  56. Note, selecting 'gccgo-arm-linux-gnueabihf' for regex 'gccg+'
  57. Note, selecting 'gccgo-multilib-mips64-linux-gnuabi64' for regex 'gccg+'
  58. Note, selecting 'gccgo-10-aarch64-linux-gnu' for regex 'gccg+'
  59. Note, selecting 'gccgo-9-multilib-mipsisa64r6-linux-gnuabi64' for regex 'gccg+'
  60. Note, selecting 'gccgo-multilib' for regex 'gccg+'
  61. Note, selecting 'gccgo-10-multilib-sparc64-linux-gnu' for regex 'gccg+'
  62. Note, selecting 'gccgo-mipsisa64r6-linux-gnuabi64' for regex 'gccg+'
  63. Note, selecting 'gccgo-10-alpha-linux-gnu' for regex 'gccg+'
  64. Note, selecting 'gccgo-mipsisa32r6el-linux-gnu' for regex 'gccg+'
  65. Note, selecting 'gccgo-10' for regex 'gccg+'
  66. Note, selecting 'gccgo-10-mipsisa32r6el-linux-gnu' for regex 'gccg+'
  67. Note, selecting 'gccgo-x86-64-linux-gnux32' for regex 'gccg+'
  68. Note, selecting 'gccgo-9-mipsel-linux-gnu' for regex 'gccg+'
  69. Note, selecting 'gccgo-powerpc-linux-gnu' for regex 'gccg+'
  70. Note, selecting 'gccgo-10-multilib-mipsel-linux-gnu' for regex 'gccg+'
  71. Note, selecting 'gccgo-9-multilib-mipsel-linux-gnu' for regex 'gccg+'
  72. Note, selecting 'gccgo-go' for regex 'gccg+'
  73. Note, selecting 'gccgo-10-multilib-mips64el-linux-gnuabi64' for regex 'gccg+'
  74. Note, selecting 'gccgo-8-powerpc64-linux-gnu' for regex 'gccg+'
  75. Note, selecting 'gccgo-9-arm-linux-gnueabihf' for regex 'gccg+'
  76. Note, selecting 'gccgo-9-sparc64-linux-gnu' for regex 'gccg+'
  77. Note, selecting 'gccgo-8-doc' for regex 'gccg+'
  78. Note, selecting 'gccgo-8-multilib' for regex 'gccg+'
  79. Note, selecting 'gccgo-mipsisa32r6-linux-gnu' for regex 'gccg+'
  80. Note, selecting 'gccgo-9-multilib-mipsisa64r6el-linux-gnuabi64' for regex 'gccg+'
  81. Note, selecting 'gccgo-9-multilib-powerpc-linux-gnu' for regex 'gccg+'
  82. Note, selecting 'gccgo-9-i686-linux-gnu' for regex 'gccg+'
  83. Note, selecting 'gccgo-9-x86-64-linux-gnux32' for regex 'gccg+'
  84. Note, selecting 'gccgo-9-mips-linux-gnu' for regex 'gccg+'
  85. Note, selecting 'gccgo-10-riscv64-linux-gnu' for regex 'gccg+'
  86. Note, selecting 'gccgo-powerpc64le-linux-gnu' for regex 'gccg+'
  87. Note, selecting 'gccgo-8-s390x-linux-gnu' for regex 'gccg+'
  88. Note, selecting 'gccgo-powerpc64-linux-gnu' for regex 'gccg+'
  89. Note, selecting 'gccgo-9-alpha-linux-gnu' for regex 'gccg+'
  90. Note, selecting 'gccgo-9-multilib-i686-linux-gnu' for regex 'gccg+'
  91. Note, selecting 'gccgo-8-arm-linux-gnueabi' for regex 'gccg+'
  92. Note, selecting 'gccgo-8-powerpc64le-linux-gnu' for regex 'gccg+'
  93. Note, selecting 'gccgo-9-multilib-mips-linux-gnu' for regex 'gccg+'
  94. Note, selecting 'gccgo-9-mipsisa32r6-linux-gnu' for regex 'gccg+'
  95. Note, selecting 'gccgo-multilib-x86-64-linux-gnux32' for regex 'gccg+'
  96. Note, selecting 'gccgo' for regex 'gccg+'
  97. Note, selecting 'gccgo-10-multilib-mipsisa64r6el-linux-gnuabi64' for regex 'gccg+'
  98. Note, selecting 'gccgo-9-arm-linux-gnueabi' for regex 'gccg+'
  99. Note, selecting 'gccgo-8-riscv64-linux-gnu' for regex 'gccg+'
  100. Note, selecting 'gccgo-alpha-linux-gnu' for regex 'gccg+'
  101. Note, selecting 'gccgo-multilib-mipsisa64r6-linux-gnuabi64' for regex 'gccg+'
  102. Note, selecting 'gccgo-8-aarch64-linux-gnu' for regex 'gccg+'
  103. Note, selecting 'gccgo-sparc64-linux-gnu' for regex 'gccg+'
  104. Note, selecting 'gccgo-9-multilib-mipsisa32r6-linux-gnu' for regex 'gccg+'
  105. Note, selecting 'gccgo-mipsisa64r6el-linux-gnuabi64' for regex 'gccg+'
  106. Note, selecting 'gccgo-mips64-linux-gnuabi64' for regex 'gccg+'
  107. Note, selecting 'gccgo-9-powerpc64-linux-gnu' for regex 'gccg+'
  108. Note, selecting 'gccgo-10-multilib-x86-64-linux-gnux32' for regex 'gccg+'
  109. Note, selecting 'gccgo-10-doc' for regex 'gccg+'
  110. Note, selecting 'gccgo-10-mipsisa64r6-linux-gnuabi64' for regex 'gccg+'
  111. Note, selecting 'gccgo-9-multilib-s390x-linux-gnu' for regex 'gccg+'
  112. Note, selecting 'gccgo-5' for regex 'gccg+'
  113. Note, selecting 'gccgo-6' for regex 'gccg+'
  114. Note, selecting 'gccgo-7' for regex 'gccg+'
  115. Note, selecting 'gccgo-8' for regex 'gccg+'
  116. Note, selecting 'gccgo-9' for regex 'gccg+'
  117. Note, selecting 'gccgo-multilib-powerpc64-linux-gnu' for regex 'gccg+'
  118. Note, selecting 'gccgo-arm-linux-gnueabi' for regex 'gccg+'
  119. Note, selecting 'gccgo-10-arm-linux-gnueabihf' for regex 'gccg+'
  120. Note, selecting 'gccgo-multilib-i686-linux-gnu' for regex 'gccg+'
  121. Note, selecting 'gccgo-10-multilib-mipsisa32r6el-linux-gnu' for regex 'gccg+'
  122. Note, selecting 'gccgo-10-multilib-i686-linux-gnu' for regex 'gccg+'
  123. Note, selecting 'gccgo-10-mipsisa64r6el-linux-gnuabi64' for regex 'gccg+'
  124. Note, selecting 'gccgo-multilib-mips-linux-gnu' for regex 'gccg+'
  125. Note, selecting 'gccgo-9-mips64-linux-gnuabi64' for regex 'gccg+'
  126. Note, selecting 'gccgo-10-multilib-s390x-linux-gnu' for regex 'gccg+'
  127. Note, selecting 'gccgo-10-powerpc-linux-gnu' for regex 'gccg+'
  128. Note, selecting 'gccgo-10-sh4-linux-gnu' for regex 'gccg+'
  129. Note, selecting 'gccgo-8-multilib-powerpc-linux-gnu' for regex 'gccg+'
  130. Note, selecting 'gccgo-multilib-s390x-linux-gnu' for regex 'gccg+'
  131. Note, selecting 'gccgo-9-multilib-mips64el-linux-gnuabi64' for regex 'gccg+'
  132. Note, selecting 'gccgo-multilib-powerpc-linux-gnu' for regex 'gccg+'
  133. Note, selecting 'gccgo-9-riscv64-linux-gnu' for regex 'gccg+'
  134. Note, selecting 'gccgo-9-sh4-linux-gnu' for regex 'gccg+'
  135. Note, selecting 'gccgo-9-multilib-mips64-linux-gnuabi64' for regex 'gccg+'
  136. Note, selecting 'gccgo-9-powerpc64le-linux-gnu' for regex 'gccg+'
  137. Note, selecting 'gccgo-10-x86-64-linux-gnux32' for regex 'gccg+'
  138. Note, selecting 'gccgo-multilib-mips64el-linux-gnuabi64' for regex 'gccg+'
  139. Note, selecting 'gccgo-9-aarch64-linux-gnu' for regex 'gccg+'
  140. Note, selecting 'uwsgi-plugin-gccgo' for regex 'gccg+'
  141. Note, selecting 'gccgo-9-mips64el-linux-gnuabi64' for regex 'gccg+'
  142. Note, selecting 'gccgo-10-s390x-linux-gnu' for regex 'gccg+'
  143. Note, selecting 'gccgo-doc' for regex 'gccg+'
  144. Note, selecting 'gccgo-multilib-mipsel-linux-gnu' for regex 'gccg+'
  145. Note, selecting 'gccgo-multilib-mipsisa64r6el-linux-gnuabi64' for regex 'gccg+'
  146. Note, selecting 'gccgo-9-multilib-sparc64-linux-gnu' for regex 'gccg+'
  147. Note, selecting 'gccgo-9-doc' for regex 'gccg+'
  148. Note, selecting 'python-is-python2' instead of 'python'
  149. Package python-matplotlib is not available, but is referred to by another package.
  150. This may mean that the package is missing, has been obsoleted, or
  151. is only available from another source

  152. Package libqt4-dev is not available, but is referred to by another package.
  153. This may mean that the package is missing, has been obsoleted, or
  154. is only available from another source

  155. E: Unable to locate package repo
  156. E: Unable to locate package libudev-devlibusb-1.0-0-dev
  157. E: Couldn't find any package by glob 'libudev-devlibusb-1.0-0-dev'
  158. E: Couldn't find any package by regex 'libudev-devlibusb-1.0-0-dev'
  159. E: Unable to locate package python-linaro-image-tools
  160. E: Unable to locate package linaro-image-tools
  161. E: Unable to locate package wgetlibncurses5
  162. E: Package 'libqt4-dev' has no installation candidate
  163. E: Unable to locate package gitmercurial
  164. E: Package 'python-matplotlib' has no installation candidate
  165. E: Unable to locate package libc6:i386
  166. E: Unable to locate package liblz4-toollibtool
复制代码


请问我的步骤是否哪里有错误呢?

br.log.zip

817.51 KB, 下载次数: 0, 下载积分: 灯泡 -1 , 经验 -1

全部编译报错日志


作者: 799959745    时间: 2022-7-12 15:48
music1913 发表于 2022-7-12 13:10
谢谢回复。
我已经在 Ubuntu 20.04.4 (x64) PC机上安装了SDK: rv1126_rv1109_linux_release_20211022, ...

首先,默认使用的编译环境是ubuntu18.04,已经经过验证过编译不会出错。如果不是ubuntu18.04则需要自行安装原装的ubuntu18.04或者使用docker 安装ubuntu18.04进行编译开发。如果不想使用ubuntu18.04,则只能自行解决编译问题。
其次是刚拿到的sdk是一个基础包,需要进行更新最新才可以,维基有介绍怎么更新。
作者: music1913    时间: 2022-7-12 15:55
本帖最后由 music1913 于 2022-7-12 16:14 编辑
799959745 发表于 2022-7-12 15:48
首先,默认使用的编译环境是ubuntu18.04,已经经过验证过编译不会出错。如果不是ubuntu18.04则需要自行安 ...

好的,我再去使用指定的 Ubuntu系统。
问题:
其次是刚拿到的sdk是一个基础包,需要进行更新最新才可以,维基有介绍怎么更新
就是指通过wiki中说明的命令:
  1. .repo/repo/repo sync -c --no-tags
复制代码
进行的意思,是吗?

作者: 799959745    时间: 2022-7-13 09:09
music1913 发表于 2022-7-12 15:55
好的,我再去使用指定的 Ubuntu系统。
问题:

这些问题你都可以自行尝试的,成功了就直接pass了。不用等我回你再去做




欢迎光临 Firefly开源社区 (https://dev.t-firefly.com/) Powered by Discuz! X3.1