【问题标题】:Missing text in compiler output编译器输出中缺少文本
【发布时间】:2014-07-17 13:20:29
【问题描述】:

我有一个正在使用 Eclipse 开发的 Java/C++ 组合应用程序。我认为(如果您认为我错了,请纠正我)它使用某些版本的 GCC 来编译 C++ 部分。当我要求 eclipse 构建我的项目时,我可以在 eclipse 的“控制台”选项卡中看到 C++ 编译过程的证据。我还在源代码中添加了一些#pragma 消息命令,并在编译期间在控制台选项卡中看到它们。完整的控制台文本如下:

14:08:07 **** Incremental Build of configuration Default for project Motion ****
"C:\\android-ndk-r9c\\ndk-build.cmd" all 
==on==
[armeabi-v7a] Compile++ thumb: mixed_sample <= cpp_part.cpp
jni/cpp_part.cpp:34:17: note: #pragma message: Compiling, here we go...
jni/cpp_part.cpp:6870:17: note: #pragma message: Compiling, all done.
[armeabi-v7a] SharedLibrary  : libmixed_sample.so
C:/android-ndk-r9c/toolchains/arm-linux-androideabi-4.6/prebuilt/windows-x86_64/bin/../lib/gcc/arm-linux-androideabi/4.6/../../../../arm-linux-androideabi/bin/ld.exe: warning: hidden symbol '__aeabi_atexit' in C:/android-ndk-r9c/sources/cxx-stl/gnu-libstdc++/4.6/libs/armeabi-v7a/libgnustl_static.a(atexit_arm.o) is referenced by DSO ./obj/local/armeabi-v7a/libopencv_java.so
[armeabi-v7a] Install        : libmixed_sample.so => libs/armeabi-v7a/libmixed_sample.so
[armeabi-v7a] Install        : libopencv_java.so => libs/armeabi-v7a/libopencv_java.so

14:08:10 Build Finished (took 2s.617ms)

然后我想尝试各种编译标志,但开始怀疑它们是否有任何效果。所以我尝试添加一个“-Q”标志(see here),它应该在编译时产生一个函数名称列表,但是在编译后的控制台选项卡中,我没有看到这样的列表。所以现在我怀疑几个可能的错误之一:

  1. 编译器输出显示在其他地方。
  2. 编译器不是 GCC,标志被忽略。
  3. GCC 的特定实现没有实现 -Q
  4. 我错误地添加了标志,因此它实际上并未发送到编译器。

关于 4,我的 android.mk 中有一行内容:

LOCAL_CFLAGS := -pg -Winline -Wpedantic -O3 -v -Q

有什么想法吗?

【问题讨论】:

    标签: android eclipse android-ndk


    【解决方案1】:

    哇!答案是选项 4。我的标志被忽略了。原来我还有一个 application.mk 文件,其中包含“APP_CPPFLAGS :=”,如果我在其末尾附加标志,那么控制台选项卡将包含我希望首先看到的所有内容。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2016-12-15
      • 1970-01-01
      • 2016-09-27
      • 2016-09-26
      • 2018-10-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多