Tag: 编译

如何在14.04上安装所需的Qt包来构建内核?

我要在Ubuntu 14.04 64位上编译内核,所以我开始安装我需要的软件包: sudo apt-get install build-essential bin86 kernel-package libqt3-headers libqt3-mt-dev wget libncurses5 libncurses5-dev qt4-dev-tools libqt4-dev 除libqt3-headers和libqt3-mt-dev软件包外,一切libqt3-headers安装。 对于我在终端的那些包裹: E: Unable to locate package libqt3-headers E: Unable to locate package libqt3-mt-dev 我环顾四周,似乎在Ubuntu 14.04存储库中没有这些软件包。 知道该怎么办?

错误:无法运行C编译的程序。 如果你打算交叉编译使用–host’Ubuntu

我是Ubuntu的新手,我下载并解压缩了一个tar.gz软件包,解压后,在文档中说:“type ./configure –disable-gts ” 但是,当我单独运行此命令时,它告诉我“权限被拒绝”错误。 然后我尝试使用sh ./configure –disable-gts代替,但这次我遇到了这个错误: > configure: error: cannot run C compiled programs. If you meant to cross compile, use `–host’. 我怎样才能克服这两个问题? (我的意思是允许和编译错误)我只是一个新手,我需要紧急帮助。

我可以写一个带参数的别名吗?

我有一些远程机器,我需要编译一些源代码。 我通常做的是写一个别名,它说: alias g++=’g++ `pkg-config –cflags opencv –libs opencv`’ 然后,当我远程编译时,我会做g++ -o test test.cpp 。 无论出于何种原因,Ubuntu不会让我这样做。 相反,当我这样做时,Ubuntu可以工作: g++ file.cpp -o file `pkg-config –cflags opencv –libs opencv` 但这意味着我无法为g ++编写别名。 有没有办法可以写一个会引用争论的别名? 我该怎么办?

帮助找到linux / version.h

我正在尝试修复一个旧程序,我以前遇到的问题可以在Missing modversions.h找到 当我make程序时它会给我以下错误, kaodv-mod.c:22:27: fatal error: linux/version.h: No such file or directory compilation terminated. 所以我跑了 find / -name version.h 返回 /opt/VBoxGuestAdditions-4.3.2/src/vboxguest-4.3.2/vboxguest/include/VBox/version.h /usr/include/linux/dvb/version.h /usr/include/linux/version.h /usr/src/linux-headers-3.8.0-29-generic/include/config/arch/want/ipc/parse/version.h /usr/src/linux-headers-3.8.0-29-generic/include/generated/uapi/linux/version.h /usr/src/linux-headers-3.8.0-29/include/uapi/linux/dvb/version.h /usr/src/linux-headers-3.8.0-29/include/xen/interface/version.h 这清楚地certificate了linux/version.h的存在 为了解决这个问题,我应该改变吗? #include 成 #include 或者是否可以更改Makefile PS: Makefile

如何编译bcmwl-ubuntu?

在内核<4.0上运行我使用了来自存储库的预编译bcmwl-kernel-source而没有任何问题。 现在我将我的Ubuntu 14.04.2 LTS更新为内核4.0.0-040000-generic,但尚未支持该软件包。 我找到了这个bug报告 ,其中作者描述了github上有内核4.0的修补版本。 不幸的是我无法通过make all编译它。 它给我以下错误: user@computer:~/Downloads/bcmwl-ubuntu$ make all KBUILD_NOPEDANTIC=1 make -C /lib/modules/`uname -r`/build M=`pwd` make[1]: Verzeichnis »/usr/src/linux-headers-4.0.0-040000-generic« wird betreten CFG80211 API is prefered for this kernel version Using CFG80211 API LD /home/user/Downloads/bcmwl-ubuntu/built-in.o make[2]: *** Keine Regel vorhanden, um das Target »/home/user/Downloads/bcmwl-ubuntu/src/shared/linux_osl.o«, benötigt von »/home/user/Downloads/bcmwl-ubuntu/wl.o«, zu erstellen. Schluss. make[1]: *** [_module_/home/user/Downloads/bcmwl-ubuntu] Fehler […]

我认为“/ lib / modules / $(uname -r)/ build”指向不正确的文件夹

我编译/创建自己的内核deb包: make-kpkg –rootcmd fakeroot –initrd –append-to-version=$version –revision=1 kernel_image kernel_headers 但是当我在/ lib / modules /(* name_kernel_compiled *)中安装这两个软件包时,它会创建两个链接, 源代码和构建 ,指向带有源代码的文件夹,来自我已经编译过。 source链接是正确的但是build应该指向/ usr / src / linux-( 版本内核 ),你不觉得吗?

如何在64位计算机上构建32位deb文件?

我已经按照这个答案来获取我正在构建的构建依赖项,然后实际编译源代码并将其构建为deb文件,但是我需要为32位创建一个deb文件,而我正在运行64- bit,所以它会自动使它成为64位而不是32位,所以有什么方法可以指定我希望它创建32位而不是64位吗?

试图从源代码编译gnupg

我从https://www.gnupg.org/download/下载了最新的稳定tarball,并将其解压缩到我的ubuntu机器上的文件夹中。 我不得不chmod 775 configure以便能够运行它,然后运行./configure 我在最后得到了这个消息: GnuPG v2.0.29 has been configured as follows: Revision: 120fc69 (4623) Platform: GNU/Linux (x86_64-unknown-linux-gnu) OpenPGP: yes S/MIME: yes Agent: yes Smartcard: yes (without internal CCID driver) Gpgtar: no Protect tool: (default) Default agent: (default) Default pinentry: (default) Default scdaemon: (default) Default dirmngr: (default) Warning: Mismatches between the target platform and the […]

确定包在机器之间更新/复制软件的文件

如何确定哪些文件包含应用程序(从源代码构建而不是从存储库构建),以便我可以复制它? 我从源代码构建了一个应用程序,但由于它需要构建的库与运行它的系统不兼容,我不得不在VM中构建它。 (我确信有一些方法可以维护两组不同的库,但我不知道如何)。 它不需要运行那些更新的库,所以我需要找出我需要复制的内容。 我想要捕获sudo make install的输出,但这似乎不起作用。 我可以在整个系统上做一个文件差异,但必须有一个更简单的方法吗? 也许如果我将它打包成.deb或其他东西?

默认情况下获取构建依赖项和源

是否有一个应用程序,一旦我们从.deb软件包或软件中心安装软件,就会自动下载构建依赖项以及软件的源代码?