Libreoffice android build on Ubuntu - libreoffice

I'm trying to build libreoffice android on ubuntu15.04(64 bit),I followed https://wiki.documentfoundation.org/Development/Android#How_to_build_it, but when I run 'make', I got error
checking for a usable iconv... no
checking for FT_Get_Next_Char... yes
checking for FT_Get_BDF_Property... yes
checking for FT_Get_PS_Font_Info... yes
checking for FT_Has_PS_Glyph_Names... yes
checking for FT_Get_X11_Font_Format... yes
checking for FT_Select_Size... yes
checking for FT_Bitmap_Size.y_ppem... yes
checking expat.h usability... yes
checking expat.h presence... yes
checking for expat.h... yes
checking for XML_SetDoctypeDeclHandler... no
configure: WARNING: Cannot find usable expat library. Trying to use libxml2 as fallback.
checking pkg-config is at least version 0.9.0... yes
checking for LIBXML2... yes
checking for docbook2html... no
DOCMAN3 FcAtomicCreate.3 FcAtomicLock.3 FcAtomicNewFile.3 FcAtomicOrigFile.3 FcAtomicReplaceOrig.3 FcAtomicDeleteNew.3 FcAtomicUnlock.3 FcAtomicDestroy.3 FcBlanksCreate.3 FcBlanksDestroy.3 FcBlanksAdd.3 FcBlanksIsMember.3 FcCacheDir.3 FcCacheCopySet.3 FcCacheSubdir.3 FcCacheNumSubdir.3 FcCacheNumFont.3 FcCharSetCreate.3 FcCharSetDestroy.3 FcCharSetAddChar.3 FcCharSetCopy.3 FcCharSetEqual.3 FcCharSetIntersect.3 FcCharSetUnion.3 FcCharSetSubtract.3 FcCharSetMerge.3 FcCharSetHasChar.3 FcCharSetCount.3 FcCharSetIntersectCount.3 FcCharSetSubtractCount.3 FcCharSetIsSubset.3 FcCharSetFirstPage.3 FcCharSetNextPage.3 FcCharSetCoverage.3 FcCharSetNew.3 FcConfigCreate.3 FcConfigReference.3 FcConfigDestroy.3 FcConfigSetCurrent.3 FcConfigGetCurrent.3 FcConfigUptoDate.3 FcConfigHome.3 FcConfigEnableHome.3 FcConfigBuildFonts.3 FcConfigGetConfigDirs.3 FcConfigGetFontDirs.3 FcConfigGetConfigFiles.3 FcConfigGetCache.3 FcConfigGetCacheDirs.3 FcConfigGetFonts.3 FcConfigGetBlanks.3 FcConfigGetRescanInterval.3 FcConfigSetRescanInterval.3 FcConfigAppFontAddFile.3 FcConfigAppFontAddDir.3 FcConfigAppFontClear.3 FcConfigSubstituteWithPat.3 FcConfigSubstitute.3 FcFontMatch.3 FcFontSort.3 FcFontRenderPrepare.3 FcFontList.3 FcConfigFilename.3 FcConfigParseAndLoad.3 FcNameRegisterConstants.3 FcNameUnregisterConstants.3 FcNameGetConstant.3 FcNameConstant.3 FcDirCacheUnlink.3 FcDirCacheValid.3 FcDirCacheLoad.3 FcDirCacheRead.3 FcDirCacheLoadFile.3 FcDirCacheUnload.3 FcFileScan.3 FcFileIsDir.3 FcDirScan.3 FcDirSave.3 FcFontSetCreate.3 FcFontSetDestroy.3 FcFontSetAdd.3 FcFontSetList.3 FcFontSetMatch.3 FcFontSetPrint.3 FcFontSetSort.3 FcFontSetSortDestroy.3 FcPatternFormat.3 FcFreeTypeCharIndex.3 FcFreeTypeCharSet.3 FcFreeTypeCharSetAndSpacing.3 FcFreeTypeQuery.3 FcFreeTypeQueryFace.3 FcInitLoadConfig.3 FcInitLoadConfigAndFonts.3 FcInit.3 FcFini.3 FcGetVersion.3 FcInitReinitialize.3 FcInitBringUptoDate.3 FcLangSetCreate.3 FcLangSetDestroy.3 FcLangSetCopy.3 FcLangSetAdd.3 FcLangSetCompare.3 FcLangSetContains.3 FcLangSetEqual.3 FcLangSetHash.3 FcLangSetHasLang.3 FcLangSetGetLangs.3 FcGetLangs.3 FcLangGetCharSet.3 FcMatrixInit.3 FcMatrixCopy.3 FcMatrixEqual.3 FcMatrixMultiply.3 FcMatrixRotate.3 FcMatrixScale.3 FcMatrixShear.3 FcObjectSetCreate.3 FcObjectSetAdd.3 FcObjectSetDestroy.3 FcObjectSetBuild.3 FcNameRegisterObjectTypes.3 FcNameUnregisterObjectTypes.3 FcNameGetObjectType.3 FcPatternCreate.3 FcPatternDuplicate.3 FcPatternReference.3 FcPatternDestroy.3 FcPatternEqual.3 FcPatternEqualSubset.3 FcPatternFilter.3 FcPatternHash.3 FcPatternAdd.3 FcPatternAddWeak.3 FcPatternAdd-Type.3 FcPatternGet.3 FcPatternGet-Type.3 FcPatternBuild.3 FcPatternDel.3 FcPatternRemove.3 FcPatternPrint.3 FcDefaultSubstitute.3 FcNameParse.3 FcNameUnparse.3 FcUtf8ToUcs4.3 FcUcs4ToUtf8.3 FcUtf8Len.3 FcUtf16ToUcs4.3 FcUtf16Len.3 FcIsLower.3 FcIsUpper.3 FcToLower.3 FcStrCopy.3 FcStrDowncase.3 FcStrCopyFilename.3 FcStrCmp.3 FcStrCmpIgnoreCase.3 FcStrStr.3 FcStrStrIgnoreCase.3 FcStrPlus.3 FcStrFree.3 FcStrDirname.3 FcStrBasename.3 FcStrSetCreate.3 FcStrSetMember.3 FcStrSetEqual.3 FcStrSetAdd.3 FcStrSetAddFilename.3 FcStrSetDel.3 FcStrSetDestroy.3 FcStrListCreate.3 FcStrListNext.3 FcStrListDone.3 FcValueDestroy.3 FcValueSave.3 FcValuePrint.3 FcValueEqual.3
configure: creating ./config.status
config.status: creating Makefile
config.status: creating fontconfig/Makefile
config.status: creating fc-lang/Makefile
config.status: creating fc-glyphname/Makefile
config.status: creating fc-case/Makefile
config.status: creating fc-arch/Makefile
config.status: creating src/Makefile
config.status: creating conf.d/Makefile
config.status: creating fc-cache/Makefile
config.status: creating fc-cat/Makefile
config.status: creating fc-list/Makefile
config.status: creating fc-match/Makefile
config.status: creating fc-query/Makefile
config.status: creating fc-scan/Makefile
config.status: creating doc/Makefile
config.status: creating doc/version.sgml
config.status: creating test/Makefile
config.status: creating fontconfig.spec
config.status: creating fontconfig.pc
config.status: creating fontconfig-zip
config.status: creating config.h
config.status: config.h is unchanged
config.status: executing depfiles commands
config.status: executing libtool commands
Making all in fontconfig
Making all in fc-case
Making all in fc-lang
Making all in fc-glyphname
Making all in fc-arch
Making all in src
CC fcxml.lo
libtool: compile: /home/sc/core/external/android-ndk/toolchains/arm-linux-androideabi-4.9/prebuilt/linux-x86_64/bin/arm-linux-androideabi-gcc -mthumb -march=armv7-a -mfloat-abi=softfp -mfpu=neon -Wl,--fix-cortex-a8 -ffunction-sections -fdata-sections -L/home/sc/core/external/android-ndk/sources/cxx-stl/gnu-libstdc++/4.9/libs/armeabi-v7a --sysroot=/home/sc/core/external/android-ndk/platforms/android-15/arch-arm -Wno-psabi -fuse-ld=gold -DHAVE_CONFIG_H -I. -I.. -I.. -I../src -I/home/sc/core/workdir/UnpackedTarball/freetype/instdir/include/freetype2 -I/home/sc/core/workdir/UnpackedTarball/freetype/instdir/include -I/usr/include/libxml2 -Wall -Wpointer-arith -Wstrict-prototypes -Wmissing-prototypes -Wmissing-declarations -Wnested-externs -fno-strict-aliasing -DFC_CACHEDIR=\"/usr/local/var/cache/fontconfig\" -DFONTCONFIG_PATH=\"/usr/local/etc/fonts\" -DHAVE_GCC_VISIBILITY_FEATURE -fvisibility=hidden -MT fcxml.lo -MD -MP -MF .deps/fcxml.Tpo -c fcxml.c -o fcxml.o
In file included from /usr/include/libxml2/libxml/parser.h:810:0,
from fcxml.c:32:
/usr/include/libxml2/libxml/encoding.h:28:19: fatal error: iconv.h: No such file or directory
#include <iconv.h>
^
compilation terminated.
Makefile:468: recipe for target 'fcxml.lo' failed
make[5]: *** [fcxml.lo] Error 1
Makefile:354: recipe for target 'all' failed
make[4]: *** [all] Error 2
Makefile:447: recipe for target 'all-recursive' failed
make[3]: *** [all-recursive] Error 1
Makefile:330: recipe for target 'all' failed
make[2]: *** [all] Error 2
I have 2 question:
1.What steps should I do but I don't?
2.I just want see office documents,there is a need to establish the whole environment?

