Closed jgranick closed 12 years ago
I'm away at a conference at the moment, so I can't take a look. This should definitely work on Linux, so something's wrong somewhere... Can I see more of the failure log? Also, if you just need the library, you could import the project into the NDK instead and build it that way instead of from the command-line.
----- Original Message ----- From: Joshua Granick [mailto:reply@reply.github.com] Sent: Wednesday, March 07, 2012 11:30 PM To: Jeremy Nicholl Subject: [SDL] "configure" command fails in Ubuntu Linux (#14)
I'm interested in using SDL to bring a cross-platform application framework over for the BlackBerry.
I have tried "build_for_playbook.sh" in two versions of Ubuntu (one 32-bit and one 64) just to make sure. In both installs, configure fails, saying that qcc cannot create executables.
Here is an example of the commands I am using:
source /opt/bbndk-2.0.0/bbndk-env.sh ./build_for_playbook.sh
Should I be doing something differently, or is this an issue with using Linux instead of OS X? (I don't have a Mac on hand at this moment). I'm just interested in compiling the current version as a dynamic library, so I can get one with making sure the framework runs properly for the device.
Thank you very much!
Reply to this email directly or view it on GitHub: https://github.com/blackberry/SDL/issues/14
This transmission (including any attachments) may contain confidential information, privileged material (including material protected by the solicitor-client or other applicable privileges), or constitute non-public information. Any use of this information by anyone other than the intended recipient is prohibited. If you have received this transmission in error, please immediately reply to the sender and delete this information from your system. Use, dissemination, distribution, or reproduction of this transmission by unintended recipients is not authorized and may be unlawful.
Thanks! Are you at GDC?
I can look at building it from inside the NDK. Do you have any pointers of where I would copy the files, and what I would run to get the process started?
Here is the contents of my config.log file: http://pastie.org/3546232
Yes, I'm at GDC. There should already be a .project file in the repository. Just open up the ndk, go to File, Import, Existing Projects into Workspace, choose the directory and it should import and be able to build.
The problem in this case is that SDL actually depends on another library, TouchControlOverlay. You can check it out of github and import it into the ndk to build it. That's why the configure is currently failing.
----- Original Message ----- From: Joshua Granick [mailto:reply@reply.github.com] Sent: Thursday, March 08, 2012 12:06 AM To: Jeremy Nicholl Subject: Re: [SDL] "configure" command fails in Ubuntu Linux (#14)
Thanks! Are you at GDC?
I can look at building it from inside the NDK. Do you have any pointers of where I would copy the files, and what I would run to get the process started?
Here is the contents of my config.log file:
This file contains any messages produced by compilers while running configure, to aid debugging if configure makes a mistake.
It was created by configure, which was generated by GNU Autoconf 2.67. Invocation command line was
$ ./configure --prefix=/home/joshua/Development/BlackBerry/SDL/playbook_prefix --build=i686-pc-linux --host=arm-unknown-nto-qnx6.5.0eabi --without-x --enable-pthreads --enable-audio --enable-video-playbook
hostname = joshua-VirtualBox uname -m = i686 uname -r = 2.6.38-8-generic uname -s = Linux uname -v = #42-Ubuntu SMP Mon Apr 11 03:31:50 UTC 2011
/usr/bin/uname -p = unknown /bin/uname -X = unknown
/bin/arch = unknown /usr/bin/arch -k = unknown /usr/convex/getsysinfo = unknown /usr/bin/hostinfo = unknown /bin/machine = unknown /usr/bin/oslevel = unknown /bin/universe = unknown
PATH: /opt/bbndk-2.0.0/host/linux/x86/usr/bin PATH: /etc/rim/bbndk/bin PATH: /opt/bbndk-2.0.0/host/linux/x86/usr/qde/eclipse/jre/bin PATH: /opt/bbndk-2.0.0/host/linux/x86/usr/bin PATH: /etc/rim/bbndk/bin PATH: /opt/bbndk-2.0.0/host/linux/x86/usr/qde/eclipse/jre/bin PATH: /usr/local/sbin PATH: /usr/local/bin PATH: /usr/sbin PATH: /usr/bin PATH: /sbin PATH: /bin PATH: /usr/games
configure:2872: checking for arm-unknown-nto-qnx6.5.0eabi-gcc configure:2899: result: /opt/bbndk-2.0.0/host/linux/x86/usr/bin/qcc -V4.4.2,gcc_ntoarmv7le_cpp configure:3168: checking for C compiler version configure:3177: /opt/bbndk-2.0.0/host/linux/x86/usr/bin/qcc -V4.4.2,gcc_ntoarmv7le_cpp --version >&5 cc: unknown option: '--version' configure:3188: $? = 1 configure:3177: /opt/bbndk-2.0.0/host/linux/x86/usr/bin/qcc -V4.4.2,gcc_ntoarmv7le_cpp -v >&5 cc: looking for gcc_ntoarmv7le_cpp in /opt/bbndk-2.0.0/host/linux/x86/etc/qcc/gcc/4.4.2/gcc_ntoarmv7le_cpp++.conf cc: looking for gcc_ntoarmv7le_cpp in /opt/bbndk-2.0.0/host/linux/x86/etc/qcc/gcc/4.4.2/gcc_ntoarmv7le_cpp.conf cc: no files to process configure:3188: $? = 1 configure:3177: /opt/bbndk-2.0.0/host/linux/x86/usr/bin/qcc -V4.4.2,gcc_ntoarmv7le_cpp -V >&5 cc: no targets defined in /opt/bbndk-2.0.0/host/linux/x86/etc/qcc/gcc/4.4.2/4.4.2! configure:3188: $? = 0 configure:3177: /opt/bbndk-2.0.0/host/linux/x86/usr/bin/qcc -V4.4.2,gcc_ntoarmv7le_cpp -qversion >&5 cc: unknown option: '-qversion' configure:3188: $? = 1 configure:3208: checking whether the C compiler works configure:3230: /opt/bbndk-2.0.0/host/linux/x86/usr/bin/qcc -V4.4.2,gcc_ntoarmv7le_cpp -g -DPLAYBOOK -DQNXNTO -I /home/joshua/Development/BlackBerry/SDL/../TouchControlOverlay/public -L/home/joshua/Development/BlackBerry/SDL/../TouchControlOverlay/Device-Debug -lTouchControlOverlay -L/opt/bbndk-2.0.0/target/qnx6/armle-v7/lib -L/home/joshua/Development/BlackBerry/SDL/playbook_prefix/lib -lscreen -lasound -lpps -lm -lpng14 -lbps -lxml2 -lEGL -lGLESv2 conftest.c >&5 /opt/bbndk-2.0.0/host/linux/x86/usr/bin/ntoarm-ld: cannot find -lTouchControlOverlay cc: /opt/bbndk-2.0.0/host/linux/x86/usr/bin/ntoarm-ld error 1 configure:3234: $? = 1 configure:3272: result: no configure: failed program was: | /* confdefs.h _/ | #define PACKAGE_NAME "" | #define PACKAGE_TARNAME "" | #define PACKAGE_VERSION "" | #define PACKAGE_STRING "" | #define PACKAGE_BUGREPORT "" | #define PACKAGE_URL "" | /_ end confdefs.h. */ |
---|---|---|---|---|---|---|---|---|
int | ||||||||
main () | ||||||||
{ | ||||||||
; | ||||||||
return 0; | ||||||||
} |
configure:3277: error: in /home/joshua/Development/BlackBerry/SDL': configure:3279: error: C compiler cannot create executables See
config.log' for more details
ac_cv_env_CCC_set= ac_cv_env_CCC_value= ac_cv_env_CC_set=set ac_cv_env_CC_value='/opt/bbndk-2.0.0/host/linux/x86/usr/bin/qcc -V4.4.2,gcc_ntoarmv7le_cpp ' ac_cv_env_CFLAGS_set=set ac_cv_env_CFLAGS_value=' -g ' ac_cv_env_CPPFLAGS_set=set ac_cv_env_CPPFLAGS_value='-DPLAYBOOK -DQNXNTO -I /home/joshua/Development/BlackBerry/SDL/../TouchControlOverlay/public ' ac_cv_env_CPP_set=set ac_cv_env_CPP_value='/opt/bbndk-2.0.0/host/linux/x86/usr/bin/qcc -V4.4.2,gcc_ntoarmv7le_cpp -E ' ac_cv_env_CXXCPP_set= ac_cv_env_CXXCPP_value= ac_cv_env_CXXFLAGS_set= ac_cv_env_CXXFLAGS_value= ac_cv_env_CXX_set= ac_cv_env_CXX_value= ac_cv_env_LDFLAGS_set=set ac_cv_env_LDFLAGS_value='-L/home/joshua/Development/BlackBerry/SDL/../TouchControlOverlay/Device-Debug -lTouchControlOverlay -L/opt/bbndk-2.0.0/target/qnx6/armle-v7/lib -L/home/joshua/Development/BlackBerry/SDL/playbook_prefix/lib -lscreen -lasound -lpps -lm -lpng14 -lbps -lxml2 -lEGL -lGLESv2' ac_cv_env_LIBS_set= ac_cv_env_LIBS_value= ac_cv_env_XMKMF_set= ac_cv_env_XMKMF_value= ac_cv_env_build_alias_set=set ac_cv_env_build_alias_value=i686-pc-linux ac_cv_env_host_alias_set=set ac_cv_env_host_alias_value=arm-unknown-nto-qnx6.5.0eabi ac_cv_env_target_alias_set= ac_cv_env_target_alias_value= ac_cv_prog_CC='/opt/bbndk-2.0.0/host/linux/x86/usr/bin/qcc -V4.4.2,gcc_ntoarmv7le_cpp '
ALLOCA='' ALSA_CFLAGS='' ALSA_LIBS='' AR='' ARTSCONFIG='' AS='' BUILD_CFLAGS='' BUILD_LDFLAGS='' CACACONFIG='' CC='/opt/bbndk-2.0.0/host/linux/x86/usr/bin/qcc -V4.4.2,gcc_ntoarmv7le_cpp ' CFLAGS=' -g ' CPP='/opt/bbndk-2.0.0/host/linux/x86/usr/bin/qcc -V4.4.2,gcc_ntoarmv7le_cpp -E ' CPPFLAGS='-DPLAYBOOK -DQNXNTO -I /home/joshua/Development/BlackBerry/SDL/../TouchControlOverlay/public ' CXX='' CXXCPP='' CXXFLAGS='' DEFS='' DIRECTFBCONFIG='' DLLTOOL='' DSYMUTIL='' DUMPBIN='' ECHO_C='' ECHO_N='-n' ECHO_T='' EGREP='' ENABLE_SHARED_FALSE='' ENABLE_SHARED_TRUE='' ENABLE_STATIC_FALSE='' ENABLE_STATIC_TRUE='' ESD_CFLAGS='' ESD_CONFIG='' ESD_LIBS='' EXEEXT='' EXTRA_CFLAGS='' EXTRA_LDFLAGS='' FGREP='' GREP='' INCLUDE='' INSTALL_DATA='' INSTALL_PROGRAM='' INSTALL_SCRIPT='' LD='/opt/bbndk-2.0.0/host/linux/x86/usr/bin/ntoarmv7-ld ' LDFLAGS='-L/home/joshua/Development/BlackBerry/SDL/../TouchControlOverlay/Device-Debug -lTouchControlOverlay -L/opt/bbndk-2.0.0/target/qnx6/armle-v7/lib -L/home/joshua/Development/BlackBerry/SDL/playbook_prefix/lib -lscreen -lasound -lpps -lm -lpng14 -lbps -lxml2 -lEGL -lGLESv2' LIBOBJS='' LIBS='' LIBTOOL='' LIPO='' LN_S='' LTLIBOBJS='' LT_AGE='' LT_CURRENT='' LT_RELEASE='' LT_REVISION='' NASM='' NASMFLAGS='' NM='' NMEDIT='' OBJDUMP='' OBJECTS='' OBJEXT='' OSMESA_CONFIG='' OTOOL64='' OTOOL='' PACKAGE_BUGREPORT='' PACKAGE_NAME='' PACKAGE_STRING='' PACKAGE_TARNAME='' PACKAGE_URL='' PACKAGE_VERSION='' PATH_SEPARATOR=':' PKG_CONFIG='' POW_LIB='' PTH_CONFIG='' RANLIB='/opt/bbndk-2.0.0/host/linux/x86/usr/bin/ntoarmv7-ranlib ' SDLMAIN_OBJECTS='' SDLMAIN_SOURCES='' SDL_BINARY_AGE='' SDL_CFLAGS='' SDL_INTERFACE_AGE='' SDL_LIBS='' SDL_MAJOR_VERSION='' SDL_MICRO_VERSION='' SDL_MINOR_VERSION='' SDL_RLD_FLAGS='' SDL_STATIC_LIBS='' SDL_VERSION='' SED='' SET_MAKE='' SHELL='/bin/bash' SOURCES='' STRIP='' WINDRES='' XMKMF='' X_CFLAGS='' X_EXTRA_LIBS='' X_LIBS='' X_PRE_LIBS='' ac_aux_dir='' ac_ct_CC='' ac_ct_CXX='' ac_ct_DUMPBIN='' bindir='${exec_prefix}/bin' build='i686-pc-linux' build_alias='i686-pc-linux' build_cpu='' build_os='' build_vendor='' datadir='${datarootdir}' datarootdir='${prefix}/share' docdir='${datarootdir}/doc/${PACKAGE}' dvidir='${docdir}' exec_prefix='NONE' host='arm-unknown-nto-qnx6.5.0eabi' host_alias='arm-unknown-nto-qnx6.5.0eabi' host_cpu='' host_os='' host_vendor='' htmldir='${docdir}' includedir='${prefix}/include' infodir='${datarootdir}/info' libdir='${exec_prefix}/lib' libexecdir='${exec_prefix}/libexec' localedir='${datarootdir}/locale' localstatedir='${prefix}/var' lt_ECHO='echo' mandir='${datarootdir}/man' oldincludedir='/usr/include' pdfdir='${docdir}' prefix='/home/joshua/Development/BlackBerry/SDL/playbook_prefix' program_transform_name='s,x,x,' psdir='${docdir}' sbindir='${exec_prefix}/sbin' sharedstatedir='${prefix}/com' sysconfdir='${prefix}/etc' target_alias=''
/* confdefs.h */
configure: exit 77
Reply to this email directly or view it on GitHub: https://github.com/blackberry/SDL/issues/14#issuecomment-4384974
This transmission (including any attachments) may contain confidential information, privileged material (including material protected by the solicitor-client or other applicable privileges), or constitute non-public information. Any use of this information by anyone other than the intended recipient is prohibited. If you have received this transmission in error, please immediately reply to the sender and delete this information from your system. Use, dissemination, distribution, or reproduction of this transmission by unintended recipients is not authorized and may be unlawful.
I had TouchControlOverlay checked out in a neighboring directory (~/Development/BlackBerry/TouchControlOverlay), but I guess it needed to be compiled first. I'll give it a shot with the IDE and see if I can build it
Great! Thank you :)
I didn't realize that the Native SDK came with an IDE. I'm not a big Eclipse fan, anyway, but with your instructions it was pretty easy to import both projects and compile them while running Windows.
Although I have what I need, you may also want to know that it did not work when I was in Linux. I was specifically using Ubuntu 11.04 32-bit. Here's the output in the console, while trying to compile TouchControlOverlay:
\ Rebuild of configuration Device-Release for project TouchControlOverlay **
\ Internal Builder is used for build ** Build error String index out of range: -26
We'll definitely look into that. Glad you got it working for now.
----- Original Message ----- From: Joshua Granick [mailto:reply@reply.github.com] Sent: Thursday, March 08, 2012 12:45 AM To: Jeremy Nicholl Subject: Re: [SDL] "configure" command fails in Ubuntu Linux (#14)
Great! Thank you :)
I didn't realize that the Native SDK came with an IDE. I'm not a big Eclipse fan, anyway, but with your instructions it was pretty easy to import both projects and compile them while running Windows.
Although I have what I need, you may also want to know that it did not work when I was in Linux. I was specifically using Ubuntu 11.04 32-bit. Here's the output in the console, while trying to compile TouchControlOverlay:
\ Rebuild of configuration Device-Release for project TouchControlOverlay **
\ Internal Builder is used for build ** Build error String index out of range: -26
Reply to this email directly or view it on GitHub: https://github.com/blackberry/SDL/issues/14#issuecomment-4385280
This transmission (including any attachments) may contain confidential information, privileged material (including material protected by the solicitor-client or other applicable privileges), or constitute non-public information. Any use of this information by anyone other than the intended recipient is prohibited. If you have received this transmission in error, please immediately reply to the sender and delete this information from your system. Use, dissemination, distribution, or reproduction of this transmission by unintended recipients is not authorized and may be unlawful.
I can't seem to reproduce the problem on Ubuntu. I don't have 11.04, but I've been using 11.10 32-bit without any problems. If you get the chance, can you re-clone the repository and try again?
This is because build_for_playbook.sh hardcoded linking to TouchControlOverlay.so. This means TouchControlOverlay.so is required for everything, including the test whether the compiler works. If it is missing, it will fail with the above error.
I've just submitted a pull request that will make the failure print an error message saying TouchControlOverlay is not available, and gives the URL to download it, instead of this more confusing error message.
Thanks for the info, that makes sense. I had some questions about the pull request, so I haven't merged it yet.
I seem to have forgotten to close this. The pull request did get merged.
I'm interested in using SDL to bring a cross-platform application framework over for the BlackBerry.
I have tried "build_for_playbook.sh" in two versions of Ubuntu (one 32-bit and one 64) just to make sure. In both installs, configure fails, saying that qcc cannot create executables.
Here is an example of the commands I am using:
source /opt/bbndk-2.0.0/bbndk-env.sh ./build_for_playbook.sh
Should I be doing something differently, or is this an issue with using Linux instead of OS X? (I don't have a Mac on hand at this moment). I'm just interested in compiling the current version as a dynamic library, so I can get one with making sure the framework runs properly for the device.
Thank you very much!
(Here is the full output off the terminal)
joshua@joshua-VirtualBox:~/Development/BlackBerry/SDL$ source /opt/bbndk-2.0.0/bbndk-env.sh joshua@joshua-VirtualBox:~/Development/BlackBerry/SDL$ ./build_for_playbook.sh checking for arm-unknown-nto-qnx6.5.0eabi-gcc... /opt/bbndk-2.0.0/host/linux/x86/usr/bin/qcc -V4.4.2,gcc_ntoarmv7le_cpp checking whether the C compiler works... no configure: error: in
/home/joshua/Development/BlackBerry/SDL': configure: error: C compiler cannot create executables See
config.log' for more details make: *\ No rule to make target `all'. Stop. Build Failed! joshua@joshua-VirtualBox:~/Development/BlackBerry/SDL$