msys make for Android

Compilation and installation of DCMTK

Moderator: Moderator Team

Message
Author
GGK
Posts: 20
Joined: Mon, 2012-11-12, 14:49

msys make for Android

#1 Post by GGK »

Hi,

one problem solved, the next is waiting in the queue...I'm worry about, buts that's life... :?

CMake configure and generating finished without problems and errors (no errors in the output), but I don't get any output on my AVD (Files were copied in the ANDROID_TEMPORARY_FILESLOCATION). Perhaps, thats OK so.

Following the manual, I start the msys - sh and navigate to my Build-Folder.
Type make...the prompt came back after 1 second, the process (useing ps) is still running...but I seems to me that nothing is happend...


Image

Thanks for your assist

GGK

Jan Schlamelcher
OFFIS DICOM Team
OFFIS DICOM Team
Posts: 318
Joined: Mon, 2014-03-03, 09:51
Location: Oldenburg, Germany

Re: msys make for Android

#2 Post by Jan Schlamelcher »

This looks really strange. Why does make output some random Windows cmd information? Try "make help". It should output a list of available targets, otherwhise something is seriously wrong with your make program.

GGK
Posts: 20
Joined: Mon, 2012-11-12, 14:49

Re: msys make for Android

#3 Post by GGK »

Indeed, it do....but I don't believe that there is something wrong with my msys installation.

Probably there is something wrong in my make-Process, cause output of make outside the target build folder displays not the windows command prompt.

Image

It feels me strange, that packages will not get found...an no ouptput on my avd is shown
Starting the Android device emulator...
Info: DCMTK ZLIB support will be enabled
Info: DCMTK's builtin private dictionary support will be disabled
Info: Thread support will be enabled
Info: Wide char file I/O functions will be disabled
Info: Wide char main function for command line tools will be disabled
Waiting until the Android device emulator is ready to receive instructions...
Inspecting fundamental arithmetic types...
--
-- TRAPS MODULO
-- char yes yes
-- signed char yes yes
-- unsigned char yes yes
-- signed short yes yes
-- unsigned short yes yes
-- signed int yes yes
-- unsigned int yes yes
-- signed long yes yes
-- unsigned long yes yes
--
-- float double
-- TRAPS no no
-- HAS INFINITY yes yes
-- QUIET NAN yes yes
-- SIGNALING NAN no no
-- IEC-559 no no
-- HAS DENORM yes yes
-- TINYNESS BEFORE yes yes
-- DENORM LOSS yes yes
--
Looking for CMake command CONFIGURE_PACKAGE_CONFIG_FILE
Looking for CMake command CONFIGURE_PACKAGE_CONFIG_FILE - found
Looking for CMake command WRITE_BASIC_PACKAGE_VERSION_FILE
Looking for CMake command WRITE_BASIC_PACKAGE_VERSION_FILE - found
Configuring done
Generating done

GGK
Last edited by GGK on Thu, 2015-09-17, 16:00, edited 1 time in total.

Jan Schlamelcher
OFFIS DICOM Team
OFFIS DICOM Team
Posts: 318
Joined: Mon, 2014-03-03, 09:51
Location: Oldenburg, Germany

Re: msys make for Android

#4 Post by Jan Schlamelcher »

Looks really strage. The CMake output looks fine though, and those test results come frome the AVD...

GGK
Posts: 20
Joined: Mon, 2012-11-12, 14:49

Re: msys make for Android

#5 Post by GGK »

which file does the make command touch...

perhaps this file has an error an msys crashes...?

can I upload this file for you to check it?

GGK
Posts: 20
Joined: Mon, 2012-11-12, 14:49

Re: msys make for Android

#6 Post by GGK »

Hi,

"make -d" provides the following output...perhaps anyone can find a reason for my problems...
Seems that some files don't exist...but I don't if they are necessary
sh-3.1$ make -d
GNU Make 3.81
Copyright (C) 2006 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.

