我正在读一本书,但在使用此代码进行编译时出现了一个错误。
$ rm -f injection.dylib
$ export PLATFORM=/Developer/Platforms/iPhoneOS.platform
$ $PLATFORM/Developer/usr/bin/arm-apple-darwin10-llvm-gcc-4.2 \
-c -o injection.o injection.c \
-isysroot $PLATFORM/Developer/SDKs/iPhoneOS5.0.sdk \ -fPIC
$ $PLATFORM/Developer/usr/bin/ld \ -dylib -lsystem -lobjc \
-o injection.dylib injection.o \
-syslibroot $PLATFORM/Developer/SDKs/iPhoneOS5.0.sdk/
我在这方面遇到了一些麻烦:
$PLATFORM/Developer/usr/bin/arm-apple-darwin10-llvm-gcc-4.2 \
-c -o injection.o injection.c \
-isysroot $PLATFORM/Developer/SDKs/iPhoneOS5.0.sdk \ -fPIC
这是错误
arm-apple-darwin10-llvm-gcc-4.2: -fPIC: No such file or directory
我该如何解决......这意味着什么?
答案 0 :(得分:2)
这意味着您错误地输入了命令行:
stieber@gatekeeper:~$ gcc \ -fPIC
gcc: error: -fPIC: No such file or directory
gcc: fatal error: no input files
compilation terminated.
似乎\在行的中间使gcc(也可能是llvm-gcc)停止将参数视为选项并始终将它们视为文件名。
stieber@gatekeeper:~$ gcc -fPIC
gcc: fatal error: no input files
compilation terminated.
给出了预期的结果。