Related

Update custom device tree on yocto

I am using the sama5d27-wlsom1-ek board for my demo and I am trying to make changes to the device tree.
So far I have compiled core-image-minimal and find my dtb files are generated in
/tmp/work/sama5d27_wlsom1_ek_sd-poky-linux-gnueabi/linux-at91/5.4+gitAUTOINC+3dba8c9991-r0/build/arch/arm/boot/dts
folder.
Also I find many different dts files in
build/tmp/work-shared/sama5d27-wlsom1-ek-sd/kernel-source/arch/arm/boot/dts
But where does my machine get device tree files if they are generated inside the build folder and if I use my custom dts file how do I update them?
I want to build the image using my custom.dts file where I enable certain peripherals and disable the ones not required. (A test to customize dtb's in future).
I tried different methods found here
How to use an own device tree and modified kernel config in Yocto?
as well as
Quick rebuild of device tree only with Yocto/bitbake?
I created a new meta-local layer and added it to bblayer
followed by recipetool command to add my dts file to the new layer. Added KERNEL_DEVICETREE += "custom.dtb" to the .bbappend file generated inside meta-local and then run bitbake build image command so far
But, I seem to run into the following errors when I try to build the image.
Loading cache: 100% |############################################| Time: 0:00:00
Loaded 3474 entries from dependency cache.
Parsing recipes: 100% |##########################################| Time: 0:00:00
Parsing of 2309 .bb files complete (2307 cached, 2 parsed). 3476 targets, 358 skipped, 0 masked, 0 errors.
NOTE: Resolving any missing task queue dependencies
Build Configuration:
BB_VERSION = "1.46.0"
BUILD_SYS = "x86_64-linux"
NATIVELSBSTRING = "universal"
TARGET_SYS = "arm-poky-linux-gnueabi"
MACHINE = "sama5d27-wlsom1-ek-sd"
DISTRO = "poky-atmel"
DISTRO_VERSION = "3.1.7"
TUNE_FEATURES = "arm vfp cortexa5 neon vfpv4 thumb callconvention-hard"
TARGET_FPU = "hard"
meta
meta-poky
meta-yocto-bsp = "dunfell:97a9f30f1c457c55bf0c791d0466ff8620110a49"
meta-oe
meta-networking
meta-webserver
meta-python
meta-initramfs = "dunfell:2915810edbb6599051e30efb3b7f805665ddcc23"
meta-atmel = "dunfell:d6e30f2c0e3592ed11f3a4c8380a14d0a9066ba6"
meta-multimedia = "dunfell:2915810edbb6599051e30efb3b7f805665ddcc23"
meta-aws = "dunfell:2e2a1c65603dc5d11349e25dc9470a65cbeb8e65"
meta-freshair
meta-local
workspace = "dunfell:97a9f30f1c457c55bf0c791d0466ff8620110a49"
Initialising tasks: 100% |#######################################| Time: 0:00:04
Sstate summary: Wanted 294 Found 262 Missed 32 Current 2095 (89% match, 98% complete)
NOTE: Executing Tasks
ERROR: linux-at91-5.4+gitAUTOINC+3dba8c9991-r0 do_compile: oe_runmake failed
ERROR: linux-at91-5.4+gitAUTOINC+3dba8c9991-r0 do_compile: Execution of '/home/fakhruddin/workspace/Freshair/my_dir/poky/build/tmp/work/sama5d27_wlsom1_ek_sd-poky-linux-gnueabi/linux-at91/5.4+gitAUTOINC+3dba8c9991-r0/temp/run.do_compile.57871' failed with exit code 1:
GEN Makefile
CALL /home/fakhruddin/workspace/Freshair/my_dir/poky/build/tmp/work-shared/sama5d27-wlsom1-ek-sd/kernel-source/scripts/atomic/check-atomics.sh
CALL /home/fakhruddin/workspace/Freshair/my_dir/poky/build/tmp/work-shared/sama5d27-wlsom1-ek-sd/kernel-source/scripts/checksyscalls.sh
CHK include/generated/compile.h
Kernel: arch/arm/boot/Image is ready
Kernel: arch/arm/boot/zImage is ready
make[2]: *** No rule to make target 'arch/arm/boot/dts/new_name.dtb'. Stop.
make[1]: *** [/home/fakhruddin/workspace/Freshair/my_dir/poky/build/tmp/work-shared/sama5d27-wlsom1-ek-sd/kernel-source/Makefile:1265: new_name.dtb] Error 2
make: *** [/home/fakhruddin/workspace/Freshair/my_dir/poky/build/tmp/work-shared/sama5d27-wlsom1-ek-sd/kernel-source/Makefile:179: sub-make] Error 2
WARNING: exit code 1 from a shell command.
ERROR: Logfile of failure stored in: /home/fakhruddin/workspace/Freshair/my_dir/poky/build/tmp/work/sama5d27_wlsom1_ek_sd-poky-linux-gnueabi/linux-at91/5.4+gitAUTOINC+3dba8c9991-r0/temp/log.do_compile.57871
Log data follows:
| DEBUG: Executing shell function do_compile
| NOTE: KBUILD_BUILD_TIMESTAMP: Thu Jan 14 12:54:56 UTC 2021
| NOTE: make -j 12 HOSTCC=gcc -isystem/home/fakhruddin/workspace/Freshair/my_dir/poky/build/tmp/work/sama5d27_wlsom1_ek_sd-poky-linux-gnueabi/linux-at91/5.4+gitAUTOINC+3dba8c9991-r0/recipe-sysroot-native/usr/include -O2 -pipe -L/home/fakhruddin/workspace/Freshair/my_dir/poky/build/tmp/work/sama5d27_wlsom1_ek_sd-poky-linux-gnueabi/linux-at91/5.4+gitAUTOINC+3dba8c9991-r0/recipe-sysroot-native/usr/lib -L/home/fakhruddin/workspace/Freshair/my_dir/poky/build/tmp/work/sama5d27_wlsom1_ek_sd-poky-linux-gnueabi/linux-at91/5.4+gitAUTOINC+3dba8c9991-r0/recipe-sysroot-native/lib -Wl,--enable-new-dtags -Wl,-rpath-link,/home/fakhruddin/workspace/Freshair/my_dir/poky/build/tmp/work/sama5d27_wlsom1_ek_sd-poky-linux-gnueabi/linux-at91/5.4+gitAUTOINC+3dba8c9991-r0/recipe-sysroot-native/usr/lib -Wl,-rpath-link,/home/fakhruddin/workspace/Freshair/my_dir/poky/build/tmp/work/sama5d27_wlsom1_ek_sd-poky-linux-gnueabi/linux-at91/5.4+gitAUTOINC+3dba8c9991-r0/recipe-sysroot-native/lib -Wl,-rpath,/home/fakhruddin/workspace/Freshair/my_dir/poky/build/tmp/work/sama5d27_wlsom1_ek_sd-poky-linux-gnueabi/linux-at91/5.4+gitAUTOINC+3dba8c9991-r0/recipe-sysroot-native/usr/lib -Wl,-rpath,/home/fakhruddin/workspace/Freshair/my_dir/poky/build/tmp/work/sama5d27_wlsom1_ek_sd-poky-linux-gnueabi/linux-at91/5.4+gitAUTOINC+3dba8c9991-r0/recipe-sysroot-native/lib -Wl,-O1 -Wl,--allow-shlib-undefined -Wl,--dynamic-linker=/home/fakhruddin/workspace/Freshair/my_dir/poky/build/tmp/sysroots-uninative/x86_64-linux/lib/ld-linux-x86-64.so.2 HOSTCPP=gcc -E HOSTCXX=g++ -isystem/home/fakhruddin/workspace/Freshair/my_dir/poky/build/tmp/work/sama5d27_wlsom1_ek_sd-poky-linux-gnueabi/linux-at91/5.4+gitAUTOINC+3dba8c9991-r0/recipe-sysroot-native/usr/include -O2 -pipe -L/home/fakhruddin/workspace/Freshair/my_dir/poky/build/tmp/work/sama5d27_wlsom1_ek_sd-poky-linux-gnueabi/linux-at91/5.4+gitAUTOINC+3dba8c9991-r0/recipe-sysroot-native/usr/lib -L/home/fakhruddin/workspace/Freshair/my_dir/poky/build/tmp/work/sama5d27_wlsom1_ek_sd-poky-linux-gnueabi/linux-at91/5.4+gitAUTOINC+3dba8c9991-r0/recipe-sysroot-native/lib -Wl,--enable-new-dtags -Wl,-rpath-link,/home/fakhruddin/workspace/Freshair/my_dir/poky/build/tmp/work/sama5d27_wlsom1_ek_sd-poky-linux-gnueabi/linux-at91/5.4+gitAUTOINC+3dba8c9991-r0/recipe-sysroot-native/usr/lib -Wl,-rpath-link,/home/fakhruddin/workspace/Freshair/my_dir/poky/build/tmp/work/sama5d27_wlsom1_ek_sd-poky-linux-gnueabi/linux-at91/5.4+gitAUTOINC+3dba8c9991-r0/recipe-sysroot-native/lib -Wl,-rpath,/home/fakhruddin/workspace/Freshair/my_dir/poky/build/tmp/work/sama5d27_wlsom1_ek_sd-poky-linux-gnueabi/linux-at91/5.4+gitAUTOINC+3dba8c9991-r0/recipe-sysroot-native/usr/lib -Wl,-rpath,/home/fakhruddin/workspace/Freshair/my_dir/poky/build/tmp/work/sama5d27_wlsom1_ek_sd-poky-linux-gnueabi/linux-at91/5.4+gitAUTOINC+3dba8c9991-r0/recipe-sysroot-native/lib -Wl,-O1 -Wl,--allow-shlib-undefined -Wl,--dynamic-linker=/home/fakhruddin/workspace/Freshair/my_dir/poky/build/tmp/sysroots-uninative/x86_64-linux/lib/ld-linux-x86-64.so.2 zImage CC=arm-poky-linux-gnueabi-gcc -mno-thumb-interwork -marm -fuse-ld=bfd -fmacro-prefix-map=/home/fakhruddin/workspace/Freshair/my_dir/poky/build/tmp/work/sama5d27_wlsom1_ek_sd-poky-linux-gnueabi/linux-at91/5.4+gitAUTOINC+3dba8c9991-r0=/usr/src/debug/linux-at91/5.4+gitAUTOINC+3dba8c9991-r0 -fdebug-prefix-map=/home/fakhruddin/workspace/Freshair/my_dir/poky/build/tmp/work/sama5d27_wlsom1_ek_sd-poky-linux-gnueabi/linux-at91/5.4+gitAUTOINC+3dba8c9991-r0=/usr/src/debug/linux-at91/5.4+gitAUTOINC+3dba8c9991-r0 -fdebug-prefix-map=/home/fakhruddin/workspace/Freshair/my_dir/poky/build/tmp/work/sama5d27_wlsom1_ek_sd-poky-linux-gnueabi/linux-at91/5.4+gitAUTOINC+3dba8c9991-r0/recipe-sysroot= -fdebug-prefix-map=/home/fakhruddin/workspace/Freshair/my_dir/poky/build/tmp/work/sama5d27_wlsom1_ek_sd-poky-linux-gnueabi/linux-at91/5.4+gitAUTOINC+3dba8c9991-r0/recipe-sysroot-native= -fdebug-prefix-map=/home/fakhruddin/workspace/Freshair/my_dir/poky/build/tmp/work-shared/sama5d27-wlsom1-ek-sd/kernel-source=/usr/src/kernel LD=arm-poky-linux-gnueabi-ld.bfd
| GEN Makefile
| CALL /home/fakhruddin/workspace/Freshair/my_dir/poky/build/tmp/work-shared/sama5d27-wlsom1-ek-sd/kernel-source/scripts/atomic/check-atomics.sh
| CALL /home/fakhruddin/workspace/Freshair/my_dir/poky/build/tmp/work-shared/sama5d27-wlsom1-ek-sd/kernel-source/scripts/checksyscalls.sh
| CHK include/generated/compile.h
| Kernel: arch/arm/boot/Image is ready
| Kernel: arch/arm/boot/zImage is ready
| NOTE: make -j 12 HOSTCC=gcc -isystem/home/fakhruddin/workspace/Freshair/my_dir/poky/build/tmp/work/sama5d27_wlsom1_ek_sd-poky-linux-gnueabi/linux-at91/5.4+gitAUTOINC+3dba8c9991-r0/recipe-sysroot-native/usr/include -O2 -pipe -L/home/fakhruddin/workspace/Freshair/my_dir/poky/build/tmp/work/sama5d27_wlsom1_ek_sd-poky-linux-gnueabi/linux-at91/5.4+gitAUTOINC+3dba8c9991-r0/recipe-sysroot-native/usr/lib -L/home/fakhruddin/workspace/Freshair/my_dir/poky/build/tmp/work/sama5d27_wlsom1_ek_sd-poky-linux-gnueabi/linux-at91/5.4+gitAUTOINC+3dba8c9991-r0/recipe-sysroot-native/lib -Wl,--enable-new-dtags -Wl,-rpath-link,/home/fakhruddin/workspace/Freshair/my_dir/poky/build/tmp/work/sama5d27_wlsom1_ek_sd-poky-linux-gnueabi/linux-at91/5.4+gitAUTOINC+3dba8c9991-r0/recipe-sysroot-native/usr/lib -Wl,-rpath-link,/home/fakhruddin/workspace/Freshair/my_dir/poky/build/tmp/work/sama5d27_wlsom1_ek_sd-poky-linux-gnueabi/linux-at91/5.4+gitAUTOINC+3dba8c9991-r0/recipe-sysroot-native/lib -Wl,-rpath,/home/fakhruddin/workspace/Freshair/my_dir/poky/build/tmp/work/sama5d27_wlsom1_ek_sd-poky-linux-gnueabi/linux-at91/5.4+gitAUTOINC+3dba8c9991-r0/recipe-sysroot-native/usr/lib -Wl,-rpath,/home/fakhruddin/workspace/Freshair/my_dir/poky/build/tmp/work/sama5d27_wlsom1_ek_sd-poky-linux-gnueabi/linux-at91/5.4+gitAUTOINC+3dba8c9991-r0/recipe-sysroot-native/lib -Wl,-O1 -Wl,--allow-shlib-undefined -Wl,--dynamic-linker=/home/fakhruddin/workspace/Freshair/my_dir/poky/build/tmp/sysroots-uninative/x86_64-linux/lib/ld-linux-x86-64.so.2 HOSTCPP=gcc -E HOSTCXX=g++ -isystem/home/fakhruddin/workspace/Freshair/my_dir/poky/build/tmp/work/sama5d27_wlsom1_ek_sd-poky-linux-gnueabi/linux-at91/5.4+gitAUTOINC+3dba8c9991-r0/recipe-sysroot-native/usr/include -O2 -pipe -L/home/fakhruddin/workspace/Freshair/my_dir/poky/build/tmp/work/sama5d27_wlsom1_ek_sd-poky-linux-gnueabi/linux-at91/5.4+gitAUTOINC+3dba8c9991-r0/recipe-sysroot-native/usr/lib -L/home/fakhruddin/workspace/Freshair/my_dir/poky/build/tmp/work/sama5d27_wlsom1_ek_sd-poky-linux-gnueabi/linux-at91/5.4+gitAUTOINC+3dba8c9991-r0/recipe-sysroot-native/lib -Wl,--enable-new-dtags -Wl,-rpath-link,/home/fakhruddin/workspace/Freshair/my_dir/poky/build/tmp/work/sama5d27_wlsom1_ek_sd-poky-linux-gnueabi/linux-at91/5.4+gitAUTOINC+3dba8c9991-r0/recipe-sysroot-native/usr/lib -Wl,-rpath-link,/home/fakhruddin/workspace/Freshair/my_dir/poky/build/tmp/work/sama5d27_wlsom1_ek_sd-poky-linux-gnueabi/linux-at91/5.4+gitAUTOINC+3dba8c9991-r0/recipe-sysroot-native/lib -Wl,-rpath,/home/fakhruddin/workspace/Freshair/my_dir/poky/build/tmp/work/sama5d27_wlsom1_ek_sd-poky-linux-gnueabi/linux-at91/5.4+gitAUTOINC+3dba8c9991-r0/recipe-sysroot-native/usr/lib -Wl,-rpath,/home/fakhruddin/workspace/Freshair/my_dir/poky/build/tmp/work/sama5d27_wlsom1_ek_sd-poky-linux-gnueabi/linux-at91/5.4+gitAUTOINC+3dba8c9991-r0/recipe-sysroot-native/lib -Wl,-O1 -Wl,--allow-shlib-undefined -Wl,--dynamic-linker=/home/fakhruddin/workspace/Freshair/my_dir/poky/build/tmp/sysroots-uninative/x86_64-linux/lib/ld-linux-x86-64.so.2 at91-sama5d27_wlsom1_ek.dtb CC=arm-poky-linux-gnueabi-gcc -mno-thumb-interwork -marm -fuse-ld=bfd -fmacro-prefix-map=/home/fakhruddin/workspace/Freshair/my_dir/poky/build/tmp/work/sama5d27_wlsom1_ek_sd-poky-linux-gnueabi/linux-at91/5.4+gitAUTOINC+3dba8c9991-r0=/usr/src/debug/linux-at91/5.4+gitAUTOINC+3dba8c9991-r0 -fdebug-prefix-map=/home/fakhruddin/workspace/Freshair/my_dir/poky/build/tmp/work/sama5d27_wlsom1_ek_sd-poky-linux-gnueabi/linux-at91/5.4+gitAUTOINC+3dba8c9991-r0=/usr/src/debug/linux-at91/5.4+gitAUTOINC+3dba8c9991-r0 -fdebug-prefix-map=/home/fakhruddin/workspace/Freshair/my_dir/poky/build/tmp/work/sama5d27_wlsom1_ek_sd-poky-linux-gnueabi/linux-at91/5.4+gitAUTOINC+3dba8c9991-r0/recipe-sysroot= -fdebug-prefix-map=/home/fakhruddin/workspace/Freshair/my_dir/poky/build/tmp/work/sama5d27_wlsom1_ek_sd-poky-linux-gnueabi/linux-at91/5.4+gitAUTOINC+3dba8c9991-r0/recipe-sysroot-native= -fdebug-prefix-map=/home/fakhruddin/workspace/Freshair/my_dir/poky/build/tmp/work-shared/sama5d27-wlsom1-ek-sd/kernel-source=/usr/src/kernel LD=arm-poky-linux-gnueabi-ld.bfd
| NOTE: make -j 12 HOSTCC=gcc -isystem/home/fakhruddin/workspace/Freshair/my_dir/poky/build/tmp/work/sama5d27_wlsom1_ek_sd-poky-linux-gnueabi/linux-at91/5.4+gitAUTOINC+3dba8c9991-r0/recipe-sysroot-native/usr/include -O2 -pipe -L/home/fakhruddin/workspace/Freshair/my_dir/poky/build/tmp/work/sama5d27_wlsom1_ek_sd-poky-linux-gnueabi/linux-at91/5.4+gitAUTOINC+3dba8c9991-r0/recipe-sysroot-native/usr/lib -L/home/fakhruddin/workspace/Freshair/my_dir/poky/build/tmp/work/sama5d27_wlsom1_ek_sd-poky-linux-gnueabi/linux-at91/5.4+gitAUTOINC+3dba8c9991-r0/recipe-sysroot-native/lib -Wl,--enable-new-dtags -Wl,-rpath-link,/home/fakhruddin/workspace/Freshair/my_dir/poky/build/tmp/work/sama5d27_wlsom1_ek_sd-poky-linux-gnueabi/linux-at91/5.4+gitAUTOINC+3dba8c9991-r0/recipe-sysroot-native/usr/lib -Wl,-rpath-link,/home/fakhruddin/workspace/Freshair/my_dir/poky/build/tmp/work/sama5d27_wlsom1_ek_sd-poky-linux-gnueabi/linux-at91/5.4+gitAUTOINC+3dba8c9991-r0/recipe-sysroot-native/lib -Wl,-rpath,/home/fakhruddin/workspace/Freshair/my_dir/poky/build/tmp/work/sama5d27_wlsom1_ek_sd-poky-linux-gnueabi/linux-at91/5.4+gitAUTOINC+3dba8c9991-r0/recipe-sysroot-native/usr/lib -Wl,-rpath,/home/fakhruddin/workspace/Freshair/my_dir/poky/build/tmp/work/sama5d27_wlsom1_ek_sd-poky-linux-gnueabi/linux-at91/5.4+gitAUTOINC+3dba8c9991-r0/recipe-sysroot-native/lib -Wl,-O1 -Wl,--allow-shlib-undefined -Wl,--dynamic-linker=/home/fakhruddin/workspace/Freshair/my_dir/poky/build/tmp/sysroots-uninative/x86_64-linux/lib/ld-linux-x86-64.so.2 HOSTCPP=gcc -E HOSTCXX=g++ -isystem/home/fakhruddin/workspace/Freshair/my_dir/poky/build/tmp/work/sama5d27_wlsom1_ek_sd-poky-linux-gnueabi/linux-at91/5.4+gitAUTOINC+3dba8c9991-r0/recipe-sysroot-native/usr/include -O2 -pipe -L/home/fakhruddin/workspace/Freshair/my_dir/poky/build/tmp/work/sama5d27_wlsom1_ek_sd-poky-linux-gnueabi/linux-at91/5.4+gitAUTOINC+3dba8c9991-r0/recipe-sysroot-native/usr/lib -L/home/fakhruddin/workspace/Freshair/my_dir/poky/build/tmp/work/sama5d27_wlsom1_ek_sd-poky-linux-gnueabi/linux-at91/5.4+gitAUTOINC+3dba8c9991-r0/recipe-sysroot-native/lib -Wl,--enable-new-dtags -Wl,-rpath-link,/home/fakhruddin/workspace/Freshair/my_dir/poky/build/tmp/work/sama5d27_wlsom1_ek_sd-poky-linux-gnueabi/linux-at91/5.4+gitAUTOINC+3dba8c9991-r0/recipe-sysroot-native/usr/lib -Wl,-rpath-link,/home/fakhruddin/workspace/Freshair/my_dir/poky/build/tmp/work/sama5d27_wlsom1_ek_sd-poky-linux-gnueabi/linux-at91/5.4+gitAUTOINC+3dba8c9991-r0/recipe-sysroot-native/lib -Wl,-rpath,/home/fakhruddin/workspace/Freshair/my_dir/poky/build/tmp/work/sama5d27_wlsom1_ek_sd-poky-linux-gnueabi/linux-at91/5.4+gitAUTOINC+3dba8c9991-r0/recipe-sysroot-native/usr/lib -Wl,-rpath,/home/fakhruddin/workspace/Freshair/my_dir/poky/build/tmp/work/sama5d27_wlsom1_ek_sd-poky-linux-gnueabi/linux-at91/5.4+gitAUTOINC+3dba8c9991-r0/recipe-sysroot-native/lib -Wl,-O1 -Wl,--allow-shlib-undefined -Wl,--dynamic-linker=/home/fakhruddin/workspace/Freshair/my_dir/poky/build/tmp/sysroots-uninative/x86_64-linux/lib/ld-linux-x86-64.so.2 new_name.dtb CC=arm-poky-linux-gnueabi-gcc -mno-thumb-interwork -marm -fuse-ld=bfd -fmacro-prefix-map=/home/fakhruddin/workspace/Freshair/my_dir/poky/build/tmp/work/sama5d27_wlsom1_ek_sd-poky-linux-gnueabi/linux-at91/5.4+gitAUTOINC+3dba8c9991-r0=/usr/src/debug/linux-at91/5.4+gitAUTOINC+3dba8c9991-r0 -fdebug-prefix-map=/home/fakhruddin/workspace/Freshair/my_dir/poky/build/tmp/work/sama5d27_wlsom1_ek_sd-poky-linux-gnueabi/linux-at91/5.4+gitAUTOINC+3dba8c9991-r0=/usr/src/debug/linux-at91/5.4+gitAUTOINC+3dba8c9991-r0 -fdebug-prefix-map=/home/fakhruddin/workspace/Freshair/my_dir/poky/build/tmp/work/sama5d27_wlsom1_ek_sd-poky-linux-gnueabi/linux-at91/5.4+gitAUTOINC+3dba8c9991-r0/recipe-sysroot= -fdebug-prefix-map=/home/fakhruddin/workspace/Freshair/my_dir/poky/build/tmp/work/sama5d27_wlsom1_ek_sd-poky-linux-gnueabi/linux-at91/5.4+gitAUTOINC+3dba8c9991-r0/recipe-sysroot-native= -fdebug-prefix-map=/home/fakhruddin/workspace/Freshair/my_dir/poky/build/tmp/work-shared/sama5d27-wlsom1-ek-sd/kernel-source=/usr/src/kernel LD=arm-poky-linux-gnueabi-ld.bfd
| make[2]: *** No rule to make target 'arch/arm/boot/dts/new_name.dtb'. Stop.
| make[1]: *** [/home/fakhruddin/workspace/Freshair/my_dir/poky/build/tmp/work-shared/sama5d27-wlsom1-ek-sd/kernel-source/Makefile:1265: new_name.dtb] Error 2
| make: *** [/home/fakhruddin/workspace/Freshair/my_dir/poky/build/tmp/work-shared/sama5d27-wlsom1-ek-sd/kernel-source/Makefile:179: sub-make] Error 2
| ERROR: oe_runmake failed
| WARNING: exit code 1 from a shell command.
| ERROR: Execution of '/home/fakhruddin/workspace/Freshair/my_dir/poky/build/tmp/work/sama5d27_wlsom1_ek_sd-poky-linux-gnueabi/linux-at91/5.4+gitAUTOINC+3dba8c9991-r0/temp/run.do_compile.57871' failed with exit code 1:
| GEN Makefile
| CALL /home/fakhruddin/workspace/Freshair/my_dir/poky/build/tmp/work-shared/sama5d27-wlsom1-ek-sd/kernel-source/scripts/atomic/check-atomics.sh
| CALL /home/fakhruddin/workspace/Freshair/my_dir/poky/build/tmp/work-shared/sama5d27-wlsom1-ek-sd/kernel-source/scripts/checksyscalls.sh
| CHK include/generated/compile.h
| Kernel: arch/arm/boot/Image is ready
| Kernel: arch/arm/boot/zImage is ready
| make[2]: *** No rule to make target 'arch/arm/boot/dts/new_name.dtb'. Stop.
| make[1]: *** [/home/fakhruddin/workspace/Freshair/my_dir/poky/build/tmp/work-shared/sama5d27-wlsom1-ek-sd/kernel-source/Makefile:1265: new_name.dtb] Error 2
| make: *** [/home/fakhruddin/workspace/Freshair/my_dir/poky/build/tmp/work-shared/sama5d27-wlsom1-ek-sd/kernel-source/Makefile:179: sub-make] Error 2
| WARNING: exit code 1 from a shell command.
|
ERROR: Task (/home/fakhruddin/workspace/Freshair/my_dir/poky/../meta-atmel/recipes-kernel/linux/linux-at91_5.4.81.bb:do_compile) failed with exit code '1'
NOTE: Tasks Summary: Attempted 6463 tasks of which 6457 didn't need to be rerun and 1 failed.
Summary: 1 task failed:
/home/fakhruddin/workspace/Freshair/my_dir/poky/../meta-atmel/recipes-kernel/linux/linux-at91_5.4.81.bb:do_compile
Summary: There were 2 ERROR messages shown, returning a non-zero exit code.
Please help and let me know if I missed any required information from my side.
Thank you and Regards,
Sohil
Linux kernel devices trees are located in :
/tmp/work/sama5d27_wlsom1_ek_sd-poky-linux-gnueabi/linux-at91/5.4+gitAUTOINC+3dba8c9991-r0/git/arch/arm/boot/dts
Note that sources are in git and final build is in build.
You have to make sure that new_name.dtb present in the main Makefile:
/tmp/work/sama5d27_wlsom1_ek_sd-poky-linux-gnueabi/linux-at91/5.4+gitAUTOINC+3dba8c9991-r0/git/arch/arm/boot/dts/Makfile
+dtb-$(CONFIG_SOC_AT91SAM9) += new_name.dtb
Now the new device tree must be added to the KERNEL_DEVICETREE variable and that tells Yocto what Kernel device trees to build and ship into the boot partition so that u-boot load one of them into RAM while booting the board:
KERNEL_DEVICETREE += "new_name.dtb"
Now, after you understand how device tree are placed in the kernel, you can make this automatic, you create a bbappend recipe to your linux-at91 kernel main recipe and add your custom device tree there.
meta-local/
recipes-kernel/
linux/
files/
new_custom.dts
linux-at91_%.bbappend
Now, you need to copy your new dts file before compiling the kernel (do_compile) , the best moment is after do_configure:
FILESEXTRAPATHS_prepend := "${THISDIR}/files:"
SRC_URI_append = " file://new_custom.dts"
do_configure_append(){
cp ${WORKDIR}/new_custom.dts ${S}/arch/arm/boot/dts
echo "dtb-$(CONFIG_SOC_AT91SAM9) += new_dts.dtb" >> ${S}/arch/arm/boot/dts/Makefile
}
Now, your new device tree will be compiled, and any compilation errors may be due to syntax error.
After knowing that the device tree is compiled and added to KERNEL_DEVICETREE, this means that it is present in the boot partition along side with all other device trees also in KERNEL_DEVICETREE variable, but u-boot loads only one of them in the RAM before loading the Linux kernel, and that device tree is set in your u-boot target defconfig file present in:
/tmp/work/sama5d27_wlsom1_ek_sd-poky-linux-gnueabi/u-boot-.../<version>/git/configs/your_machine_defconfig
you can find your_machine_defconfig in UBOOT_CONFIG variable in your machine configuration file which is located in your board's BSP layer:
meta-<board>/conf/machine/<board>.conf
After locating the defconfig you can find a variable DEFAULT_FDT_FILE.
At first, do not change it, just build your image, and pause at uboot stage and printenv to see the fdt_file variable and set it to your new_name.dtb file and saveenv to save it for every boot.
If that is okay, you can now patch your uboot defconfig file to set the new device tree file.
Yocto tip:
${WORKDIR} in the Kernel recipe points to:
/tmp/work/sama5d27_wlsom1_ek_sd-poky-linux-gnueabi/linux-at91/5.4+gitAUTOINC+3dba8c9991-r0/
${S} point to the git directory under ${WORKDIR}
/tmp/work/sama5d27_wlsom1_ek_sd-poky-linux-gnueabi/linux-at91/5.4+gitAUTOINC+3dba8c9991-r0/git
that's why I copied the new device tree from ${WORKDIR}
I'd suggest using devtool modify linux-at91 to modify the linux kernel source-tree. This will create a linux-at91 folder in your ${TOPDIR}/workspace/sources/linux-at91. If you don't know your ${TOPDIR}, try to use bitbake -e <recipe-name> | grep "TOPDIR". bitbake -e will print your entire metadata for that recipe, here you can use grep to find the assignments of different variables. (like your KERNEL_DEVICETREE)
${TOPDIR}/workspace/sources/linux-at91
This will be the source tree for your linux-at91 recipe.
Copy your dts files into ${TOPDIR}/workspace/sources/linux-at91/arch/arm/boot/dts.
Modify the Makefile to include your dts, as pointed out by #BelHadjSalem TALEL (Thanks!).
Commit these changes and generate a patch.
In your own layer, under recipes-kernel/linux-at91/linux-at91 place this patch file. Add recipes-kernel/linux-at91/linux-at91.bbappend to include this patch as below:
FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:"
SRC_URI += "file://0001-add-dts-file.patch"
Now to build your custom-machine, add conf/machine/custom-machine.conf and add an entry for your custom KERNEL_DEVICETREE like shown here
# This will inherit your base machine
require conf/machine/sama5d27-wlsom1-ek-sd.conf
KERNEL_DEVICETREE = "your-dts-file.dtb"
Overall, your layer will have following files:
- conf/layer.conf
- conf/machine/custom-machine.conf (Contains the above settings)
- recipes-kernel/linux-at91/linux-at91/0001-add-dts-file.patch
- recipes-kernel/linux-at91/linux-at91/linux-at91.bbappend
Just for information on great response by #BelHadjSalem: instead of manually copying dts file by 'do_configure_append', we can use subdir too.
so instead of
do_configure_append() {
cp ${WORKDIR}/new_custom.dts ${S}/arch/arm/boot/dts
}
just we need:
SRC_URI_append = " file://new_custom.dts;subdir=git/arch/arm/boot/dts"

Buildroot not compiling

every time I run make
it starts compiling but then stops and tells me this:
tmp-divrem_1.s:130: Error: selected processor does not support `mls r1,r4,r8,r11' in ARM mode
tmp-divrem_1.s:146: Error: selected processor does not support `mls r1,r4,r8,r11' in ARM mode
tmp-divrem_1.s:159: Error: selected processor does not support `mls r1,r4,r8,r11' in ARM mode
tmp-divrem_1.s:176: Error: selected processor does not support `mls r1,r4,r3,r8' in ARM mode
tmp-divrem_1.s:210: Error: selected processor does not support `mls r11,r4,r12,r3' in ARM mode
make[3]: *** [Makefile:768: divrem_1.lo] Error 1
make[3]: *** Waiting for unfinished jobs....
libtool: compile: /usr/bin/gcc -DHAVE_CONFIG_H -I. -I.. -D__GMP_WITHIN_GMP -I.. -DOPERATION_fib2_ui -I/home/pi/buildroot/output/host/include -O2 -I/home/pi/buildroot/output/host/include -c fib2_ui.c -fPIC -DPIC -o .libs/fib2_ui.o
make[3]: Leaving directory '/home/pi/buildroot/output/build/host-gmp-6.2.1/mpn'
make[2]: *** [Makefile:997: all-recursive] Error 1
make[2]: Leaving directory '/home/pi/buildroot/output/build/host-gmp-6.2.1'
make[1]: *** [Makefile:787: all] Error 2
make[1]: Leaving directory '/home/pi/buildroot/output/build/host-gmp-6.2.1'
make: *** [package/pkg-generic.mk:250: /home/pi/buildroot/output/build/host-gmp-6.2.1/.stamp_built] Error 2```
From the config it looks like you're compiling for i586, not arm or aarch64.
If you type make list-defconfigs, then it will show you a list; here's an excerpt:
raspberrypi2_defconfig - Build for raspberrypi2
raspberrypi4_64_defconfig - Build for raspberrypi4_64
raspberrypi4_defconfig - Build for raspberrypi4
sheevaplug_defconfig - Build for sheevaplug
Once you have identified the defconfig you need, then you can do this:
make raspberrypi4_defconfig
and it'll initialize a basic configuration for the selected target. With this configuration, your compilation should run to completion.

How to use axi dma kernel module in custom application in petalinux?

I am trying to build the axidma-benchmark application with the Xilinx-axidma driver (Github repo) provided by bperez77.
I am using Petalinux 20.2 to build Linux for my custom project.
In the new version of the kernel, some functions are changed and I get some errors when running petalinux-build. I changed the driver files as mentioned here and build the kernel module successfully.
In the following, I create the custom application by running:
petalinux-create -t apps --name axidma-benchmark --enable
Then I copy the application files into the recipes-apps directory and append all C and header files to the SRC_URI List in the axidma-benchmark.bb as:
SRC_URI = "file://axidma-benchmark.c \
file://axidma_ioctl.h \
file://conversion.h \
file://libaxidma.h \
file://util.c \
file://util.h \
file://Makefile \
"
Then I add APP_OBJS += util.o to the Makefile and build the application by running:
petalinux-build -c axidma-benchmark
But I got these errors:
ERROR: axidma-benchmark-1.0-r0 do_compile: oe_runmake failed
ERROR: axidma-benchmark-1.0-r0 do_compile: Execution of '/media/fpgaws/projects/DevelopmentLab/build/apu/ultrazed7ev/build/tmp/work/aarch64-xilinx-linux/axidma-benchmark/1.0-r0/temp/run.do_compile.21635' failed with exit code 1:
aarch64-xilinx-linux-gcc -march=armv8-a+crc -mtune=cortex-a72.cortex-a53 -fstack-protector-strong -D_FORTIFY_SOURCE=2 -Wformat -Wformat-security -Werror=format-security --sysroot=/media/fpgaws/projects/DevelopmentLab/build/apu/ultrazed7ev/build/tmp/work/aarch64-xilinx-linux/axidma-benchmark/1.0-r0/recipe-sysroot -o axidma-benchmark axidma-benchmark.o util.o -Wl,-O1 -Wl,--hash-style=gnu -Wl,--as-needed -fstack-protector-strong -Wl,-z,relro,-z,now
/media/fpgaws/projects/DevelopmentLab/build/apu/ultrazed7ev/build/tmp/work/aarch64-xilinx-linux/axidma-benchmark/1.0-r0/recipe-sysroot-native/usr/bin/aarch64-xilinx-linux/../../libexec/aarch64-xilinx-linux/gcc/aarch64-xilinx-linux/9.2.0/ld: axidma-benchmark.o: in function main': /usr/src/debug/axidma-benchmark/1.0-r0/axidma-benchmark.c:491: undefined reference to axidma_init'
/media/fpgaws/projects/DevelopmentLab/build/apu/ultrazed7ev/build/tmp/work/aarch64-xilinx-linux/axidma-benchmark/1.0-r0/recipe-sysroot-native/usr/bin/aarch64-xilinx-linux/../../libexec/aarch64-xilinx-linux/gcc/aarch64-xilinx-linux/9.2.0/ld: /usr/src/debug/axidma-benchmark/1.0-r0/axidma-benchmark.c:499: undefined reference to axidma_malloc' /media/fpgaws/projects/DevelopmentLab/build/apu/ultrazed7ev/build/tmp/work/aarch64-xilinx-linux/axidma-benchmark/1.0-r0/recipe-sysroot-native/usr/bin/aarch64-xilinx-linux/../../libexec/aarch64-xilinx-linux/gcc/aarch64-xilinx-linux/9.2.0/ld: /usr/src/debug/axidma-benchmark/1.0-r0/axidma-benchmark.c:505: undefined reference to axidma_malloc'
/media/fpgaws/projects/DevelopmentLab/build/apu/ultrazed7ev/build/tmp/work/aarch64-xilinx-linux/axidma-benchmark/1.0-r0/recipe-sysroot-native/usr/bin/aarch64-xilinx-linux/../../libexec/aarch64-xilinx-linux/gcc/aarch64-xilinx-linux/9.2.0/ld: /usr/src/debug/axidma-benchmark/1.0-r0/axidma-benchmark.c:514: undefined reference to axidma_get_vdma_tx' /media/fpgaws/projects/DevelopmentLab/build/apu/ultrazed7ev/build/tmp/work/aarch64-xilinx-linux/axidma-benchmark/1.0-r0/recipe-sysroot-native/usr/bin/aarch64-xilinx-linux/../../libexec/aarch64-xilinx-linux/gcc/aarch64-xilinx-linux/9.2.0/ld: /usr/src/debug/axidma-benchmark/1.0-r0/axidma-benchmark.c:515: undefined reference to axidma_get_vdma_rx'
/media/fpgaws/projects/DevelopmentLab/build/apu/ultrazed7ev/build/tmp/work/aarch64-xilinx-linux/axidma-benchmark/1.0-r0/recipe-sysroot-native/usr/bin/aarch64-xilinx-linux/../../libexec/aarch64-xilinx-linux/gcc/aarch64-xilinx-linux/9.2.0/ld: axidma-benchmark.o: in function single_transfer_test': /usr/src/debug/axidma-benchmark/1.0-r0/axidma-benchmark.c:396: undefined reference to axidma_twoway_transfer'
/media/fpgaws/projects/DevelopmentLab/build/apu/ultrazed7ev/build/tmp/work/aarch64-xilinx-linux/axidma-benchmark/1.0-r0/recipe-sysroot-native/usr/bin/aarch64-xilinx-linux/../../libexec/aarch64-xilinx-linux/gcc/aarch64-xilinx-linux/9.2.0/ld: axidma-benchmark.o: in function main': /usr/src/debug/axidma-benchmark/1.0-r0/axidma-benchmark.c:558: undefined reference to axidma_free'
/media/fpgaws/projects/DevelopmentLab/build/apu/ultrazed7ev/build/tmp/work/aarch64-xilinx-linux/axidma-benchmark/1.0-r0/recipe-sysroot-native/usr/bin/aarch64-xilinx-linux/../../libexec/aarch64-xilinx-linux/gcc/aarch64-xilinx-linux/9.2.0/ld: /usr/src/debug/axidma-benchmark/1.0-r0/axidma-benchmark.c:560: undefined reference to axidma_free' /media/fpgaws/projects/DevelopmentLab/build/apu/ultrazed7ev/build/tmp/work/aarch64-xilinx-linux/axidma-benchmark/1.0-r0/recipe-sysroot-native/usr/bin/aarch64-xilinx-linux/../../libexec/aarch64-xilinx-linux/gcc/aarch64-xilinx-linux/9.2.0/ld: /usr/src/debug/axidma-benchmark/1.0-r0/axidma-benchmark.c:562: undefined reference to axidma_destroy'
/media/fpgaws/projects/DevelopmentLab/build/apu/ultrazed7ev/build/tmp/work/aarch64-xilinx-linux/axidma-benchmark/1.0-r0/recipe-sysroot-native/usr/bin/aarch64-xilinx-linux/../../libexec/aarch64-xilinx-linux/gcc/aarch64-xilinx-linux/9.2.0/ld: /usr/src/debug/axidma-benchmark/1.0-r0/axidma-benchmark.c:519: undefined reference to axidma_get_dma_tx' /media/fpgaws/projects/DevelopmentLab/build/apu/ultrazed7ev/build/tmp/work/aarch64-xilinx-linux/axidma-benchmark/1.0-r0/recipe-sysroot-native/usr/bin/aarch64-xilinx-linux/../../libexec/aarch64-xilinx-linux/gcc/aarch64-xilinx-linux/9.2.0/ld: /usr/src/debug/axidma-benchmark/1.0-r0/axidma-benchmark.c:520: undefined reference to axidma_get_dma_rx'
/media/fpgaws/projects/DevelopmentLab/build/apu/ultrazed7ev/build/tmp/work/aarch64-xilinx-linux/axidma-benchmark/1.0-r0/recipe-sysroot-native/usr/bin/aarch64-xilinx-linux/../../libexec/aarch64-xilinx-linux/gcc/aarch64-xilinx-linux/9.2.0/ld: axidma-benchmark.o: in function time_dma': /usr/src/debug/axidma-benchmark/1.0-r0/axidma-benchmark.c:426: undefined reference to axidma_twoway_transfer'
collect2: error: ld returned 1 exit status
make: *** [Makefile:12: axidma-benchmark] Error 1
WARNING: /media/fpgaws/projects/DevelopmentLab/build/apu/ultrazed7ev/build/tmp/work/aarch64-xilinx-linux/axidma-benchmark/1.0-r0/temp/run.do_compile.21635:1 exit 1 from 'exit 1'
ERROR: Logfile of failure stored in: /media/fpgaws/projects/DevelopmentLab/build/apu/ultrazed7ev/build/tmp/work/aarch64-xilinx-linux/axidma-benchmark/1.0-r0/temp/log.do_compile.21635
What is my mistake?
I have forgotten to add the libaxidma.c files into the file directory. By adding this file application was built successfully.
Update:
You can access the final version of my code via this link.
If you have any problems, please let me know.

Compiling alsa-utils 1.1.0 on Raspberry Pi

I have compiled and installed alsa-lib 1.1.0 and moved on to compiling and installing the new alsa-util. The ./configure works:
./configure --disable-bat --disable-xmlto --disable-alsaconf --with-curses=ncursesw
however the make fails and I have had no luck finding a resolution:
Making all in topology
make[1]: Entering directory '/home/pi/apps/alsa_utils/alsa-utils-1.1.0/topology'
gcc -g -O2 -o alsatplg topology.o -lasound -lasound -lm -ldl -lpthread
topology.o: In function `main':
/home/pi/apps/alsa_utils/alsa-utils-1.1.0/topology/topology.c:99: undefined reference to `snd_tplg_new'
/home/pi/apps/alsa_utils/alsa-utils-1.1.0/topology/topology.c:105: undefined reference to `snd_tplg_verbose'
/home/pi/apps/alsa_utils/alsa-utils-1.1.0/topology/topology.c:107: undefined reference to `snd_tplg_build_file'
/home/pi/apps/alsa_utils/alsa-utils-1.1.0/topology/topology.c:114: undefined reference to `snd_tplg_free'
/home/pi/apps/alsa_utils/alsa-utils-1.1.0/topology/topology.c:110: undefined reference to `snd_tplg_free'
collect2: error: ld returned 1 exit status
Makefile:318: recipe for target 'alsatplg' failed
make[1]: *** [alsatplg] Error 1
make[1]: Leaving directory '/home/pi/apps/alsa_utils/alsa-utils-1.1.0/topology'
Makefile:352: recipe for target 'all-recursive' failed
make: *** [all-recursive] Error 1
I understand that this error means that undefined references exist but I cannot understand why?
Thanks.

Building iPhone for WindowsXP with Cygwin

"Write native iPhone applications using Eclipse
CDT
How Windows and Linux developers can bypass the iPhone
SDK and write iPhone apps using open source tools"
by PJ Cabrera (pjcabrera#pobox.com)
I was following the instructions from this document and thought I made it pretty far, but I get an error and wondered if you know what is going on.
When I enter the command, it starts to compile. After about 30 minutes, I get to the error you see below.
./make-toolchain.sh
Here is the error:
test -d po || mkdir po
checking whether getopt is declared... /cygdrive/c/downloads/mono/Mono-2.4/bin/m
sgfmt --statistics -o po/be.gmo /cygdrive/c/projects/tools/home/iphone-2.0-toolc
hain/src/gcc/libcpp/po/be.po
c:\downloads\mono\Mono-2.4\bin\msgfmt.exe: error while opening "/cygdrive/c/proj
ects/tools/home/iphone-2.0-toolchain/src/gcc/libcpp/po/be.po" for reading: No su
ch file or directory
make[2]: *** [po/be.gmo] Error 1
make[2]: Leaving directory `/cygdrive/c/projects/tools/home/iphone-2.0-toolchain
/build/gcc-4.2-iphone/libcpp'
make[1]: *** [all-libcpp] Error 2
make[1]: *** Waiting for unfinished jobs....
no
checking whether clock is declared... yes
checking whether getpagesize is declared... yes
checking whether clearerr_unlocked is declared... no
checking whether feof_unlocked is declared... no
checking whether ferror_unlocked is declared... no
checking whether fflush_unlocked is declared... no
checking whether fgetc_unlocked is declared... no
checking whether fgets_unlocked is declared... no
checking whether fileno_unlocked is declared... no
checking whether fprintf_unlocked is declared... no
checking whether fputc_unlocked is declared... no
checking whether fputs_unlocked is declared... no
checking whether fread_unlocked is declared... no
checking whether fwrite_unlocked is declared... no
checking whether getchar_unlocked is declared... yes
checking whether getc_unlocked is declared... yes
checking whether putchar_unlocked is declared... yes
checking whether putc_unlocked is declared... yes
checking whether getrlimit is declared... yes
checking whether setrlimit is declared... yes
checking whether getrusage is declared... yes
checking whether ldgetname is declared... no
checking whether times is declared... yes
checking whether sigaltstack is declared... no
checking for struct tms... yes
checking for clock_t... yes
checking for .preinit_array/.init_array/.fini_array support... no
checking if mkdir takes one argument... no
For real value is
For real value is
Using `/cygdrive/c/projects/tools/home/iphone-2.0-toolchain/src/gcc/gcc/config/arm/arm.c' for machine-specific logic.
Using `/cygdrive/c/projects/tools/home/iphone-2.0-toolchain/src/gcc/gcc/config/'
for machine-specific C++ logic.
Using `/cygdrive/c/projects/tools/home/iphone-2.0-toolchain/src/gcc/gcc/config/a
rm/arm.md' as machine description file.
Using the following target machine macro files:
/cygdrive/c/projects/tools/home/iphone-2.0-toolchain/src/gcc/gcc/config/arm/arm.h
/cygdrive/c/projects/tools/home/iphone-2.0-toolchain/src/gcc/gcc/config/darwin.h
/cygdrive/c/projects/tools/home/iphone-2.0-toolchain/src/gcc/gcc/config/darwin9.h
/cygdrive/c/projects/tools/home/iphone-2.0-toolchain/src/gcc/gcc/config/arm/darwin.h
/cygdrive/c/projects/tools/home/iphone-2.0-toolchain/src/gcc/gcc/config/arm/darwin.h
Using `/cygdrive/c/projects/tools/home/iphone-2.0-toolchain/src/gcc/gcc/config/i386/xm-cygwin.h' as host machine macro file.
Using host-cygwin.o for host machine hooks.
checking whether NLS is requested... yes
checking for catalogs to be installed... be ca da de el es fr ja nl ru rw sr sv
tr zh_CN zh_TW
checking for library containing RegOpenKeyExA... no
checking what assembler to use... /usr/local/bin/arm-apple-darwin9-as
checking what linker to use... /usr/local/bin/arm-apple-darwin9-ld
checking for arm-apple-darwin9-nm... /usr/local/bin/arm-apple-darwin9-nm
checking what nm to use... /usr/local/bin/arm-apple-darwin9-nm
checking for arm-apple-darwin9-objdump... no
checking what objdump to use... not found
checking assembler for .balign and .p2align... no
checking assembler for .p2align with maximum skip... yes
checking assembler for .literal16... yes
checking assembler for working .subsection -1... no
checking assembler for .weak... no
checking assembler for .weakref... no
checking assembler for .nsubspa comdat... no
checking assembler for .hidden... no
checking linker for .hidden support... no
checking assembler for .sleb128 and .uleb128... no
checking assembler for eh_frame optimization... no
checking assembler for section merging support... no
checking assembler for section merging support... (cached) no
checking assembler for COMDAT group support... no
checking assembler for COMDAT group support... no
checking assembler for thread-local storage support... no
checking linker -Bstatic/-Bdynamic option... no
checking assembler for dwarf2 debug_line support... no
checking assembler for buggy dwarf2 .file directive... no
checking assembler for --gdwarf2 option... no
checking assembler for --gstabs option... yes
checking linker read-only and read-write section mixing... unknown
checking linker PT_GNU_EH_FRAME support... no
checking linker position independent executable support... no
checking linker --as-needed support... no
checking linker --sysroot support... no
checking __stack_chk_fail in target C library... checking for __stack_chk_fail..
. no
no __stack_chk_fail on this target
no
Using ggc-page for garbage collection.
checking whether to enable maintainer-specific portions of Makefiles... no
Links are now set up to build a cross-compiler
from i686-pc-cygwin to arm-apple-darwin9.
updating cache ./config.cache
configure: creating ./config.status
config.status: creating Makefile
config.status: creating gccbug
config.status: creating mklibgcc
config.status: creating libada-mk
config.status: creating ada/Makefile
config.status: creating auto-host.h
config.status: executing default commands
make[1]: Leaving directory `/cygdrive/c/projects/tools/home/iphone-2.0-toolchain
/build/gcc-4.2-iphone'
make: *** [all] Error 2
This script requires that you enter the proper administrator password
in order to install gcc-4.2-iphone in /usr/local
make[1]: Entering directory `/cygdrive/c/projects/tools/home/iphone-2.0-toolchai
n/build/gcc-4.2-iphone'
/bin/sh /cygdrive/c/projects/tools/home/iphone-2.0-toolchain/src/gcc/mkinstalldirs /usr/local /usr/local
make[2]: Entering directory `/cygdrive/c/projects/tools/home/iphone-2.0-toolchain/build/gcc-4.2-iphone/fixincludes'
rm -rf /usr/local/libexec/gcc/arm-apple-darwin9/4.2.1/install-tools
/bin/sh /cygdrive/c/projects/tools/home/iphone-2.0-toolchain/src/gcc/fixincludes
/../mkinstalldirs /usr/local/libexec/gcc/arm-apple-darwin9/4.2.1/install-tools
mkdir -p -- /usr/local/libexec/gcc/arm-apple-darwin9/4.2.1/install-tools
/bin/sh /cygdrive/c/projects/tools/home/iphone-2.0-toolchain/src/gcc/fixincludes
/../mkinstalldirs /usr/local/lib/gcc/arm-apple-darwin9/4.2.1/install-tools/include
/usr/bin/install -c -m 644 /cygdrive/c/projects/tools/home/iphone-2.0-toolchain/
src/gcc/fixincludes/README-fixinc \
/usr/local/lib/gcc/arm-apple-darwin9/4.2.1/install-tools/include/READM
E
/usr/bin/install -c fixinc.sh /usr/local/libexec/gcc/arm-apple-darwin9/4.2.1/ins
tall-tools/fixinc.sh
/usr/bin/install -c fixincl.exe \
/usr/local/libexec/gcc/arm-apple-darwin9/4.2.1/install-tools/fixincl.e
xe
/usr/bin/install -c mkheaders /usr/local/libexec/gcc/arm-apple-darwin9/4.2.1/ins
tall-tools/mkheaders
make[2]: Leaving directory `/cygdrive/c/projects/tools/home/iphone-2.0-toolchain
/build/gcc-4.2-iphone/fixincludes'
make[2]: Entering directory `/cygdrive/c/projects/tools/home/iphone-2.0-toolchain/build/gcc-4.2-iphone/gcc'
test -d po || mkdir po
/cygdrive/c/downloads/mono/Mono-2.4/bin/msgfmt --statistics -o po/be.gmo /cygdrive/c/projects/tools/home/iphone-2.0-toolchain/src/gcc/gcc/po/be.po
c:\downloads\mono\Mono-2.4\bin\msgfmt.exe: error while opening "/cygdrive/c/projects/tools/home/iphone-2.0-toolchain/src/gcc/gcc/po/be.po" for reading: No such
file or directory
make[2]: *** [po/be.gmo] Error 1
make[2]: Leaving directory `/cygdrive/c/projects/tools/home/iphone-2.0-toolchain
/build/gcc-4.2-iphone/gcc'
make[1]: *** [install-gcc] Error 2
make[1]: Leaving directory `/cygdrive/c/projects/tools/home/iphone-2.0-toolchain
/build/gcc-4.2-iphone'
make: *** [install] Error 2
I also find it strange that msgfmt would be executed, from Mono? Why is mono or .net used for this build?
I have a win32/windowsxp system, intel dual core.
"g++ (GCC) 3.4.4 (cygming special, gdc 0.12, using dmd 0.125)
Copyright (C) 2004 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
From the looks of what code you have above, you are using cygwin to compile some tools for Windows.
Your compile stopped cold because it can't find:
/cygdrive/c/projects/tools/home/iphone-2.0-toolchain/src/gcc/libcpp/po/be.p
Which looks like it is looking for some part of libcpp and cant find it. You can probably solve this by re-running the Cygwin installer and choosing libcpp when you do.
On a side note, I would advise not doing trying to run iPhone dev tools on Windows. It's nowhere near the same experience you will get on Mac OS X and you will run into many many frustrations as above.
These hacks are generally only for hardcore coders with the chops to use a hacked IDE on a non-standard environment. If you cannot understand the warning message above (which is fairly simple for anyone who has used gcc), don't feel bad but you probably don't have the skill to accomplish what you are attempting.
My advice: Buy yourself a Mac mini if you don't want to spend much money, the tools come with the Mac and you will be able to have fun writing iPhone apps without the frustration of wondering when your development environment will next break. In addition, when something isn't working right you won't have to worry whether it is your hacked dev environment or a problem with your code.
You also won't be able to submit your app to the iPhone AppStore, and Apple really frown on doing this so you won't get any help from Apple and probably any other iPhone dev's if they find out your doing this.
Good luck!