2012-05-08 75 views
7

我遇到了一个奇怪的问题。我试图安装x264。当执行sudo运行./configure --enable-共享, 这给:即使我安装了它也找不到yasm

发现没有汇编 最低版本YASM-0.7.0 如果你真的想编译没有ASM,将--disable-ASM配置。

但我已经安装YASM-0.7.0,为了证明这一点,我跑YASM --version,它给了:

* YASM 0.7.0.2066 编译于5月8日2012年 版权所有( c)2001-2008 Peter Johnson和其他Yasm开发人员。 运行yasm - 授权概述和摘要的许可证。 *

我将yasm安装到/ usr/local/yasm, 为什么找不到yasm?

+0

@zhen_lee我相信我的回答是正确的。如果你同意,你能否将其标记为这样? – Catskul

回答

-1

也许你应该重建正确路径/ usr/bin/yasm的yasm。

+0

'/ usr/bin'不是本地构建软件的正确/常规路径。它通常放在'/ usr/local/bin'中以避免覆盖/混合由系统包管理器安装的文件。混合/覆盖否则会造成严重破坏。 – Catskul

+0

@Catskul你说得对。我只是发现默认情况下,yasm安装在/ usr/bin目录中。 – toolchainX

6

sudo忽略您的PATH环境变量并使用它自己的。

比较:

$ which yasm 
/usr/local/bin/yasm 

有:

$ sudo which yasm 
/usr/bin/yasm 

来解决,这样做:

$ sudo PATH=$PATH:/usr/local/bin which yasm 
/usr/local/bin/yasm 

或者说

$ sudo PATH=$PATH:/usr/local/bin ./configure --enable-shared 
+1

这是正确的答案。 – JRL

0

如果您正在运行Ubuntu,如果“这YASM”结果没有请尝试为建设64下面提到的命令....

命令和apt-get安装YASM

8

只要有人从谷歌来到这里,寻找最近的解决方案。

最近版本的x264从yasm移到nasm,因此打破了一些FFMPEG安装脚本或教程。要检查是否是这种情况,请查看输出。如果它读取

Minimum version is nasm-2.13 

然后您要安装nasm。在Ubuntu 16.04回购中,有nasm 2.11;所以你必须根据官方指令http://www.linuxfromscratch.org/blfs/view/svn/general/nasm.html来源建立。

相关问题