ubuntu虽然能正常安装,但是build时会出现闪退情况,闪退后一切归零,没啥错误提示,改用centos来安装petalinux。
vmware pro 14,centos 7.3 petalinux 2017.2
除了python,其他都用yum直接安装即可,安装UG1144里的所有库 python安装过程:
wget https://www.python.org/ftp/python/3.4.1/Python-3.4.1.tgz tar xf Python-3.4.1.tgz cd Python-3.4.1 ./configure make make install安装到/usr/local/bin/python3目录了,在/usr/bin/中创建指向该位置的符号连接
ln -s /usr/local/bin/python3 /usr/bin/python3每次打开termal时,上述命令需要重新输入,太麻烦。可以将该命令加入到~/.bashrc文件中,每次打开termal会自动执行该脚本。
// 关闭网络交互
[liuwanpeng@localhost ~]$ petalinux-util --webtalk off INFO: Turn off webtalk feature!弹出的图形界面配置里不用动
[liuwanpeng@localhost xilinx-zcu102-2017.2]$ petalinux-config --get-hw-description=hardware/xilinx-zcu102-2017.2/xilinx-zcu102-2017.2.sdk/ INFO: Getting hardware description... [INFO] generating Kconfig for project [INFO] menuconfig project /home/liuwanpeng/mpsoc/xilinx-zcu102-2017.2/build/misc/config/Kconfig.syshw:30:warning: defaults for choice values not supported /home/liuwanpeng/mpsoc/xilinx-zcu102-2017.2/build/misc/config/Kconfig:574:warning: config symbol defined without type configuration written to /home/liuwanpeng/mpsoc/xilinx-zcu102-2017.2/project-spec/configs/config *** End of the configuration. *** Execute 'make' to start the build or try 'make help'. [INFO] sourcing bitbake [INFO] generating plnxtool conf [INFO] generating meta-plnx-generated layer ~/mpsoc/xilinx-zcu102-2017.2/build/misc/plnx-generated ~/mpsoc/xilinx-zcu102-2017.2 ~/mpsoc/xilinx-zcu102-2017.2 [INFO] generating machine configuration [INFO] generating bbappends for project . This may take time ! ~/mpsoc/xilinx-zcu102-2017.2/build/misc/plnx-generated ~/mpsoc/xilinx-zcu102-2017.2 ~/mpsoc/xilinx-zcu102-2017.2 [INFO] generating u-boot configuration files [INFO] generating kernel configuration files [INFO] generating kconfig for Rootfs Generate rootfs kconfig [INFO] oldconfig rootfs [INFO] generating petalinux-user-image.bb总结: -错误:install: cannot stat ‘/home/liuwanpeng/mpsoc/xilinx-zcu102-2017.2/build/../components/plnx_workspace/pmu-firmware/Release/pmu-firmware.elf’: No such file or directory 解决:缺库,安装libstdc++.i686,glibc-devel.i686,libz.so.1
timeout while establishing a connection with SDK 解决:AR# 69812没用,看论坛https://forums.xilinx.com/xlnx/board/crawl_message?board.id=EDK&message.id=41823 in fsbl and pmufw recipes add this two lines export _JAVA_OPTIONS _JAVA_OPTIONS = "-Duser.home=${TMPDIR}/xsctenv"(1)出错了 install: cannot stat ‘/home/liuwanpeng/mpsoc/xilinx-zcu102-2017.2/build/../components/plnx_workspace/pmu-firmware/Release/pmu-firmware.elf’: No such file or directory
[liuwanpeng@localhost xilinx-zcu102-2017.2]$ petalinux-build [INFO] building project [INFO] sourcing bitbake INFO: bitbake petalinux-user-image Loading cache: 100% |############################################| Time: 0:00:02 Loaded 3235 entries from dependency cache. Parsing recipes: 100% |##########################################| Time: 0:00:09 Parsing of 2446 .bb files complete (2407 cached, 39 parsed). 3236 targets, 224 skipped, 0 masked, 0 errors. NOTE: Resolving any missing task queue dependencies Initialising tasks: 100% |#######################################| Time: 0:01:28 Checking sstate mirror object availability: 100% |###############| Time: 0:00:13 NOTE: Executing SetScene Tasks NOTE: Executing RunQueue Tasks fsbl-2017.2+gitAUTOINC+122565ec40-r0 do_compile: NOTE: fsbl: compiling from external source tree /opt/pkg/petalinux/tools/hsm/data/embeddedsw pmu-firmware-2017.2+gitAUTOINC+122565ec40-r0 do_compile: NOTE: pmu-firmware: compiling from external source tree /opt/pkg/petalinux/tools/hsm/data/embeddedsw ERROR: pmu-firmware-2017.2+gitAUTOINC+122565ec40-r0 do_deploy: Function failed: do_deploy (log file is located at /home/liuwanpeng/mpsoc/xilinx-zcu102-2017.2/build/tmp/work/plnx_aarch64-xilinx-linux/pmu-firmware/2017.2+gitAUTOINC+122565ec40-r0/temp/log.do_deploy.94828) ERROR: Logfile of failure stored in: /home/liuwanpeng/mpsoc/xilinx-zcu102-2017.2/build/tmp/work/plnx_aarch64-xilinx-linux/pmu-firmware/2017.2+gitAUTOINC+122565ec40-r0/temp/log.do_deploy.94828 Log data follows: | DEBUG: Executing python function sstate_task_prefunc | DEBUG: Python function sstate_task_prefunc finished | DEBUG: Executing shell function do_deploy | install: cannot stat ‘/home/liuwanpeng/mpsoc/xilinx-zcu102-2017.2/build/../components/plnx_workspace/pmu-firmware/Release/pmu-firmware.elf’: No such file or directory | ERROR: Function failed: do_deploy (log file is located at /home/liuwanpeng/mpsoc/xilinx-zcu102-2017.2/build/tmp/work/plnx_aarch64-xilinx-linux/pmu-firmware/2017.2+gitAUTOINC+122565ec40-r0/temp/log.do_deploy.94828) ERROR: Task (/opt/pkg/petalinux/components/yocto/source/aarch64/layers/meta-xilinx-tools/recipes-bsp/pmu/pmu-firmware_git.bb:do_deploy) failed with exit code '1' NOTE: Tasks Summary: Attempted 2399 tasks of which 1865 didn't need to be rerun and 1 failed. Summary: 1 task failed: /opt/pkg/petalinux/components/yocto/source/aarch64/layers/meta-xilinx-tools/recipes-bsp/pmu/pmu-firmware_git.bb:do_deployxilinx有专门的AR# 69293:跟上述问题还不是同一个 2017.1/2 Zynq UltraScale+ MPSoC: PetaLinux fails to build PMU Firmware on CentOS 7.2/3
Search for Another Answer
Description Solution Description
The 2017.1 release of PetaLinux fails to build PMUFW on CentOS 7.2/3 with a build error as shown below:
log.do_deploy: install: cannot stat /home/wtsemb/Downloads/zcu102-centos-test/build/../components/plnx_workspace/pmu-firmware/Release/pmu-firmware.elf: No such file or directory ERROR: Function failed: do_deploy (log file is located at /home/wtsemb/Downloads/zcu102-centos-test/build/tmp/work/plnx_aarch64-xilinx-linux/pmu-firmware/2017.1+gitAUTOINC+3813f14966-r0/temp/log.do_deploy.60209) u log.do_compile: mb-gcc: error while loading shared libraries: libstdc++.so.6: wrong ELF class: ELFCLASS64 make[1]: *** [Makefile:25: xipipsu.o] Error 127 Solution
This can be due to missing packages which are required to build the PMUFW. The work-around for this issue is to install the packages below on the Linux host.
Once you install the packages and reboot Linux host, you can source PetaLinux tools and then create a new PetaLinux and build it.
libstdc++.i686 glibc-devel.i686 Was this Answer Record helpful? 光安装上述库有时不管用。直接查看log.do_deploy.94828之前的log文件,log.do_compile时有错误,缺少库 mb-ar: error while loading shared libraries: libz.so.1: cannot open shared object file: No such file or directory
(2) Checking sstate mirror object availability不动了,安装(1)的补丁之前无此问题,重启后问题消失
[liuwanpeng@localhost xilinx-zcu102-2017.2]$ petalinux-build [INFO] building project [INFO] sourcing bitbake INFO: bitbake petalinux-user-image Loading cache: 100% |############################################| Time: 0:00:03 Loaded 3235 entries from dependency cache. Parsing recipes: 100% |##########################################| Time: 0:00:08 Parsing of 2446 .bb files complete (2407 cached, 39 parsed). 3236 targets, 224 skipped, 0 masked, 0 errors. NOTE: Resolving any missing task queue dependencies Initialising tasks: 100% |#######################################| Time: 0:01:35 Checking sstate mirror object availability: 3% | | ETA: 0:04:30 Keyboard Interrupt, closing down...(3)又来了新错误,"timeout while establishing a connection with SDK""
[liuwanpeng@localhost xilinx-zcu102-2017.2]$ petalinux-build [INFO] building project INFO: bitbake petalinux-user-image Loading cache: 100% |############################################| Time: 0:00:02 Loaded 3235 entries from dependency cache. Parsing recipes: 100% |##########################################| Time: 0:00:07 Parsing of 2446 .bb files complete (2407 cached, 39 parsed). 3236 targets, 224 skipped, 0 masked, 0 errors. NOTE: Resolving any missing task queue dependencies Initialising tasks: 100% |#######################################| Time: 0:01:26 Checking sstate mirror object availability: 100% |###############| Time: 0:00:13 NOTE: Executing SetScene Tasks NOTE: Executing RunQueue Tasks fsbl-2017.2+gitAUTOINC+122565ec40-r0 do_compile: NOTE: fsbl: compiling from external source tree /opt/pkg/petalinux/tools/hsm/data/embeddedsw ERROR: pmu-firmware-2017.2+gitAUTOINC+122565ec40-r0 do_configure: Function failed: do_configure (log file is located at /home/liuwanpeng/mpsoc/xilinx-zcu102-2017.2/build/tmp/work/plnx_aarch64-xilinx-linux/pmu-firmware/2017.2+gitAUTOINC+122565ec40-r0/temp/log.do_configure.71493) ERROR: Logfile of failure stored in: /home/liuwanpeng/mpsoc/xilinx-zcu102-2017.2/build/tmp/work/plnx_aarch64-xilinx-linux/pmu-firmware/2017.2+gitAUTOINC+122565ec40-r0/temp/log.do_configure.71493 Log data follows: | DEBUG: Executing python function sysroot_cleansstate | DEBUG: Python function sysroot_cleansstate finished | DEBUG: Executing shell function do_configure | MISC_ARG is -yamlconf /home/liuwanpeng/mpsoc/xilinx-zcu102-2017.2/build/tmp/work/plnx_aarch64-xilinx-linux/pmu-firmware/2017.2+gitAUTOINC+122565ec40-r0/pmu-firmware.yaml | APP_ARG is -app "ZynqMP PMU Firmware" | cmd is: xsct /home/liuwanpeng/mpsoc/xilinx-zcu102-2017.2/build/tmp/work/plnx_aarch64-xilinx-linux/pmu-firmware/2017.2+gitAUTOINC+122565ec40-r0/app.tcl -ws /home/liuwanpeng/mpsoc/xilinx-zcu102-2017.2/build/../components/plnx_workspace -pname pmu-firmware -rp /opt/pkg/petalinux/tools/hsm/data/embeddedsw -processor psu_pmu_0 -hdf /home/liuwanpeng/mpsoc/xilinx-zcu102-2017.2/build/tmp/deploy/images/plnx_aarch64/Xilinx-plnx_aarch64.hdf -arch 32 -app "ZynqMP PMU Firmware" -yamlconf /home/liuwanpeng/mpsoc/xilinx-zcu102-2017.2/build/tmp/work/plnx_aarch64-xilinx-linux/pmu-firmware/2017.2+gitAUTOINC+122565ec40-r0/pmu-firmware.yaml | Starting xsdk. This could take few seconds... Eclipse: | An error has occurred. See the log file | /home/liuwanpeng/mpsoc/xilinx-zcu102-2017.2/components/plnx_workspace/.metadata/.log. | XSCTHELPER INFO: Empty WorkSpace | Starting xsdk. This could take few seconds... Eclipse: | An error has occurred. See the log file | /home/liuwanpeng/mpsoc/xilinx-zcu102-2017.2/components/plnx_workspace/.metadata/.log. | timeout while establishing a connection with SDK | while executing | "error "timeout while establishing a connection with SDK"" | (procedure "getsdkchan" line 111) | invoked from within | "getsdkchan" | (procedure "::sdk::set_user_repo_path_sdk" line 16) | invoked from within | "::sdk::set_user_repo_path_sdk $params(set)" | (procedure "repo" line 27) | invoked from within | "repo -set $path" | invoked from within | "if { $params(ws) ne "" } { | #Local Work Space available | setws $params(ws) | if { [catch {importprojects $params(ws)} result] } { | puts "XSCTHELPER IN..." | (file "/home/liuwanpeng/mpsoc/xilinx-zcu102-2017.2/build/tmp/work/plnx_aarch64-xilinx-linux/pmu-firmware/2017.2+gitAUTOINC+122565ec40-r0/app.tcl" line 120) | WARNING: /home/liuwanpeng/mpsoc/xilinx-zcu102-2017.2/build/tmp/work/plnx_aarch64-xilinx-linux/pmu-firmware/2017.2+gitAUTOINC+122565ec40-r0/temp/run.do_configure.71493:1 exit 1 from 'xsct /home/liuwanpeng/mpsoc/xilinx-zcu102-2017.2/build/tmp/work/plnx_aarch64-xilinx-linux/pmu-firmware/2017.2+gitAUTOINC+122565ec40-r0/app.tcl -ws /home/liuwanpeng/mpsoc/xilinx-zcu102-2017.2/build/../components/plnx_workspace -pname pmu-firmware -rp /opt/pkg/petalinux/tools/hsm/data/embeddedsw -processor psu_pmu_0 -hdf /home/liuwanpeng/mpsoc/xilinx-zcu102-2017.2/build/tmp/deploy/images/plnx_aarch64/Xilinx-plnx_aarch64.hdf -arch 32 -app "ZynqMP PMU Firmware" -yamlconf /home/liuwanpeng/mpsoc/xilinx-zcu102-2017.2/build/tmp/work/plnx_aarch64-xilinx-linux/pmu-firmware/2017.2+gitAUTOINC+122565ec40-r0/pmu-firmware.yaml' | ERROR: Function failed: do_configure (log file is located at /home/liuwanpeng/mpsoc/xilinx-zcu102-2017.2/build/tmp/work/plnx_aarch64-xilinx-linux/pmu-firmware/2017.2+gitAUTOINC+122565ec40-r0/temp/log.do_configure.71493) ERROR: Task (/opt/pkg/petalinux/components/yocto/source/aarch64/layers/meta-xilinx-tools/recipes-bsp/pmu/pmu-firmware_git.bb:do_configure) failed with exit code '1'解决方法: AR# 69812 2016.4-2017.2 PetaLinux: Build failed due to "error "timeout while establishing a connection with SDK"'
PetaLinux build can fail with the following timeout error in XSCT:
DEBUG: Executing python function sysroot_cleansstate DEBUG: Python function sysroot_cleansstate finished DEBUG: Executing shell function do_configure MISC_ARG is -yamlconf /tmp/4x10GE-2017.09.12-16.17.33/work/plnx_aarch64-xilinx-linux/fsbl/2017.2+gitAUTOINC+122565ec40-r0/fsbl.yaml APP_ARG is -app "Zynq MP FSBL" cmd is: xsct /tmp/4x10GE-2017.09.12-16.17.33/work/plnx_aarch64-xilinx-linux/fsbl/2017.2+gitAUTOINC+122565ec40-r0/app.tcl -ws /home/bryanloz/ZCU102_4PES/4x10GE-Switch/Petalinux/4x10GE/build/../components/plnx_workspace -pname fsbl -rp /proj/petalinux/released/Petalinux-v2017.2/petalinux-v2017.2_0619_1/tools/hsm/data/embeddedsw -processor psu_cortexa53_0 -hdf /tmp/4x10GE-2017.09.12-16.17.33/deploy/images/plnx_aarch64/Xilinx-plnx_aarch64.hdf -arch 64 -app "Zynq MP FSBL" -yamlconf /tmp/4x10GE-2017.09.12-16.17.33/work/plnx_aarch64-xilinx-linux/fsbl/2017.2+gitAUTOINC+122565ec40-r0/fsbl.yaml Starting xsdk. This could take few seconds... Eclipse: An error has occurred. See the log file /home/bryanloz/ZCU102_4PES/4x10GE-Switch/Petalinux/4x10GE/components/plnx_workspace/.metadata/.log. XSCTHELPER INFO: Empty WorkSpace Starting xsdk. This could take few seconds... Eclipse: An error has occurred. See the log file /home/bryanloz/ZCU102_4PES/4x10GE-Switch/Petalinux/4x10GE/components/plnx_workspace/.metadata/.log. timeout while establishing a connection with SDK while executing "error "timeout while establishing a connection with SDK"" (procedure "getsdkchan" line 111) invoked from within "getsdkchan" (procedure "::sdk::set_user_repo_path_sdk" line 16) invoked from within "::sdk::set_user_repo_path_sdk $params(set)" (procedure "repo" line 27) invoked from within "repo -set $path" invoked from within "if { $params(ws) ne "" } { #Local Work Space available setws $params(ws) if { [catch {importprojects $params(ws)} result] } { puts "XSCTHELPER IN..." (file "/tmp/4x10GE-2017.09.12-16.17.33/work/plnx_aarch64-xilinx-linux/fsbl/2017.2+gitAUTOINC+122565ec40-r0/app.tcl" line 120) WARNING: /tmp/4x10GE-2017.09.12-16.17.33/work/plnx_aarch64-xilinx-linux/fsbl/2017.2+gitAUTOINC+122565ec40-r0/temp/run.do_configure.22432:1 exit 1 from 'eval xsct /tmp/4x10GE-2017.09.12-16.17.33/work/plnx_aarch64-xilinx-linux/fsbl/2017.2+gitAUTOINC+122565ec40-r0/app.tcl -ws /home/bryanloz/ZCU102_4PES/4x10GE-Switch/Petalinux/4x10GE/build/../components/plnx_workspace -pname fsbl -rp /proj/petalinux/released/Petalinux-v2017.2/petalinux-v2017.2_0619_1/tools/hsm/data/embeddedsw -processor psu_cortexa53_0 -hdf /tmp/4x10GE-2017.09.12-16.17.33/deploy/images/plnx_aarch64/Xilinx-plnx_aarch64.hdf -arch 64 ${APP_ARG} ${MISC_ARG}' ERROR: Function failed: do_configure (log file is located at /tmp/4x10GE-2017.09.12-16.17.33/work/plnx_aarch64-xilinx-linux/fsbl/2017.2+gitAUTOINC+122565ec40-r0/temp/log.do_configure.22432)
解决方案
The following work-arounds can be used to overcome this issue
1) Increase the timeout in XSCT.
Create a file with name .xsdbrc in the $HOME directory Add the line below in the .xsdbrc file configparams-sdk-launch-timeout 180
2) Clean up using the following commands:
rm -rf ~/.Xil rm -rf ~/.Xilinx Note: This error could be due to a resource constraint on the PC.
The minimum configuration required for PetaLinux tool installation is 8 cores and 8GB RAM (This is not corrected in 2016.4-2017.2 (UG1144) documentation).
Ideally one project should be built at a time.
If you want to run projects in parallel, set parallel threads and configure execution in petalinux-config->Yocto Settings to lower values which match your system configuration.
[liuwanpeng@localhost xilinx-zcu102-2017.2]$ cd ~ [liuwanpeng@localhost ~]$ echo $HOME /home/liuwanpeng [liuwanpeng@localhost ~]$ pwd /home/liuwanpeng [liuwanpeng@localhost ~]$ touch .xsdbrc [liuwanpeng@localhost ~]$ gedit .xsdbrc [liuwanpeng@localhost ~]$ rm -rf ~/.Xil [liuwanpeng@localhost ~]$ rm -rf ~/.Xilinx
无效,提示source xxxx/.xsdbrc error。 增加x权限再试,没用
==按技术支持提供的方法:== https://forums.xilinx.com/xlnx/board/crawl_message?board.id=EDK&message.id=41823 Xilinx 2016.4 - xsct - Timeout while building fsbl and pmu-firmware Re: Xilinx 2016.4 - xsct - Timeout while building fsbl and pmu-firmware Options 10-03-2017 02:05 AM The reason for failure is xsct uses a locking mechanism which is by default set to /home/user/ you have to change this in fsbl and pmufw recipes add this two lines export _JAVA_OPTIONS _JAVA_OPTIONS = "-Duser.home=${TMPDIR}/xsctenv"
有两个fsbl文件 ./project-spec/meta-plnx-generated/recipes-bsp/fsbl/fsbl_%.bbappend ./project-spec/meta-user/recipes-bsp/fsbl/fsbl_%.bbappend 一个mufw ./project-spec/meta-plnx-generated/recipes-bsp/pmu/pmu-firmware_%.bbappend 都加上
我擦,真的编过去了,用了上面的方法:
[liuwanpeng@localhost xilinx-zcu102-2017.2]$ petalinux-build [INFO] building project [INFO] sourcing bitbake INFO: bitbake petalinux-user-image Loading cache: 100% |############################################| Time: 0:00:02 Loaded 3235 entries from dependency cache. Parsing recipes: 100% |##########################################| Time: 0:00:07 Parsing of 2446 .bb files complete (2407 cached, 39 parsed). 3236 targets, 224 skipped, 0 masked, 0 errors. NOTE: Resolving any missing task queue dependencies Initialising tasks: 100% |#######################################| Time: 0:00:40 Checking sstate mirror object availability: 100% |###############| Time: 0:00:17 NOTE: Executing SetScene Tasks NOTE: Executing RunQueue Tasks fsbl-2017.2+gitAUTOINC+122565ec40-r0 do_compile: NOTE: fsbl: compiling from external source tree /opt/pkg/petalinux/tools/hsm/data/embeddedsw pmu-firmware-2017.2+gitAUTOINC+122565ec40-r0 do_compile: NOTE: pmu-firmware: compiling from external source tree /opt/pkg/petalinux/tools/hsm/data/embeddedsw NOTE: Tasks Summary: Attempted 2445 tasks of which 1869 didn't need to be rerun and all succeeded. INFO: generating FIT Image INFO: bitbake petalinux-user-image -R /home/liuwanpeng/mpsoc/xilinx-zcu102-2017.2/build/conf/fit-image.conf Parsing recipes: 100% |##########################################| Time: 0:04:21 Parsing of 2446 .bb files complete (0 cached, 2446 parsed). 3236 targets, 224 skipped, 0 masked, 0 errors. NOTE: Resolving any missing task queue dependencies Initialising tasks: 100% |#######################################| Time: 0:00:21 Checking sstate mirror object availability: 100% |###############| Time: 0:00:03 NOTE: Executing SetScene Tasks NOTE: Executing RunQueue Tasks NOTE: Tasks Summary: Attempted 2446 tasks of which 2419 didn't need to be rerun and all succeeded. INFO: Copying Images from deploy to images INFO: Creating images/linux directory [INFO] successfully built project转载于:https://www.cnblogs.com/liuwanpeng/p/8074051.html