这两天搞kivy 搞得焦头烂额

rt, for android,

用到matplotlib.pyplot.imread,matplotlib没有recipes,试着编译一下问题非常多,换了opencv,编译出现错误:

  Quoted variables like "LIBRARY_OUTPUT_PATH_ROOT" will no longer be
  dereferenced when the policy is set to NEW.  Since the policy is not set
  the OLD behavior will be used.
Call Stack (most recent call first):
  /usr/share/cmake-3.10/Modules/CMakeDetermineSystem.cmake:94 (include)
  CMakeLists.txt:56 (project)
This warning is for project developers.  Use -Wno-dev to suppress it.

CMake Error: CMake was unable to find a build program corresponding to "Unix Makefiles".  CMAKE_MAKE_PROGRAM is not set.  You probably need to select a different build tool.
-- Configuring incomplete, errors occurred!


自己改recipes,加入了一个编译选项,'-DCMAKE_MAKE_PROGRAM=/usr/bin/make'

终于可以了。。。。


-----------------------------------------

关于字体,群里给出的方案:(还没测试)

1.将需要使用的字体,复制到Python36\Lib\site-packages\kivy\data\fonts
2.修改%homepath%\.kivy\config.ini中的default_font的值,将其中的一个(不能是第一个,因为kivy.core.text.__init__中使用pop(0)移除了第一个)替换为data\font\simsun.ttc等之前复制的字体名。
这样就不需要每次都使用font_name了



-----------------------------------------------

android NDK:No rule to make target

文件:Android.mk

很蛋疼的问题,要是没有空格提示,不股沟,马大哈会疯掉


LOCAL_PATH := $(call my-dir)__


多了两个空格,多了个四个空格。。。

包括之后的几个参数。。。。。细节决定成败

所以,这几个设置最后千万不能有空格

---------------------------------------------------------------------

尝试纯手工编译pywavelets,坑也比较多。。。。

pywavelets主要编译在_extensions 文件夹中,及其下目录c,随便写的,估计libpython2.7用不到

roid/platform/build/dists/myapp/python-install/include/python2.7/
#LOCAL_CFLAGS += -I $(LOCAL_PATH)/../../../../.buildozer/android/platform/build/build/other_builds/numpy/armeabi/numpy/numpy/core/include/
LOCAL_LDFLAGS += -L $(LOCAL_PATH)/../../../../.buildozer/android/platform/build/dists/myapp/libs/armeabi
LOCAL_SHARED_LIBRARIES += python2.7  # This line links to libpython2.7
LOCAL_LDLIBS += -llog             # This line links to the Android log

include $(BUILD_SHARED_LIBRARY)
[19:55 jeroen@jeroen c]$ ls
Android.mk      common.c       convolution.h           cwt.c        

编译了libc_wt.so

之后是_extensions,偷懒复制粘贴的~~

LOCAL_PATH:=$(call my-dir)

include $(CLEAR_VARS)  
LOCAL_MODULE := libpython2.7
LOCAL_SRC_FILES := libpython2.7.so
LOCAL_EXPORT_C_INCLUDES := $(LOCAL_PATH)/../../../.buildozer/android/platform/build/dists/myapp/python-install/include/python2.7/
include $(PREBUILT_SHARED_LIBRARY)

include $(CLEAR_VARS)  
LOCAL_MODULE := libc_wt
LOCAL_SRC_FILES := libc_wt.so
LOCAL_EXPORT_C_INCLUDES := $(LOCAL_PATH)/c/
include $(PREBUILT_SHARED_LIBRARY)

include $(CLEAR_VARS)
LOCAL_MODULE    := _cwt
LOCAL_SRC_FILES :=  _cwt.c
LOCAL_CFLAGS := -I$(LOCAL_PATH)/../../../.buildozer/android/platform/build/dists/myapp/private/lib/python2.7/site-packages/numpy/core/include/
LOCAL_C_INCLUDES := $(LOCAL_PATH)/../../../.buildozer/android/platform/build/dists/myapp/python-install/include/python2.7/
LOCAL_SHARED_LIBRARIES := libpython2.7
LOCAL_SHARED_LIBRARIES += libc_wt
include $(BUILD_SHARED_LIBRARY)

include $(CLEAR_VARS)
LOCAL_MODULE    := _swt
LOCAL_SRC_FILES :=  _swt.c
LOCAL_CFLAGS := -I$(LOCAL_PATH)/../../../.buildozer/android/platform/build/dists/myapp/private/lib/python2.7/site-packages/numpy/core/include/
LOCAL_C_INCLUDES := $(LOCAL_PATH)/../../../.buildozer/android/platform/build/dists/myapp/python-install/include/python2.7/
LOCAL_SHARED_LIBRARIES := libpython2.7
LOCAL_SHARED_LIBRARIES += libc_wt
include $(BUILD_SHARED_LIBRARY)

include $(CLEAR_VARS)
LOCAL_MODULE    := _dwt
LOCAL_SRC_FILES :=  _dwt.c
LOCAL_CFLAGS := -I$(LOCAL_PATH)/../../../.buildozer/android/platform/build/dists/myapp/private/lib/python2.7/site-packages/numpy/core/include/
LOCAL_C_INCLUDES := $(LOCAL_PATH)/../../../.buildozer/android/platform/build/dists/myapp/python-install/include/python2.7/
LOCAL_SHARED_LIBRARIES := libpython2.7
LOCAL_SHARED_LIBRARIES += libc_wt
include $(BUILD_SHARED_LIBRARY)

include $(CLEAR_VARS)
LOCAL_MODULE    := _pywt
LOCAL_SRC_FILES :=  _pywt.c
LOCAL_CFLAGS := -I$(LOCAL_PATH)/../../../.buildozer/android/platform/build/dists/myapp/private/lib/python2.7/site-packages/numpy/core/include/
LOCAL_C_INCLUDES := $(LOCAL_PATH)/../../../.buildozer/android/platform/build/dists/myapp/python-install/include/python2.7/
LOCAL_SHARED_LIBRARIES := libpython2.7
LOCAL_SHARED_LIBRARIES += libc_wt
include $(BUILD_SHARED_LIBRARY)

编译这四个*wt.so文件


你可能感兴趣的:(这两天搞kivy 搞得焦头烂额)