弱弱问下,是不是所有linux程序都是即时编译的?
嗯,就是下载下来的linux程序,似乎都是源代码,要想执行,必须现场编译?不像windows有个exe文件?因为我看很多linux源程序当中,都有一些宏定义,这些宏定义根本不可能在编译之前知道,感觉是根据
你的linux系统情况来决定,比如说键盘布局,你的鼠标是usb的还是ps2的,等等? 开发板又冒泡了.召唤大湿姐,大湿胸 因为是开源软件才是,非开源是给二进制 你去./sbin和./usr/bin下面看看... xivisi 发表于 2016-2-12 12:20
因为是开源软件才是,非开源是给二进制
我还是不太明白,那那些开源的软件,如果出现我说的那种宏定义,
完全有可能在一台电脑上编译后,在另一台电脑上无法运行? 习学发开 发表于 2016-2-12 12:28
我还是不太明白,那那些开源的软件,如果出现我说的那种宏定义,
完全有可能在一台电脑上编译后,在另一台电 ...
当然,最明显的是32位和64位。即使是同样位数的系统,也会因为内核版本或裁剪配置不一样,而有差异,比较明显的,比如静态库和动态库 不是 ...... 本帖最后由 Bunny_Girl 于 2016-2-12 13:29 编辑
“弱弱问下,是不是所有linux程序都是即时编译的?”
不是的
几乎每个linux发行版本都有官方的软件源(比如我用过的 archlinux, ubuntu, centos, debian ... 都有的)
所以大部分软件都可以直接从软件源里直接安装二进制的(就像exe那样,不用编译的)
而且比windows还方便哦~
一个命令下去,就自动下载and安装了
搜索软件,升级系统,也都是一个命令搞定
不过有时候还是需要编译的
比如官方源的版本太旧了,或者太新了你不适应,或者官方源里就没有这个软件
这种情况,除了自己去下载源码手动编译外,有些版本的linux还有更方便的方法
比如archlinux,有AUR源,用yaourt就可以搜索&下载&编译&安装&更新,一个命令下去就全自动了,像官方源一样方便
有些版本的linux,则是以编译为主的,比如gentoo(其实官方源也有二进制的)
然后也是有类似yaourt那样的工具可以自动下载&编译&安装&更新
像我比较懒的(懒得编译),我用arch,几乎都没有手动下载编译的(有编译也是yaourt自动的)
一个原因是图方便
还有一个,用pacman(官方源,二进制的)和yaourt(AUR源,编译的)安装的软件,是有系统管理的,以后查询/更新/删除都比较方便
“因为我看很多linux源程序当中,都有一些宏定义,这些宏定义根本不可能在编译之前知道,感觉是根据”
像我这类懒人,几乎没有去改or设置源码的宏定义,这也不是推荐的方法
手动编译安装的时候,会先运行一下配置程序,比如./configure (在源码的顶层目录里)
在configure命令后面加上各种配置参数即可(具体有哪些配置选项,可以./configure --help)
如果不是高手,直接手动去改源码,很容易出问题的。。。
“你的linux系统情况来决定,比如说键盘布局,你的鼠标是usb的还是ps2的,等等?”
键盘鼠标这些一般不会在源码里设置的
linux下的软件一般都会有配置文件(包括二进制安装的和编译安装的),都是在那里面配置
还有些基本通用的设置,系统也有配置文件的(比如键盘布局)
至于鼠标是usb还是ps2, 这就更底层了,都会封装好了给上层软件使用的,软件层不用考虑这些 用用apt-get install xx来装软件吧 Bunny_Girl 发表于 2016-2-12 13:19
“弱弱问下,是不是所有linux程序都是即时编译的?”
不是的
几乎每个linux发行版本都有官方的软件源(比如我 ...
好恐怖啊,bunny姐姐竟然也是什么都懂那种类型的~~
我感觉我好普通的~~{:3_58:}
你没用过sudo,apt get 吗? sddp001 发表于 2016-2-12 16:44
你没用过sudo,apt get 吗?
太小看人了额额额e 当初我用Gentoo,不知道Firefox有二进制包,编译花了我十多个小时。 笑笑我笑了 发表于 2016-2-12 18:13
当初我用Gentoo,不知道Firefox有二进制包,编译花了我十多个小时。
当年刚开始装Linux,同样不知道有二进制包,一个make下去我那破机子从头天晚上编译到第二天中午,居然还没有完,我就强制重启了。
页:
[1]