我正在尝试为BB OS 10的模拟器编译此版本的Mono(https://github.com/roblillack/mono/tree/qnx-2-10-9)
但我有nex错误:
libmonosgen_2_0_la-mini.lo libmonosgen_2_0_la-method-to-ir.lo libmonosgen_2_0_la-decompose.lo libmonosgen_2_0_la-jit-icalls.lo libmonosgen_2_0_la-trace.lo libmonosgen_2_0_la-dominators.lo libmonosgen_2_0_la-cfold.lo libmonosgen_2_0_la-regalloc.lo libmonosgen_2_0_la -helpers.lo libmonosgen_2_0_la-liveness.lo libmonosgen_2_0_la-ssa.lo libmonosgen_2_0_la-abcremoval.lo libmonosgen_2_0_la-ssapre.lo libmonosgen_2_0_la-local-propagation.lo libmonosgen_2_0_la-driver.lo libmonosgen_2_0_la-debug-mini.lo libmonosgen_2_0_la-linear-scan.lo libmonosgen_2_0_la-aot-compiler.lo libmonosgen_2_0_la-aot-runtime.lo libmonosgen_2_0_la-graph.lo libmonosgen_2_0_la-mini-exceptionsgen.lo libmonosgen_2_0_la-mini-exceptions.lo libmonosgen_2_0_la-mini-trampolines.lo libmonosgen_2_0_la-declsec.lo libmonosgen_2_0_la -wapihandles.lo libmonosgen_2_0_la-branch-opts.lo libmonosgen_2_0_la-mini-generic-sharing.lo libmonosgen_2_0_la-regalloc2.lo libmonosgen_2_0_la-tasklets.lo libmonosgen_2_0_la-simd-intrinsics.lo libmonosgen_2_ 0_la-unwind.lo libmonosgen_2_0_la-image-writer.lo libmonosgen_2_0_la-dwarfwriter.lo libmonosgen_2_0_la-mini-gc.lo libmonosgen_2_0_la-debugger-agent.lo libmonosgen_2_0_la-debug-debugger.lo libmonosgen_2_0_la-xdebug.lo libmonosgen_2_0_la-mini-x86.lo libmonosgen_2_0_la-exceptions-x86.lo libmonosgen_2_0_la-tramp-x86.lo libmonosgen_2_0_la-mini-posix.lo ../../mono/metadata/libmonoruntimesgen.la ../../mono/io-layer/libwapi.la。 ./../mono/utils/libmonoutils.la -L ../../ eglib / src -leglib -lm -lsocket / Applications / bbndk / host_10_0_6_1 / darwin / x86 / usr / bin / ntox86-ld:找不到-lscreen / Applications / bbndk / host_10_0_6_1 / darwin / x86 / usr / bin / ntox86-ld:找不到-lpng14 / Applications / bbndk / host_10_0_6_1 / darwin / x86 / usr / bin / ntox86-ld:找不到-lbps / Applications / bbndk / host_10_0_6_1 / darwin / x86 / usr / bin / ntox86-ld:找不到-lEGL / Applications / bbndk / host_10_0_6_1 / darwin / x86 / usr / bin / ntox86-ld:找不到-lGLESv2 / Applications / bbndk / host_10_0_6_1 / darwin / x86 / usr / bin / ntox86-ld:找不到-liconv / Applications / bbndk / host_10_0_6_1 / darwin / x86 / usr / bin / ntox86-ld:找不到-lstdc ++ collect2:ld返回1退出状态 make [4]:** [libmonosgen-2.0.la]错误1 make [4]:离开目录`/ Users / developer / Desktop / Monoberry / monosrc / mono / mini' make [3]:** [all]错误2
我的构建配置是下一个:
./autogen.sh --prefix=/Users/developer/Desktop/Monoberry/monobuild --with-moonlight=no --with-mcs-docs=no --build=i386-apple-darwin10.7.0 --host=i486-pc-nto-qnx8.0.0 --with-sgen=no --disable-boehm --target=i486-pc-nto-qnx8.0.0
我的环境变量是(bbndk-env.sh):
# This script sets environment variables required for this version of NDK
# from the command line. To use the script, you have to "source" it into your shell,
# source bbndk-env.sh
# if source command is not available use "." (dot) command instead
#
#Some influential environment variables in mono are:
# CC C compiler command -->Done
# CFLAGS C compiler flags --> Done
# LDFLAGS linker flags, e.g. -L<lib dir> if you have libraries in a
# nonstandard directory <lib dir> -->Done
# LIBS libraries to pass to the linker, e.g. -l<library> --> Not set
# CPPFLAGS C/C++/Objective C preprocessor flags, e.g. -I<include dir> if -->Done
# you have headers in a nonstandard directory <include dir>
# CXX C++ compiler command --> Done
# CXXFLAGS C++ compiler flags -->Done
# CCAS assembler compiler command (defaults to CC) -->Done
# CCASFLAGS assembler compiler flags (defaults to CFLAGS) -->Done
# CPP C preprocessor -->Done
# CXXCPP C++ preprocessor -->Done
# XMKMF Path to xmkmf, Makefile generator for X Window System -->Not set
QNX_TARGET="/Applications/bbndk/target_10_0_6_384/qnx6"
QNX_HOST="/Applications/bbndk/host_10_0_6_1/darwin/x86"
QNX_CONFIGURATION="/Users/developer/Library/Research In Motion/BlackBerry Native SDK"
MAKEFLAGS="-I$QNX_TARGET/usr/include"
DYLD_LIBRARY_PATH="$QNX_HOST/usr/lib/:$QNX_TARGET/../darwin/x86/usr/lib/qt4/lib:$DYLD_LIBRARY_PATH"
PATH="$QNX_HOST/usr/bin:$PATH"
#armv7
#RANLIB="${QNX_HOST}/usr/bin/ntoarmv7-ranlib "
#x86 emulator
RANLIB="${QNX_HOST}/usr/bin/ntox86-ranlib "
#armv7
#CPP="${QNX_HOST}/usr/bin/qcc -V4.6.3,gcc_ntoarmv7le_cpp -E "
#x86
CPP="${QNX_HOST}/usr/bin/qcc -V4.6.3,gcc_ntox86_cpp -E "
#armv7
#CXXCPP="${QNX_HOST}/usr/bin/qcc -V4.6.3,gcc_ntoarmv7le_cpp -E "
#x86
CXXCPP="${QNX_HOST}/usr/bin/qcc -V4.6.3,gcc_ntox86_cpp -E "
#armv7
#CC="${QNX_HOST}/usr/bin/qcc -V4.6.3,gcc_ntoarmv7le_cpp "
#x86
CC="${QNX_HOST}/usr/bin/qcc -V4.6.3,gcc_ntox86_cpp "
#armv7
#CXX="${QNX_HOST}/usr/bin/qcc -V4.6.3,gcc_ntoarmv7le_cpp "
#x86
CXX="${QNX_HOST}/usr/bin/qcc -V4.6.3,gcc_ntox86_cpp "
#armv7
#LD="${QNX_HOST}/usr/bin/ntoarmv7-ld "
#x86
LD="${QNX_HOST}/usr/bin/ntox86-ld "
CPPFLAGS="-D__PLAYBOOK__ -D__QNXNTO__ "
CFLAGS=" -g "
CXXFLAGS=" -g "
CCAS=$CC
CCASFLAGS=$CFLAGS
#armv7
#LDFLAGS="-L${QNX_TARGET}/armle-v7/lib -L${PREFIX}/lib -lscreen -lasound -lpps -lm -lpng14 -lbps -lEGL -lGLESv2"
#x86
LDFLAGS="-L${QNX_TARGET}/x86/lib -L${PREFIX}/lib -lscreen -lasound -lpps -lm -lpng14 -lbps -lEGL -lGLESv2"
export QNX_TARGET QNX_HOST QNX_CONFIGURATION MAKEFLAGS DYLD_LIBRARY_PATH PATH RANLIB CPP CC LD CPP CPPFLAGS CFLAGS LDFLAGS
任何人都知道我在做什么?拜托,我长期坚持这个问题了!
P.S.My OS是:Mac OS X 10.6.8
答案 0 :(得分:2)
解决方案非常简单,我设置了环境变量LDFLAGS。 变量的正确值是:
LDFLAGS="-L${QNX_TARGET}/x86/lib -L${QNX_TARGET}/x86/usr/lib -L${QNX_TARGET}/x86/lib/gcc/4.6.3 -liconv -lstdc++"
库iconv位于{QNX_TARGET} / x86 / usr / lib和stdc ++中{QNX_TARGET} /x86/lib/gcc/4.6.3