This program built for i686-pc-msys
Reading makefiles...
Reading makefile `Makefile'...
Updating makefiles....
Considering target file `Makefile'.
Looking for an implicit rule for `Makefile'.
Trying pattern rule with stem `Makefile'.
Trying implicit prerequisite `Makefile,v'.
Trying pattern rule with stem `Makefile'.
Trying implicit prerequisite `RCS/Makefile,v'.
Trying pattern rule with stem `Makefile'.
Trying implicit prerequisite `RCS/Makefile'.
Trying pattern rule with stem `Makefile'.
Trying implicit prerequisite `s.Makefile'.
Trying pattern rule with stem `Makefile'.
Trying implicit prerequisite `SCCS/s.Makefile'.
Looking for a case-insensitive implicit rule for `Makefile'.
Trying pattern rule with stem `Makefile'.
Trying implicit prerequisite `Makefile,v'.
Trying pattern rule with stem `Makefile'.
Trying implicit prerequisite `RCS/Makefile,v'.
Trying pattern rule with stem `Makefile'.
Trying implicit prerequisite `RCS/Makefile'.
Trying pattern rule with stem `Makefile'.
Trying implicit prerequisite `s.Makefile'.
Trying pattern rule with stem `Makefile'.
Trying implicit prerequisite `SCCS/s.Makefile'.
No implicit rule found for `Makefile'.
Finished prerequisites of target file `Makefile'.
No need to remake target `Makefile'.
Updating goal targets....
Considering target file `default_target'.
File `default_target' does not exist.
Considering target file `all'.
File `all' does not exist.
Considering target file `cmake_check_build_system'.
File `cmake_check_build_system' does not exist.
Finished prerequisites of target file `cmake_check_build_system'.
Must remake target `cmake_check_build_system'.
Putting child 0x0a01e948 (cmake_check_build_system) PID 1112 on the chain.
Live child 0x0a01e948 (cmake_check_build_system) PID 1112
Microsoft Windows [Version 6.1.7601]
Copyright (c) 2009 Microsoft Corporation. Alle Rechte vorbehalten.

G:\DCMTK_SRC\Build-3.6.1>
Thanks
GGK

Jan Schlamelcher
OFFIS DICOM Team
OFFIS DICOM Team
Posts: 318
Joined: Mon, 2014-03-03, 09:51
Location: Oldenburg, Germany

Re: msys make for Android

#7 Post by Jan Schlamelcher »

It seems it just stops in the middle, putting out that message from the cmd. Can't really tell anything more from that dump.

GGK
Posts: 20
Joined: Mon, 2012-11-12, 14:49

Re: msys make for Android

#8 Post by GGK »

probably this - non interpretable error in the CMakeError.log gives a useful hint whats causing my problems:

Code: Select all

Run Build Command:"c:/MinGW/bin/mingw32-make.exe" "cmTC_74283/fast"
c:/MinGW/bin/mingw32-make.exe -f CMakeFiles\cmTC_74283.dir\build.make CMakeFiles/cmTC_74283.dir/build

mingw32-make.exe[1]: Entering directory 'G:/DCMTK_SRC/Build-3.6.1/CMakeFiles/CMakeTmp'

Building C object CMakeFiles/cmTC_74283.dir/CheckFunctionExists.c.o

G:\Programme\SKDs\android-ndk-r10e\toolchains\arm-linux-androideabi-4.9\prebuilt\windows\bin\arm-linux-androideabi-gcc.exe  -DANDROID -fexceptions -Wno-psabi --sysroot=G:/Programme/SKDs/android-ndk-r10e/platforms/android-8/arch-arm -fpic -fPIE -funwind-tables -finline-limit=64 -fsigned-char -no-canonical-prefixes -march=armv7-a -mfloat-abi=softfp -mfpu=vfpv3-d16 -fdata-sections -ffunction-sections -Wa,--noexecstack  -D_XOPEN_SOURCE_EXTENDED -D_XOPEN_SOURCE=500 -D_BSD_SOURCE -D_BSD_COMPAT -D_OSF_SOURCE -D_POSIX_C_SOURCE=199506L -DCHECK_FUNCTION_EXISTS=sem_init -isystem G:\Programme\SKDs\android-ndk-r10e\platforms\android-8\arch-arm\usr\include -isystem G:\Programme\SKDs\android-ndk-r10e\sources\cxx-stl\gnu-libstdc++\4.9\include -isystem G:\Programme\SKDs\android-ndk-r10e\sources\cxx-stl\gnu-libstdc++\4.9\libs\armeabi-v7a\include    -o CMakeFiles\cmTC_74283.dir\CheckFunctionExists.c.o   -c "C:\Program Files\CMake\share\cmake-3.3\Modules\CheckFunctionExists.c"

Linking C executable cmTC_74283

"C:\Program Files\CMake\bin\cmake.exe" -E cmake_link_script CMakeFiles\cmTC_74283.dir\link.txt --verbose=1

G:\Programme\SKDs\android-ndk-r10e\toolchains\arm-linux-androideabi-4.9\prebuilt\windows\bin\arm-linux-androideabi-gcc.exe  -fexceptions -Wno-psabi --sysroot=G:/Programme/SKDs/android-ndk-r10e/platforms/android-8/arch-arm -fpic -fPIE -funwind-tables -finline-limit=64 -fsigned-char -no-canonical-prefixes -march=armv7-a -mfloat-abi=softfp -mfpu=vfpv3-d16 -fdata-sections -ffunction-sections -Wa,--noexecstack  -D_XOPEN_SOURCE_EXTENDED -D_XOPEN_SOURCE=500 -D_BSD_SOURCE -D_BSD_COMPAT -D_OSF_SOURCE -D_POSIX_C_SOURCE=199506L -DCHECK_FUNCTION_EXISTS=sem_init  -fPIE -pie -Wl,--fix-cortex-a8 -Wl,--no-undefined -Wl,-allow-shlib-undefined -Wl,--gc-sections -Wl,-z,noexecstack -Wl,-z,relro -Wl,-z,now -Wl,-z,nocopyreloc  CMakeFiles/cmTC_74283.dir/CheckFunctionExists.c.o -o cmTC_74283  -L\libs\armeabi-v7a -rdynamic -lrt  "G:/Programme/SKDs/android-ndk-r10e/sources/cxx-stl/gnu-libstdc++/4.9/libs/armeabi-v7a/libsupc++.a"

G:/Programme/SKDs/android-ndk-r10e/toolchains/arm-linux-androideabi-4.9/prebuilt/windows/bin/../lib/gcc/arm-linux-androideabi/4.9/../../../../arm-linux-androideabi/bin/ld.exe: error: cannot find -lrt

collect2.exe: error: ld returned 1 exit status

CMakeFiles\cmTC_74283.dir\build.make:96: recipe for target 'cmTC_74283' failed

mingw32-make.exe[1]: *** [cmTC_74283] Error 1

mingw32-make.exe[1]: Leaving directory 'G:/DCMTK_SRC/Build-3.6.1/CMakeFiles/CMakeTmp'

Makefile:125: recipe for target 'cmTC_74283/fast' failed

mingw32-make.exe: *** [cmTC_74283/fast] Error 2


Thanks GGK

Jan Schlamelcher
OFFIS DICOM Team
OFFIS DICOM Team
Posts: 318
Joined: Mon, 2014-03-03, 09:51
Location: Oldenburg, Germany

Re: msys make for Android

#9 Post by Jan Schlamelcher »

GGK wrote:probably this - non interpretable error in the CMakeError.log gives a useful hint whats causing my problems
Indeed:
GGK wrote:G:/Programme/SKDs/android-ndk-r10e/platforms/android-8/arch-arm
It seems you are using ANDROID_NATIVE_API_LEVEL=8. You should try with 17 or higher (17 is what I used while creating the CMake scripts).

GGK
Posts: 20
Joined: Mon, 2012-11-12, 14:49

Re: msys make for Android

#10 Post by GGK »

got the same error message using API_LEVEL 17

Code: Select all

Determining if the function sem_init exists in the rt failed with the following output:
Change Dir: G:/DCMTK_SRC_GIT/Build-3.6.1/CMakeFiles/CMakeTmp

Run Build Command:"c:/MinGW/bin/mingw32-make.exe" "cmTC_39e51/fast"
c:/MinGW/bin/mingw32-make.exe -f CMakeFiles\cmTC_39e51.dir\build.make CMakeFiles/cmTC_39e51.dir/build

mingw32-make.exe[1]: Entering directory 'G:/DCMTK_SRC_GIT/Build-3.6.1/CMakeFiles/CMakeTmp'

Building C object CMakeFiles/cmTC_39e51.dir/CheckFunctionExists.c.o

G:\Programme\SKDs\android-ndk-r10e\toolchains\arm-linux-androideabi-4.9\prebuilt\windows\bin\arm-linux-androideabi-gcc.exe  -DANDROID -fexceptions -Wno-psabi --sysroot=G:/Programme/SKDs/android-ndk-r10e/platforms/android-17/arch-arm -fpic -funwind-tables -finline-limit=64 -fsigned-char -no-canonical-prefixes -march=armv7-a -mfloat-abi=softfp -mfpu=vfpv3-d16 -fdata-sections -ffunction-sections -Wa,--noexecstack  -D_XOPEN_SOURCE_EXTENDED -D_XOPEN_SOURCE=500 -D_BSD_SOURCE -D_DEFAULT_SOURCE -D_BSD_COMPAT -D_OSF_SOURCE -D_POSIX_C_SOURCE=199506L -DCHECK_FUNCTION_EXISTS=sem_init -isystem G:\Programme\SKDs\android-ndk-r10e\platforms\android-17\arch-arm\usr\include -isystem G:\Programme\SKDs\android-ndk-r10e\sources\cxx-stl\gnu-libstdc++\4.9\include -isystem G:\Programme\SKDs\android-ndk-r10e\sources\cxx-stl\gnu-libstdc++\4.9\libs\armeabi-v7a\include    -o CMakeFiles\cmTC_39e51.dir\CheckFunctionExists.c.o   -c G:\CMake\share\cmake-3.3\Modules\CheckFunctionExists.c

Linking C executable cmTC_39e51

G:\CMake\bin\cmake.exe -E cmake_link_script CMakeFiles\cmTC_39e51.dir\link.txt --verbose=1

G:\Programme\SKDs\android-ndk-r10e\toolchains\arm-linux-androideabi-4.9\prebuilt\windows\bin\arm-linux-androideabi-gcc.exe  -fexceptions -Wno-psabi --sysroot=G:/Programme/SKDs/android-ndk-r10e/platforms/android-17/arch-arm -fpic -funwind-tables -finline-limit=64 -fsigned-char -no-canonical-prefixes -march=armv7-a -mfloat-abi=softfp -mfpu=vfpv3-d16 -fdata-sections -ffunction-sections -Wa,--noexecstack  -D_XOPEN_SOURCE_EXTENDED -D_XOPEN_SOURCE=500 -D_BSD_SOURCE -D_DEFAULT_SOURCE -D_BSD_COMPAT -D_OSF_SOURCE -D_POSIX_C_SOURCE=199506L -DCHECK_FUNCTION_EXISTS=sem_init   -Wl,--fix-cortex-a8 -Wl,--no-undefined -Wl,-allow-shlib-undefined -Wl,--gc-sections -Wl,-z,noexecstack -Wl,-z,relro -Wl,-z,now -Wl,-z,nocopyreloc  CMakeFiles/cmTC_39e51.dir/CheckFunctionExists.c.o -o cmTC_39e51  -L\libs\armeabi-v7a -rdynamic -lrt  "G:/Programme/SKDs/android-ndk-r10e/sources/cxx-stl/gnu-libstdc++/4.9/libs/armeabi-v7a/libsupc++.a"

G:/Programme/SKDs/android-ndk-r10e/toolchains/arm-linux-androideabi-4.9/prebuilt/windows/bin/../lib/gcc/arm-linux-androideabi/4.9/../../../../arm-linux-androideabi/bin/ld.exe: error: cannot find -lrt

collect2.exe: error: ld returned 1 exit status

CMakeFiles\cmTC_39e51.dir\build.make:96: recipe for target 'cmTC_39e51' failed

mingw32-make.exe[1]: *** [cmTC_39e51] Error 1

mingw32-make.exe[1]: Leaving directory 'G:/DCMTK_SRC_GIT/Build-3.6.1/CMakeFiles/CMakeTmp'

Makefile:125: recipe for target 'cmTC_39e51/fast' failed

mingw32-make.exe: *** [cmTC_39e51/fast] Error 2

Jan Schlamelcher
OFFIS DICOM Team
OFFIS DICOM Team
Posts: 318
Joined: Mon, 2014-03-03, 09:51
Location: Oldenburg, Germany

Re: msys make for Android

#11 Post by Jan Schlamelcher »

The error indicates that >rt< is missing, search for a file named librt.so or librt.a in your Android toolchain and tell me its location. The library path is most likely missconfigured.

GGK
Posts: 20
Joined: Mon, 2012-11-12, 14:49

Re: msys make for Android

#12 Post by GGK »

Can't find the both files in any of my toolchain files:
Searched in G:\Programme\SKDs\android-ndk-r10e\toolchains\...and subdirectories

(working with NDK r10e)

seems to be strange...
Google search provides no solution getting this both libraries.

GGK

Jan Schlamelcher
OFFIS DICOM Team
OFFIS DICOM Team
Posts: 318
Joined: Mon, 2014-03-03, 09:51
Location: Oldenburg, Germany

Re: msys make for Android

#13 Post by Jan Schlamelcher »

I found this:
there is no librt.so on Android (just like there is no libpthread.so). All the corresponding features are exported b the C library instead.
So why does your setup try to link it? I just seached through the android.toolchain.cmake, it does not seem to originate from there.

GGK
Posts: 20
Joined: Mon, 2012-11-12, 14:49

Re: msys make for Android

#14 Post by GGK »

So why does your setup try to link it? I just seached through the android.toolchain.cmake, it does not seem to originate from there.
I used various DCMTK Snapshots and used the android.toolchain.cmake from these snapshots (also following the tutorial you called "forbitten fruits").
Which part of my setup must be changed and in which way? I'm actually a little bit baffled ;-)

GGK

Jan Schlamelcher
OFFIS DICOM Team
OFFIS DICOM Team
Posts: 318
Joined: Mon, 2014-03-03, 09:51
Location: Oldenburg, Germany

Re: msys make for Android

#15 Post by Jan Schlamelcher »

I called the tutorial "forbitten fruits" because it is incomplete and some parts are even misleading. Another idea I got in the meantime is that it is possibly due to using mingw32-make, I think I used "make" instead, which might be a bit different. By the way, are you using MinGW Makefiles or MSYS Makefiles?

Post Reply

Who is online

Users browsing this forum: No registered users and 1 guest