miniGUI移植大致流程
移植过程大致如下(由于存在依赖关系,顺序不能错): --prefix 为生成库文件目录; --host 指定目标板编译器; LDFLAGS 为动态库路径 CFLAGS 为头文件路径 CC=arm-hisiv200-linux-gcc CPP=arm-hisiv200-linux-cpp CXX=arm-hisiv200-linux-g++ LD=arm-hisiv200-linux-ld AR=arm-hisiv200-linux-ar RANLIB=arm-hisiv200-linux-ranlib STRIP=arm-hisiv200-linux-strip
source /etc/profile export CC=arm-hisiv200-linux-gcc CXX=arm-hisiv200-linux-g++ LD=arm-hisiv200-linux-ld AR=arm-hisiv200-linux-ar
1、zlib-1.2.6-------- ./configure --prefix=$PWD/_install make & make install sudo cp -r _install/* /opt/hisi-linux/x86-arm/arm-hisiv200-linux/arm-hisiv200-linux-gnueabi/
2、libpng-1.2.37----- ./configure --prefix=$PWD/_install --host=arm-hisiv200-linux make & make install sudo cp -r _install/* /opt/hisi-linux/x86-arm/arm-hisiv200-linux/arm-hisiv200-linux-gnueabi/
3、jpeg-7------------
./configure --prefix=$PWD/_install --host=arm-hisiv200-linux
make;make install
sudo cp -r _install/* /opt/hisi-linux/x86-arm/arm-hisiv200-linux/arm-hisiv200-linux-gnueabi/
/freetype-1.3.1/
4、freetype-1.3.1
./configure --prefix=$PWD/_install --host=arm-hisiv200-linux
vim config.cache 修改
ac_cv_path_LD=${ac_cv_path_LD=arm-hisiv200-linux-ld}
ac_cv_prog_CC=${ac_cv_prog_CC=arm-hisiv200-linux-gcc}
ac_cv_prog_CPP=${ac_cv_prog_CPP='arm-hisiv200-linux-gcc -E'}
重新运行
./configure --prefix=$PWD/_install --host=arm-hisiv200-linux
修改Makefile文件,以跳过编译test目录。
去掉“all:”后的变量“tttest”
注释掉“install:”下的第二行:“cd $(FTTESTDIR); $(MAKE) –f$(MAKEFILE) install”
make & make install sudo cp -r _install/* /opt/hisi-linux/x86-arm/arm-hisiv200-linux/arm-hisiv200-linux-gnueabi/ /**/ 4、freetype-2.3.9-fm20100818 miniGui修改后的库 ./configure --prefix=$PWD/_install --host=arm-hisiv200-linux make;make install
出现 rmdir: ‘/usr/local/modules/freetype/include/freetype2/freetype/internal’: 没有那个文件或目录 make: [install] 错误 1 (忽略) 解决办法: mkdir usr/local/modules/freetype/include/freetype2/freetype/internal make install
/****/ 交叉移植完zlib,png,jpeg,freetype后将上述生成的库文件拷贝至/opt/hisi-linux/x86-arm/arm-hisiv200-linux/arm-hisiv200-linux-gnueabi相应目录下,此为HI3531的编译环境,
5、libminigui-gpl-3.0.12 ./configure --disable-screensaver --disable-splash --disable-jpgsupport --enable-pngsupport --with-osname=linux --with-targetname=fbcon --enable-autoial --build=i686-linux --target=arm-unknown-linux --host=arm-hisiv200-linux --prefix=$PWD/_install CC=arm-hisiv200-linux-gcc CPP=arm-hisiv200-linux-cpp CXX=arm-hisiv200-linux-g++ LD=arm-hisiv200-linux-ld AR=arm-hisiv200-linux-ar RANLIB=arm-hisiv200-linux-ranlib STRIP=arm-hisiv200-linux-strip
./configure --prefix=$PWD/_install --disable-screensaver --disable-splash --disable-jpgsupport --with-osname=linux --with-targetname=fbcon --enable-autoial --enable-ttfcache --with-ttfsupport=ft2 --host=arm-hisiv400-linux make;make install
/****/ Installation directories: --prefix=PREFIX install architecture-independent files in PREFIX [/usr/local] --exec-prefix=EPREFIX install architecture-dependent files in EPREFIX [PREFIX]
By default, make install' will install all the files in
/usr/local/bin', /usr/local/lib' etc. You can specify an installation prefix other than
/usr/local' using --prefix', for instance
--prefix=$HOME'.
For better control, use the options below.
Fine tuning of the installation directories: --bindir=DIR user executables [EPREFIX/bin] --sbindir=DIR system admin executables [EPREFIX/sbin] --libexecdir=DIR program executables [EPREFIX/libexec] --sysconfdir=DIR read-only single-machine data [PREFIX/etc] --sharedstatedir=DIR modifiable architecture-independent data [PREFIX/com] --localstatedir=DIR modifiable single-machine data [PREFIX/var] --libdir=DIR object code libraries [EPREFIX/lib] --includedir=DIR C header files [PREFIX/include] --oldincludedir=DIR C header files for non-gcc [/usr/include] --datarootdir=DIR read-only arch.-independent data root [PREFIX/share] --datadir=DIR read-only architecture-independent data [DATAROOTDIR] --infodir=DIR info documentation [DATAROOTDIR/info] --localedir=DIR locale-dependent data [DATAROOTDIR/locale] --mandir=DIR man documentation [DATAROOTDIR/man] --docdir=DIR documentation root [DATAROOTDIR/doc/libminigui] --htmldir=DIR html documentation [DOCDIR] --dvidir=DIR dvi documentation [DOCDIR] --pdfdir=DIR pdf documentation [DOCDIR] --psdir=DIR ps documentation [DOCDIR]
Program names: --program-prefix=PREFIX prepend PREFIX to installed program names --program-suffix=SUFFIX append SUFFIX to installed program names --program-transform-name=PROGRAM run sed PROGRAM on installed program names
System types: --build=BUILD configure for building on BUILD [guessed] --host=HOST cross-compile to build programs to run on HOST [BUILD] --target=TARGET configure for building compilers for TARGET [HOST]
Optional Features:
--disable-option-checking ignore unrecognized --enable/--with options
--disable-FEATURE do not include FEATURE (same as --enable-FEATURE=no)
--enable-FEATURE[=ARG] include FEATURE [ARG=yes]
--enable-shared=PKGS build shared libraries default=yes
--enable-static=PKGS build static libraries default=yes
--enable-fast-install=PKGS optimize for fast installation default=yes
--disable-dependency-tracking speeds up one-time build
--enable-dependency-tracking do not reject slow dependency extractors
--disable-libtool-lock avoid locking (might break parallel builds)
--enable-videost7167 include st7167 platform dfb video driver
Optional Packages: --with-PACKAGE[=ARG] use PACKAGE [ARG=yes] --without-PACKAGE do not use PACKAGE (same as --with-PACKAGE=no) --with-gnu-ld assume the C compiler uses GNU ld default=no --with-pic try to use only PIC/non-PIC objects default=use both --with-ttfsupport=ft1/ft2/none --with-nexus-includedir=DIR Where to find header files of nexus library --with-nexus-libdir=DIR Where to find .so files of nexus library --with-osname=linux/uclinux/ecos/ucos2/swlinux/vxworks/win32/darwin/threadx/cygwin/nucleus/ose/psos --with-licensepicture=minigui/mdolphin/hybridos --with-targetname=unknown/stb810/vfanvil/vxi386/qvfb/fbcon/mx21/monaco/c33l05/bfin/vxppc/fmsoft/mstudio/ S3C6410/S3C2440/S3C2410/hi3560a --with-libsuffix=ARG Configure the suffix of MiniGUI library name. --with-ttfcachesize=64/128/256/512/1024 --with-mttfcachenum=10/20/40 --with-ft1-includes=DIR where the FreeType1 includes are --with-ft2-includes=DIR where the FreeType2 includes are
Some influential environment variables:
CC C compiler command
CFLAGS C compiler flags
LDFLAGS linker flags, e.g. -L
出现 Going to generate license pictures ... ./configure: line 15530: ./runme.sh: No such file or directory 无视之 修改src/newgal/pcxvfb/Makefile 194行,将/usr/include去掉: INCLUDES = -I$(abs_top_srcdir)/src/include -I$(abs_top_srcdir)/include \ -I$(abs_top_srcdir)/src/newgal/ -I/usr/include/ 否则编译pcxvfb.c将出错 make&make install sudo cp -r /usr/lib/pkgconfig/ .pc 文件指定了编译生成库文件的路径,如果移动库文件必须更改 .pc文件。 /usr/lib/pkgconfig/为 pkgconfig 程序默认寻找路径
6、libmgi-2.0.4 ./configure --prefix=$PWD/_install --host=arm-hisiv200-linux LDFLAGS=-L/opt/hisi-linux/x86-arm/arm-hisiv200-linux/arm-hisiv200-linux-gnueabi/lib CFLAGS="-I/opt/hisi-linux/x86-arm/arm-hisiv200-linux/arm-hisiv200-linux-gnueabi/include" make & make install sudo cp -r _install/* /opt/hisi-linux/x86-arm/arm-hisiv200-linux/arm-hisiv200-linux-gnueabi/
7、minigui-res-be-3.0.12 ./configure --prefix=$PWD/_install --host=arm-hisiv200-linux make & make install sudo cp -r _install/* /opt/hisi-linux/x86-arm/arm-hisiv200-linux/arm-hisiv200-linux-gnueabi/ 8、mg-samples-3.0.12 ./configure --prefix=$PWD/_install --host=arm-hisiv200-linux LDFLAGS=-L/opt/hisi-linux/x86-arm/arm-hisiv200-linux/arm-hisiv200-linux-gnueabi/lib CFLAGS="-I/opt/hisi-linux/x86-arm/arm-hisiv200-linux/arm-hisiv200-linux-gnueabi/include" {报错: dlgdemo.c:40:27: 错误:mgplus/mgplus.h:没有那个文件或目录 make[2]: [dlgdemo.o] 错误 1 make[2]: Leaving directory `/mnt/hgfs/F/mg-samples-3.0.12/ctrl_dlg' make[1]: [all-recursive] 错误 1 make[1]: Leaving directory `/mnt/hgfs/F/mg-samples-3.0.12/ctrl_dlg' make: *** [all-recursive] 错误 1 } 解决办法:vim ctrl_dlg/dlgdemo.c ,注释掉mgplus/mgplus.h make & make install
9、libmgutils-1.0.4 ./configure --prefix=$PWD/_install --host=arm-hisiv200-linux LDFLAGS=-L/opt/hisi-linux/x86-arm/arm-hisiv200-linux/arm-hisiv200-linux-gnueabi/lib CFLAGS="-I/opt/hisi-linux/x86-arm/arm-hisiv200-linux/arm-hisiv200-linux-gnueabi/include" make & make install
- 分享
- 举报

-
浏览量:338次2019-11-30 17:13:16
-
浏览量:304次2019-09-19 16:24:38
-
浏览量:767次2020-07-10 16:39:10
-
浏览量:454次2019-12-09 17:51:38
-
浏览量:437次2017-11-24 11:39:01
-
浏览量:415次2019-12-05 17:38:34
-
浏览量:422次2020-04-21 20:28:40
-
浏览量:338次2020-04-21 20:27:00
-
浏览量:5700次2017-10-18 14:51:20
-
浏览量:1150次2019-09-01 11:08:57
-
浏览量:355次2020-04-26 17:55:16
-
浏览量:520次2020-07-28 20:16:56
-
浏览量:311次2020-08-05 20:49:45
-
浏览量:1317次2018-06-21 17:58:57
-
浏览量:1158次2017-09-25 17:46:02
-
浏览量:785次2020-08-03 18:36:13
-
浏览量:530次2020-07-31 13:45:09
-
浏览量:556次2018-01-11 12:41:06
-
浏览量:502次2020-07-17 16:50:14
-
广告/SPAM
-
恶意灌水
-
违规内容
-
文不对题
-
重复发帖

wfjdemmye







举报类型
- 内容涉黄/赌/毒
- 内容侵权/抄袭
- 政治相关
- 涉嫌广告
- 侮辱谩骂
- 其他
详细说明