zoukankan      html  css  js  c++  java
  • CANNOT LINK EXECUTABLE错误

      今天编译一个远程server,始终出现这个错误。最后发现是应用程序运行时连接的动态库不对(编译时连接的库不是他需要的)不仅仅包含应用程序的动态库,还要包含此运行库所需的运行库(应用程序->运行库->运行库)

      注:这是第三次碰到这个错误了,而且同之前2次一样,找了老多原因,耽误了大量时间,实在是不应该。特在此做个记录。

    Android.mk文件编写注意事项:

     1 LOCAL_PATH := $(call my-dir)
     2 
     3 include $(CLEAR_VARS)
     4 
     5 LOCAL_MODULE_TAGS := optional
     6 
     7 LOCAL_SRC_FILES := AddService.cpp
     8 
     9 LOCAL_C_INCLUDES := $(JNI_H_INCLUDE)
    10 
    11 LOCAL_SHARED_LIBRARIES := \
    12                         libcutils \
    13                         libutils  \
    14                         libbinder \
    15                         libandroid_runtime
    16 
    17 LOCAL_PRELINK_MODULE := false
    18 
    19 LOCAL_MODULE := libAdd
    20 
    21 include $(BUILD_SHARED_LIBRARY)

    1、 如果在红色部分改成这样:LOCAL_MODULE:=libAdd ##注释

    编译出来的库名称为libAdd,就不带.so结尾

    2、如果2个Android.mk整合成一个,那么需要打掉一个 

    LOCAL_PATH := $(call my-dir)

    不然会到不到源码路径。

  • 相关阅读:
    51nod 1174 区间最大值(RMQ and 线段树)
    Round #447(Div 2)
    51nod 2006 飞行员匹配
    75.Java异常处理机制throws
    74.Java异常处理机制
    emmm
    数据库关系代数
    汇编实验二 2进制转16进制
    汇编实验一 显示字符串
    JustOj 1386: 众数的数量
  • 原文地址:https://www.cnblogs.com/jevan/p/2770544.html
Copyright © 2011-2022 走看看