Git Linux最新稳定编译:无法表示对vmlinux-gdb.py的更改: 问题是: 20年前: 我上一次写了超过1K的C代码 编译任何大于10K的源代码行 我当前发行版对0cf3:e300 Atheros Communications,Inc.WiFi驱动程序的支持(Ubuntu 16.04)非常糟糕:8-12Mbps是我得到的最好的 我对内核版本优先级的了解: 使用您自己的发行版内核(毫无疑问:太慢了) 使用最新的 使用最新的LTS内核 我所尝试的:

Git Linux最新稳定编译:无法表示对vmlinux-gdb.py的更改: 问题是: 20年前: 我上一次写了超过1K的C代码 编译任何大于10K的源代码行 我当前发行版对0cf3:e300 Atheros Communications,Inc.WiFi驱动程序的支持(Ubuntu 16.04)非常糟糕:8-12Mbps是我得到的最好的 我对内核版本优先级的了解: 使用您自己的发行版内核(毫无疑问:太慢了) 使用最新的 使用最新的LTS内核 我所尝试的:,git,compilation,linux-kernel,Git,Compilation,Linux Kernel,这给了我以下错误: dpkg-source: error: cannot represent change to vmlinux-gdb.py: dpkg-source: error: new version is symlink to /home/fab-user/Documents/Source/linux/scripts/gdb/vmlinux-gdb.py dpkg-source: error: old version is nonexistent 在以下完整输出中: make

这给了我以下错误:

dpkg-source: error: cannot represent change to vmlinux-gdb.py:
dpkg-source: error:   new version is symlink to /home/fab-user/Documents/Source/linux/scripts/gdb/vmlinux-gdb.py
dpkg-source: error:   old version is nonexistent
在以下完整输出中:

make -j `getconf _NPROCESSORS_ONLN` deb-pkg LOCALVERSION=-fab
  HOSTCC  scripts/basic/fixdep
  HOSTCC  scripts/kconfig/conf.o
  HOSTCC  scripts/kconfig/confdata.o
  HOSTCC  scripts/kconfig/expr.o
  LEX     scripts/kconfig/lexer.lex.c
  YACC    scripts/kconfig/parser.tab.h
  YACC    scripts/kconfig/parser.tab.c
  HOSTCC  scripts/kconfig/preprocess.o
  HOSTCC  scripts/kconfig/symbol.o
  HOSTCC  scripts/kconfig/lexer.lex.o
  HOSTCC  scripts/kconfig/parser.tab.o
  HOSTLD  scripts/kconfig/conf
scripts/kconfig/conf  --syncconfig Kconfig
  UPD     include/config/kernel.release
make clean
/bin/bash ./scripts/package/mkdebian
  TAR     linux-5.1.2-fab.tar.gz
origversion=$(dpkg-parsechangelog -SVersion |sed 's/-[^-]*$//');\
    mv linux-5.1.2-fab.tar.gz ../linux-5.1.2-fab_${origversion}.orig.tar.gz
dpkg-buildpackage -r"fakeroot -u" -a$(cat debian/arch)  -i.git -us -uc
dpkg-buildpackage: source package linux-5.1.2-fab
dpkg-buildpackage: source version 5.1.2-fab-1
dpkg-buildpackage: source distribution xenial
dpkg-buildpackage: source changed by fab-user <fab-user@fab-ux-predator>
dpkg-buildpackage: host architecture amd64
 dpkg-source -i.git --before-build linux
 fakeroot -u debian/rules clean
