我在Beagleboard-Xm上编译,内核:
root@beagleboard:~# uname -a
Linux beagleboard 2.6.32 #3 PREEMPT Tue Jul 26 10:56:56 CEST 2011 armv7l unknown
我现在尝试使用CMake编译静态库,一切正常,直到链接库:
root@beagleboard:/usr/src/build/beaglebuild# make
Scanning dependencies of target phoenix_base
[ 2%] Building CXX object 00_phoenix_base/CMakeFiles/phoenix_base.dir/src/exec_buffer.cpp.o
[ 5%] Building CXX object 00_phoenix_base/CMakeFiles/phoenix_base.dir/src/func_buffer.cpp.o
[ 8%] Building CXX object 00_phoenix_base/CMakeFiles/phoenix_base.dir/src/worker.cpp.o
[ 11%] Building CXX object 00_phoenix_base/CMakeFiles/phoenix_base.dir/src/workermanager.cpp.o
[ 14%] Building CXX object 00_phoenix_base/CMakeFiles/phoenix_base.dir/src/command.cpp.o
[ 17%] Building CXX object 00_phoenix_base/CMakeFiles/phoenix_base.dir/src/logger.cpp.o
[ 20%] Building CXX object 00_phoenix_base/CMakeFiles/phoenix_base.dir/src/signal.cpp.o
Linking CXX static library libphoenix_base.a
BusyBox v1.13.2 (2011-02-25 16:46:47 CET) multi-call binary
Usage: ar [-o] [-v] [-p] [-t] [-x] ARCHIVE FILES
Extract or list FILES from an ar archive
Options:
-o Preserve original dates
-p Extract to stdout
-t List
-x Extract
-v Verbose
make[2]: *** [00_phoenix_base/libphoenix_base.a] Error 1
make[1]: *** [00_phoenix_base/CMakeFiles/phoenix_base.dir/all] Error 2
make: *** [all] Error 2
在我的“ar --help”中打印相同的东西。
有没有办法在电路板上运行链接? 可能是什么问题?
其他一些系统版本:
root@beagleboard:~# cmake --version
cmake version 2.8.2
root@beagleboard:~# g++ --version
g++ (GCC) 4.3.3
Copyright (C) 2008 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.
答案 0 :(得分:0)
经过多次麻烦我交叉编译了一个完全最新版本的ar(我在板上的那个已经过时了)我摆脱了BusyBox。
现在一切都按照我的预期运作。