C++ broken on Raspberry Pi?
Paul Mather
paul at gromit.dlib.vt.edu
Tue Apr 16 00:53:49 UTC 2013
On Apr 15, 2013, at 8:45 PM, Warner Losh <imp at bsdimp.com> wrote:
> Did you run out of memory?
I don't think I did. I have 1 GB of swap configured, so, hopefully not.
Cheers,
Paul.
>
> Warner
>
> On Apr 15, 2013, at 6:41 PM, Paul Mather wrote:
>
>> I recently bought a Raspberry Pi and have been running FreeBSD 10-CURRENT on it (r249461). My system is running an image built using Tim Kientzle's Crochet scripts on a FreeBSD/amd64 10-CURRENT build system. I just tried doing a native build on the Raspberry Pi itself but the buildworld fails fairly early on:
>>
>> =====
>> [...]
>> mkdep -f .depend -a -I/usr/src/lib/clang/libllvmsupport/../../../contrib/llvm/include -I/usr/src/lib/clang/libllvmsupport/../../../contrib/llvm/tools/clang/include -I/usr/src/lib/clang/libllvmsupport/../../../contrib/llvm/lib/Support -I. -I/usr/src/lib/clang/libllvmsupport/../../../contrib/llvm/../../lib/clang/include -DLLVM_ON_UNIX -DLLVM_ON_FREEBSD -D__STDC_LIMIT_MACROS -D__STDC_CONSTANT_MACROS -DLLVM_DEFAULT_TARGET_TRIPLE=\"armv6-unknown-freebsd10.0\" -DLLVM_HOSTTRIPLE=\"armv6-unknown-freebsd10.0\" -DDEFAULT_SYSROOT=\"\" -I/usr/obj/usr/src/tmp/legacy/usr/include -std=gnu99 /usr/src/lib/clang/libllvmsupport/../../../contrib/llvm/lib/Support/ConvertUTF.c /usr/src/lib/clang/libllvmsupport/../../../contrib/llvm/lib/Support/regcomp.c /usr/src/lib/clang/libllvmsupport/../../../contrib/llvm/lib/Support/regerror.c /usr/src/lib/clang/libllvmsupport/../../../contrib/llvm/lib/Support/regexec.c /usr/src/lib/clang/libllvmsupport/../../../contrib/llvm/lib/Support/regfree.c /usr/src
>> /lib/clang/libllvmsupport/../../../contrib/llvm/lib/Support/regstrlcpy.c
>> mkdep -f .depend -a -I/usr/src/lib/clang/libllvmsupport/../../../contrib/llvm/include -I/usr/src/lib/clang/libllvmsupport/../../../contrib/llvm/tools/clang/include -I/usr/src/lib/clang/libllvmsupport/../../../contrib/llvm/lib/Support -I. -I/usr/src/lib/clang/libllvmsupport/../../../contrib/llvm/../../lib/clang/include -DLLVM_ON_UNIX -DLLVM_ON_FREEBSD -D__STDC_LIMIT_MACROS -D__STDC_CONSTANT_MACROS -DLLVM_DEFAULT_TARGET_TRIPLE=\"armv6-unknown-freebsd10.0\" -DLLVM_HOSTTRIPLE=\"armv6-unknown-freebsd10.0\" -DDEFAULT_SYSROOT=\"\" -I/usr/obj/usr/src/tmp/legacy/usr/include /usr/src/lib/clang/libllvmsupport/../../../contrib/llvm/lib/Support/APFloat.cpp /usr/src/lib/clang/libllvmsupport/../../../contrib/llvm/lib/Support/APInt.cpp /usr/src/lib/clang/libllvmsupport/../../../contrib/llvm/lib/Support/APSInt.cpp /usr/src/lib/clang/libllvmsupport/../../../contrib/llvm/lib/Support/Allocator.cpp /usr/src/lib/clang/libllvmsupport/../../../contrib/llvm/lib/Support/Atomic.cpp /usr/src/l
>> ib/clang/libllvmsupport/../../../contrib/llvm/lib/Support/BlockFrequency.cpp /usr/src/lib/clang/libllvmsupport/../../../contrib/llvm/lib/Support/BranchProbability.cpp /usr/src/lib/clang/libllvmsupport/../../../contrib/llvm/lib/Support/CommandLine.cpp /usr/src/lib/clang/libllvmsupport/../../../contrib/llvm/lib/Support/ConstantRange.cpp /usr/src/lib/clang/libllvmsupport/../../../contrib/llvm/lib/Support/ConvertUTFWrapper.cpp /usr/src/lib/clang/libllvmsupport/../../../contrib/llvm/lib/Support/CrashRecoveryContext.cpp /usr/src/lib/clang/libllvmsupport/../../../contrib/llvm/lib/Support/DAGDeltaAlgorithm.cpp /usr/src/lib/clang/libllvmsupport/../../../contrib/llvm/lib/Support/Debug.cpp /usr/src/lib/clang/libllvmsupport/../../../contrib/llvm/lib/Support/DeltaAlgorithm.cpp /usr/src/lib/clang/libllvmsupport/../../../contrib/llvm/lib/Support/Dwarf.cpp /usr/src/lib/clang/libllvmsupport/../../../contrib/llvm/lib/Support/DynamicLibrary.cpp /usr/src/lib/clang/libllvmsupport/../../../contri
>> b/llvm/lib/Support/Errno.cpp /usr/src/lib/clang/libllvmsupport/../../../contrib/llvm/lib/Support/ErrorHandling.cpp /usr/src/lib/clang/libllvmsupport/../../../contrib/llvm/lib/Support/FileOutputBuffer.cpp /usr/src/lib/clang/libllvmsupport/../../../contrib/llvm/lib/Support/FoldingSet.cpp /usr/src/lib/clang/libllvmsupport/../../../contrib/llvm/lib/Support/FormattedStream.cpp /usr/src/lib/clang/libllvmsupport/../../../contrib/llvm/lib/Support/GraphWriter.cpp /usr/src/lib/clang/libllvmsupport/../../../contrib/llvm/lib/Support/Hashing.cpp /usr/src/lib/clang/libllvmsupport/../../../contrib/llvm/lib/Support/Host.cpp /usr/src/lib/clang/libllvmsupport/../../../contrib/llvm/lib/Support/IncludeFile.cpp /usr/src/lib/clang/libllvmsupport/../../../contrib/llvm/lib/Support/IntEqClasses.cpp /usr/src/lib/clang/libllvmsupport/../../../contrib/llvm/lib/Support/IntervalMap.cpp /usr/src/lib/clang/libllvmsupport/../../../contrib/llvm/lib/Support/IntrusiveRefCntPtr.cpp /usr/src/lib/clang/libllvmsup
>> port/../../../contrib/llvm/lib/Support/IsInf.cpp /usr/src/lib/clang/libllvmsupport/../../../contrib/llvm/lib/Support/IsNAN.cpp /usr/src/lib/clang/libllvmsupport/../../../contrib/llvm/lib/Support/Locale.cpp /usr/src/lib/clang/libllvmsupport/../../../contrib/llvm/lib/Support/LockFileManager.cpp /usr/src/lib/clang/libllvmsupport/../../../contrib/llvm/lib/Support/ManagedStatic.cpp /usr/src/lib/clang/libllvmsupport/../../../contrib/llvm/lib/Support/Memory.cpp /usr/src/lib/clang/libllvmsupport/../../../contrib/llvm/lib/Support/MemoryBuffer.cpp /usr/src/lib/clang/libllvmsupport/../../../contrib/llvm/lib/Support/MemoryObject.cpp /usr/src/lib/clang/libllvmsupport/../../../contrib/llvm/lib/Support/Mutex.cpp /usr/src/lib/clang/libllvmsupport/../../../contrib/llvm/lib/Support/Path.cpp /usr/src/lib/clang/libllvmsupport/../../../contrib/llvm/lib/Support/PathV2.cpp /usr/src/lib/clang/libllvmsupport/../../../contrib/llvm/lib/Support/PluginLoader.cpp /usr/src/lib/clang/libllvmsupport/../../.
>> ./contrib/llvm/lib/Support/PrettyStackTrace.cpp /usr/src/lib/clang/libllvmsupport/../../../contrib/llvm/lib/Support/Process.cpp /usr/src/lib/clang/libllvmsupport/../../../contrib/llvm/lib/Support/Program.cpp /usr/src/lib/clang/libllvmsupport/../../../contrib/llvm/lib/Support/RWMutex.cpp /usr/src/lib/clang/libllvmsupport/../../../contrib/llvm/lib/Support/Regex.cpp /usr/src/lib/clang/libllvmsupport/../../../contrib/llvm/lib/Support/SearchForAddressOfSpecialSymbol.cpp /usr/src/lib/clang/libllvmsupport/../../../contrib/llvm/lib/Support/Signals.cpp /usr/src/lib/clang/libllvmsupport/../../../contrib/llvm/lib/Support/SmallPtrSet.cpp /usr/src/lib/clang/libllvmsupport/../../../contrib/llvm/lib/Support/SmallVector.cpp /usr/src/lib/clang/libllvmsupport/../../../contrib/llvm/lib/Support/SourceMgr.cpp /usr/src/lib/clang/libllvmsupport/../../../contrib/llvm/lib/Support/Statistic.cpp /usr/src/lib/clang/libllvmsupport/../../../contrib/llvm/lib/Support/StreamableMemoryObject.cpp /usr/src/lib
>> /clang/libllvmsupport/../../../contrib/llvm/lib/Support/StringExtras.cpp /usr/src/lib/clang/libllvmsupport/../../../contrib/llvm/lib/Support/StringMap.cpp /usr/src/lib/clang/libllvmsupport/../../../contrib/llvm/lib/Support/StringPool.cpp /usr/src/lib/clang/libllvmsupport/../../../contrib/llvm/lib/Support/StringRef.cpp /usr/src/lib/clang/libllvmsupport/../../../contrib/llvm/lib/Support/TargetRegistry.cpp /usr/src/lib/clang/libllvmsupport/../../../contrib/llvm/lib/Support/ThreadLocal.cpp /usr/src/lib/clang/libllvmsupport/../../../contrib/llvm/lib/Support/Threading.cpp /usr/src/lib/clang/libllvmsupport/../../../contrib/llvm/lib/Support/TimeValue.cpp /usr/src/lib/clang/libllvmsupport/../../../contrib/llvm/lib/Support/Timer.cpp /usr/src/lib/clang/libllvmsupport/../../../contrib/llvm/lib/Support/ToolOutputFile.cpp /usr/src/lib/clang/libllvmsupport/../../../contrib/llvm/lib/Support/Triple.cpp /usr/src/lib/clang/libllvmsupport/../../../contrib/llvm/lib/Support/Twine.cpp /usr/src/lib
>> /clang/libllvmsupport/../../../contrib/llvm/lib/Support/Valgrind.cpp /usr/src/lib/clang/libllvmsupport/../../../contrib/llvm/lib/Support/Watchdog.cpp /usr/src/lib/clang/libllvmsupport/../../../contrib/llvm/lib/Support/YAMLParser.cpp /usr/src/lib/clang/libllvmsupport/../../../contrib/llvm/lib/Support/YAMLTraits.cpp /usr/src/lib/clang/libllvmsupport/../../../contrib/llvm/lib/Support/circular_raw_ostream.cpp /usr/src/lib/clang/libllvmsupport/../../../contrib/llvm/lib/Support/raw_os_ostream.cpp /usr/src/lib/clang/libllvmsupport/../../../contrib/llvm/lib/Support/raw_ostream.cpp /usr/src/lib/clang/libllvmsupport/../../../contrib/llvm/lib/Support/system_error.cpp
>> c++ -O -pipe -I/usr/src/lib/clang/libllvmsupport/../../../contrib/llvm/include -I/usr/src/lib/clang/libllvmsupport/../../../contrib/llvm/tools/clang/include -I/usr/src/lib/clang/libllvmsupport/../../../contrib/llvm/lib/Support -I. -I/usr/src/lib/clang/libllvmsupport/../../../contrib/llvm/../../lib/clang/include -DLLVM_ON_UNIX -DLLVM_ON_FREEBSD -D__STDC_LIMIT_MACROS -D__STDC_CONSTANT_MACROS -fno-strict-aliasing -DLLVM_DEFAULT_TARGET_TRIPLE=\"armv6-unknown-freebsd10.0\" -DLLVM_HOSTTRIPLE=\"armv6-unknown-freebsd10.0\" -DDEFAULT_SYSROOT=\"\" -I/usr/obj/usr/src/tmp/legacy/usr/include -fno-exceptions -fno-rtti -c /usr/src/lib/clang/libllvmsupport/../../../contrib/llvm/lib/Support/APFloat.cpp -o APFloat.o
>> Assertion failed: ((PtrVal & ((1 << PtrTraits::NumLowBitsAvailable)-1)) == 0 && "Pointer is not sufficiently aligned"), function initWithPointer, file /usr/src/lib/clang/libclangsema/../../../contrib/llvm/include/llvm/ADT/PointerIntPair.h, line 100.
>> Stack dump:
>> 0. Program arguments: /usr/bin/c++ -cc1 -triple armv6-unknown-freebsd10.0 -S -disable-free -main-file-name APFloat.cpp -mrelocation-model static -mdisable-fp-elim -relaxed-aliasing -mconstructor-aliases -target-abi apcs-gnu -target-cpu arm1136jf-s -msoft-float -mfloat-abi soft -target-feature +soft-float -target-feature +soft-float-abi -target-feature -neon -coverage-file /tmp/APFloat-6ga4Rp.s -resource-dir /usr/bin/../lib/clang/3.3 -D LLVM_ON_UNIX -D LLVM_ON_FREEBSD -D __STDC_LIMIT_MACROS -D __STDC_CONSTANT_MACROS -D LLVM_DEFAULT_TARGET_TRIPLE="armv6-unknown-freebsd10.0" -D LLVM_HOSTTRIPLE="armv6-unknown-freebsd10.0" -D DEFAULT_SYSROOT="" -I /usr/src/lib/clang/libllvmsupport/../../../contrib/llvm/include -I /usr/src/lib/clang/libllvmsupport/../../../contrib/llvm/tools/clang/include -I /usr/src/lib/clang/libllvmsupport/../../../contrib/llvm/lib/Support -I . -I /usr/src/lib/clang/libllvmsupport/../../../contrib/llvm/../../lib/clang/include -I /usr/obj/usr/src/tmp/legacy/usr/in
>> clude -O2 -fdeprecated-macro -fno-dwarf-directory-asm -fdebug-compilation-dir /usr/obj/usr/src/tmp/usr/src/lib/clang/libllvmsupport -ferror-limit 19 -fmessage-length 0 -mstackrealign -fno-rtti -fno-signed-char -fobjc-runtime=gnustep -fobjc-default-synthesize-properties -fsjlj-exceptions -fdiagnostics-show-option -backend-option -vectorize-loops -o /tmp/APFloat-6ga4Rp.s -x c++ /usr/src/lib/clang/libllvmsupport/../../../contrib/llvm/lib/Support/APFloat.cpp
>> 1. /usr/include/c++/4.2/bits/basic_string.tcc:978:43: current parser token ';'
>> 2. /usr/include/c++/4.2/bits/basic_string.tcc:48:1 <Spelling=/usr/include/c++/4.2/bits/c++config.h:76:38>: parsing namespace 'std'
>> c++: error: unable to execute command: Abort trap (core dumped)
>> c++: error: clang frontend command failed due to signal (use -v to see invocation)
>> FreeBSD clang version 3.3 (trunk 178860) 20130405
>> Target: armv6-unknown-freebsd10.0
>> Thread model: posix
>> c++: note: diagnostic msg: PLEASE submit a bug report to http://llvm.org/bugs/ and include the crash backtrace, preprocessed source, and associated run script.
>> c++: note: diagnostic msg: Error generating preprocessed source(s).
>> *** [APFloat.o] Error code 254
>> 1 error
>> *** [bootstrap-tools] Error code 2
>> 1 error
>> *** [_bootstrap-tools] Error code 2
>> 1 error
>> *** [buildworld] Error code 2
>> 1 error
>> =====
>>
>> It seems it is having trouble with C++. The system is using the 3.3 version of clang:
>>
>> root at pi:/usr/src # c++ -v
>> FreeBSD clang version 3.3 (trunk 178860) 20130405
>> Target: armv6-unknown-freebsd10.0
>> Thread model: posix
>>
>>
>> I had the same problem with clang 3.2, too. I've also had problems with C++ building ports. For example, I can't install devel/subversion because it fails to build databases/db42 due to a C++ problem.
>>
>> Is this a known problem with the toolchain on armv6?
>>
>> Cheers,
>>
>> Paul.
>>
>> _______________________________________________
>> freebsd-arm at freebsd.org mailing list
>> http://lists.freebsd.org/mailman/listinfo/freebsd-arm
>> To unsubscribe, send any mail to "freebsd-arm-unsubscribe at freebsd.org"
>
More information about the freebsd-arm
mailing list