linux编译源码(Linux开发板)

大家好,今天来为大家分享linux编译源码的一些知识点,和Linux开发板的问题解析,大家要是都明白,那么可以忽略,如果不太清楚的话可以看看本篇文章,相信很大概率可以解决您的问题,接下来我们就一起来看看吧!

...By Step】编译Unreal Engine源码以支持打包Linux+ARM项目

要解决Unreal Engine 5.3.2版本不支持打包Linux ARM+OpenXR项目的问题,需要自定义编译Unreal Engine源码并配置相关环境。以下为详细步骤。

首先,访问EpicGames/UnrealEngine的GitHub仓库(github.com),注意避免使用git clone命令,因为它可能导致较慢的下载速度。

然后,下载并安装Visual Studio 2022的社区版,访问Microsoft官网下载(microsoft.com),并参考Epic Developer Community的设置指南(epicgames.com)进行相应配置。

接着,修改setup.bat脚本为多线程下载模式,以显著提升下载速度。具体操作为:在setup.bat文件中找到set PROMPT_ARGUMENT=--prompt行,将其修改为set PROMPT_ARGUMENT=--prompt--threads=20。同时,在C:\Windows\System32\drivers\etc\hosts文件中添加指向cdn.unrealengine.com的映射。

执行GenerateProjectFiles.bat脚本,并双击UE5.sln打开Visual Studio源码。

将libopenxr_loader.so文件复制至UnrealEngine-5.2\Engine\Binaries\ThirdParty\OpenXR\linuxarm\aarch64-unknown-linux-gnu目录。

修改OpenXR.uplugin文件至UnrealEngine-5.2\Engine\Plugins\Runtime\OpenXR目录。

进一步修改OpenXR.Build.cs文件,同样在UnrealEngine-5.2\Engine\Source\ThirdParty\OpenXR目录下完成。

使用Visual Studio编译源码,首次编译过程可能较慢。编译成功后,安装Linux交叉编译工具,可参考Epic Developer Community的开发需求指南(epicgames.com),安装clang版本15.0.1。

打开UE5.2版本,创建虚拟现实项目时请确保项目名称不为“test”,以避免触发某些bug。如遇异常,可开启steamvr进行排查。

修改虚拟现实项目文件,将项目名称更改为创建时的名称,例如"openxr52new.uproject",以避免打包时出现错误。

最后,完成UE项目打包流程,即可成功实现Linux ARM+OpenXR项目的自定义编译与打包。

如何编译linux源代码

首先uname-r看一下你当前的linux内核版本

1、linux的源码是在/usr/src这个目录下,此目录有你电脑上各个版本的linux内核源代码,用uname-r命令可以查看你当前使用的是哪套内核,你把你下载的内核源码也保存到这个目录之下。

2、配置内核 make menuconfig,根据你的需要来进行选择,设置完保存之后会在当前目录下生成.config配置文件,以后的编译会根据这个来有选择的编译。

3、编译,依次执行make、make bzImage、make modules、make modules

4、安装,make install

5、.创建系统启动映像,到/boot目录下,执行 mkinitramfs-o initrd.img-2.6.36 2.6.36

6、修改启动项,因为你在启动的时候会出现多个内核供你选择,此事要选择你刚编译的那个版本,如果你的电脑没有等待时间,就会进入默认的,默认的那个取决于/boot/grub/grub.cfg文件的设置,找到if ["${linux_gfx_mode}"!="text" ]这行,他的第一个就是你默认启动的那个内核,如果你刚编译的内核是在下面,就把代表这个内核的几行代码移到第一位如:

menuentry'Ubuntu, with Linux 3.2.0-35-generic'--class ubuntu--class gnu-linux--class gnu--class os{

recordfail

gfxmode$linux_gfx_mode

insmod gzio

insmod part_msdos

insmod ext2

set root='(hd0,msdos1)'

search--no-floppy--fs-uuid--set=root 9961c170-2566-41ac-8155-18f231c1bea5

linux/boot/vmlinuz-3.2.0-35-generic root=UUID=9961c170-2566-41ac-8155-18f231c1bea5 ro quiet splash$vt_handoff

initrd/boot/initrd.img-3.2.0-35-generic

}

当然你也可以修改 set default="0"来决定用哪个,看看你的内核在第几位,default就填几,不过我用过这种方法,貌似不好用。

重启过后你编译的内核源码就成功地运行了,如果出现问题,比如鼠标不能用,usb不识别等问题就好好查查你的make menuconfig这一步,改好后就万事ok了。

最后再用uname-r看看你的linux内核版本。是不是你刚下的那个呢!有没有成就感?

Linux中源码编译安装程序包括哪些基本步骤

第一步:创建编译脚本

进入到源码目录执行./configure--prefix=/.../.....(--prefix=后面是想要安装到的目录)

第二部:编译

执行 make

第三部:安装

执行 make install

当然上面这几部都是最基本的步骤,如果想优化编译,要在./configure后面加参数,或者configure之后手动修改Makefile文件如O2(优化等级) FLAGS等编译参数的修改。

--------------------------------------------------------------------------------------------------------------

以上都是源码包的编译

如果是自己写的C代码直接用gcc编译即可。

例如编译test.c

执行 gcc-o test test.c即可将test.c编译为可执行的文件 test

自己打出来的要采纳啊!

阅读剩余
THE END