rm -rf debian/*tmp debian/files
make clean
 dpkg-source -i.git -b linux
dpkg-source: info: using source format '1.0'
dpkg-source: warning: source directory 'linux' is not <sourcepackage>-<upstreamversion> 'linux-5.1.2-fab-5.1.2-fab'
dpkg-source: warning: .orig directory name linux.orig is not <package>-<upstreamversion> (wanted linux-5.1.2-fab-5.1.2-fab.orig)
dpkg-source: info: building linux-5.1.2-fab using existing linux-5.1.2-fab_5.1.2-fab.orig.tar.gz
dpkg-source: info: building linux-5.1.2-fab in linux-5.1.2-fab_5.1.2-fab-1.diff.gz
dpkg-source: error: cannot represent change to vmlinux-gdb.py:
dpkg-source: error:   new version is symlink to /home/fab-user/Documents/Source/linux/scripts/gdb/vmlinux-gdb.py
dpkg-source: error:   old version is nonexistent
dpkg-source: warning: ignoring deletion of file .scmversion, use --include-removal to override
dpkg-source: error: cannot represent change to linux-5.1.1-fab.tar.gz: binary file contents changed
dpkg-source: warning: the diff modifies the following upstream files: 
 .clang-format
 .cocciconfig
 .config.old
 .get_maintainer.ignore
 .mailmap
 .version
 CREDITS
 LICENSES/exceptions/GCC-exception-2.0
 LICENSES/exceptions/Linux-syscall-note
 LICENSES/other/Apache-2.0
 LICENSES/other/CDDL-1.0
 LICENSES/other/GPL-1.0
 LICENSES/other/ISC
 LICENSES/other/Linux-OpenIB
 LICENSES/other/MPL-1.1
 LICENSES/other/X11
 LICENSES/preferred/BSD-2-Clause
 LICENSES/preferred/BSD-3-Clause
 LICENSES/preferred/BSD-3-Clause-Clear
 LICENSES/preferred/GPL-2.0
 LICENSES/preferred/LGPL-2.0
 LICENSES/preferred/LGPL-2.1
 LICENSES/preferred/MIT
 MAINTAINERS
 Module.symvers
 README
dpkg-source: info: use the '3.0 (quilt)' format to have separate and documented changes to upstream files, see dpkg-source(1)
dpkg-source: error: unrepresentable changes to source
dpkg-buildpackage: error: dpkg-source -i.git -b linux gave error exit status 1
scripts/package/Makefile:70: recipe for target 'deb-pkg' failed
make[1]: *** [deb-pkg] Error 1
Makefile:1396: recipe for target 'deb-pkg' failed
make: *** [deb-pkg] Error 2
这给了我高达10MB/S的速度,而不是我发行版的标准内核12Mbps的速度,而且效果很好,但是如果我想保持WiFi驱动程序的全速,我需要每24小时重新启动一次机器

问题是: 我注定要留在4.19.38吗?

有没有办法让4.19.39-5.12版本永久运行?

您只需使用
-f
参数从以前的内核获取预编译驱动程序即可。您只需在
journalctl
中获得一条“污染内核”消息,但您可以忽略它


只要不改变,您就可以继续了。

简单地删除
vmlinux pdb.py
symlink到
scripts/gdb/vmlinux gdb.py
就解决了这个问题

那么在根目录下的内核源码呢

$ rm vmlinux-gdb.py

另请参见

我在尝试从ubuntu git repo构建时遇到了这个问题

scripts/gdb/vmlinux-gdb.py 
是以前生成的遗留文件的症状。即使在您删除它之后,您也可能会遇到更多错误(接下来我不得不删除linux源代码tarball)

查看大量未跟踪的文件。我们的目标是摆脱它们

比起一个接一个地搜寻档案,打鼹鼠游戏更容易实现

  • 承诺你需要的一切

  • 删除git未跟踪的文件

通过做

git clean -r
并在源代码树的顶部执行此操作


然后试着编译

我花了一段时间来尝试:在你发布并接受的当天,我投了赞成票。。。0:-)这个答案对我不起作用,但@Tim Richardson的答案似乎是正确的:这个问题与肮脏的回购问题有关。在这种情况下,删除脚本可能会有所帮助,但并不总是如此。最好确保git存储库是“干净的”。@Fabby我同意这是一个更优雅的解决方案!
scripts/gdb/vmlinux-gdb.py 
git status
git clean -r