Re: [racket-dev] racket-5.1{, .0.6} not building foreign interface not supported
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 Hi Matthew, On 04/13/11 19:00, Matthew Flatt wrote: > At Wed, 13 Apr 2011 11:54:44 +0200, Marijn wrote: >>> Meanwhile, `configure' now detects when libffi is already installed and >>> uses it (instead of building the version that is included with Racket). >> >> I am now able to build with the bundled libffi, but when I delete that >> from the source and try to build it doesn't find the system library: >> >> x86_64-pc-linux-gnu-gcc -march=native -ggdb -O2 -pipe -DMZ_DONT_USE_JIT >> -DMZ_USES_SHARED_LIB -I./../racket -I./../racket/include >> -I./../racket/src -Ilibffi/include -c ./foreign.c -fPIC -DPIC -o >> .libs/foreign.o >> ./foreign.c:73:17: error: ffi.h: No such file or directory >> >> libffi uses pkgconfig but I'd have to check up on how to use that again > > I've pushed changed to make `configure' use `pkg-config' for libffi. configure doesn't detect that I have a system libffi installed. Specifically, AC_TRY_LINK([#include ], [ffi_cif cif; ] [ffi_prep_cif(&cif, FFI_DEFAULT_ABI, 0, &ffi_type_void, NULL);], have_libffi=yes, have_libffi=no) seems to be failing. If I fool it by inserting have_libffi=yes after that test, then everything seems to build fine. I'm not sure how to debug that AC_TRY_LINK invocation or what kind of information would help you to do it, so please tell me if you need anything. Marijn -BEGIN PGP SIGNATURE- Version: GnuPG v2.0.17 (GNU/Linux) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/ iEYEARECAAYFAk2msuwACgkQp/VmCx0OL2zUPACguYhksn5Xvg+epnKJfx76qU8a I1oAoLEn7gfFfgw3KWQGclYgpCMT51FK =45zy -END PGP SIGNATURE- _ For list-related administrative tasks: http://lists.racket-lang.org/listinfo/dev
Re: [racket-dev] racket-5.1{, .0.6} not building foreign interface not supported
At Thu, 14 Apr 2011 10:40:12 +0200, Marijn wrote: > I'm not sure how > to debug that AC_TRY_LINK invocation or what kind of information would > help you to do it, so please tell me if you need anything. Can you send me "config.log"? It shows the compilation commands and error messages when AC_TRY_LINK tries to compile and link. _ For list-related administrative tasks: http://lists.racket-lang.org/listinfo/dev
Re: [racket-dev] racket-5.1{, .0.6} not building foreign interface not supported
On 04/14/11 14:03, Matthew Flatt wrote: > At Thu, 14 Apr 2011 10:40:12 +0200, Marijn wrote: >> I'm not sure how >> to debug that AC_TRY_LINK invocation or what kind of information would >> help you to do it, so please tell me if you need anything. > > Can you send me "config.log"? It shows the compilation commands and > error messages when AC_TRY_LINK tries to compile and link. configure:5116: result: yes configure:5121: checking for libffi configure:5173: x86_64-pc-linux-gnu-gcc -o conftest -march=native -ggdb -O2 -pipe -I/usr/lib64/libffi-3.0.10rc8/include -Wl,-O1 -Wl,--as-needed -lffi conftest.c -ldl -lm -ldl -lm -rdynamic >&5 /var/tmp/portage/dev-scheme/racket-999/temp/ccc4wcaM.o: In function `main': /var/tmp/portage/dev-scheme/racket-999/work/racket-999/src/conftest.c:29: undefined reference to `ffi_type_void' /var/tmp/portage/dev-scheme/racket-999/work/racket-999/src/conftest.c:29: undefined reference to `ffi_prep_cif' collect2: ld returned 1 exit status configure:5179: $? = 1 configure: failed program was: | /* confdefs.h. */ | #define PACKAGE_NAME "" | #define PACKAGE_TARNAME "" | #define PACKAGE_VERSION "" | #define PACKAGE_STRING "" | #define PACKAGE_BUGREPORT "" | #define USE_SINGLE_FLOATS 1 | #define HAVE_LIBM 1 | #define HAVE_LIBDL 1 | #define MZ_USE_NOINLINE 1 | #define HAVE_CODESET 1 | #define HAVE_GETADDRINFO 1 | #define STDC_HEADERS 1 | #define HAVE_SYS_TYPES_H 1 | #define HAVE_SYS_STAT_H 1 | #define HAVE_STDLIB_H 1 | #define HAVE_STRING_H 1 | #define HAVE_MEMORY_H 1 | #define HAVE_STRINGS_H 1 | #define HAVE_INTTYPES_H 1 | #define HAVE_STDINT_H 1 | #define HAVE_UNISTD_H 1 | /* end confdefs.h. */ | #include | int | main () | { | ffi_cif cif; | ffi_prep_cif(&cif, FFI_DEFAULT_ABI, 0, &ffi_type_void, NULL); | ; | return 0; | } configure:5195: result: no 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.61. Invocation command line was $ ./configure --prefix=/usr --build=x86_64-pc-linux-gnu --host=x86_64-pc-linux-gnu --mandir=/usr/share/man --infodir=/usr/share/info --datadir=/usr/share --sysconfdir=/etc --localstatedir=/var/lib --libdir=/usr/lib64 --enable-gracket --disable-plot --disable-docs --enable-shared --disable-jit --enable-foreign --disable-places --disable-futures --disable-backtrace --disable-pthread --disable-perl --with-x ## - ## ## Platform. ## ## - ## hostname = fusion uname -m = x86_64 uname -r = 2.6.36-gentoo-r8 uname -s = Linux uname -v = #1 SMP PREEMPT Wed Mar 9 14:02:29 CET 2011 /usr/bin/uname -p = Intel(R) Core(TM)2 Duo CPU E8600 @ 3.33GHz /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: /usr/lib64/portage/bin/ebuild-helpers/4 PATH: /usr/lib64/portage/bin/ebuild-helpers PATH: /usr/local/sbin PATH: /usr/local/bin PATH: /usr/sbin PATH: /usr/bin PATH: /sbin PATH: /bin PATH: /opt/bin PATH: /usr/x86_64-pc-linux-gnu/gcc-bin/4.4.5 ## --- ## ## Core tests. ## ## --- ## configure:1693: loading site script /usr/share/config.site | #!/bin/bash | # Copyright 2009 Gentoo Foundation | # Distributed under the terms of the GNU General Public License v2 | | TOPDIR=/usr/share/crossdev/include/site | | config_site_arch() { | local host=$(echo ${CHOST/-/ } | awk '{print $1}') | | [[ ${host/arm.*eb/} != ${host} ]] && host=armeb | [[ ${host/arm/} != ${host} ]] && [[ ${host} != armeb ]] && host=arm | | [[ ${host/mips.*el/} != ${host} ]] && host=mipsel | | #[[ ${host/i[4-5]/6} != ${host} ]] && host=i686 | | echo ${host} | } | | config_site_names() { | local site_arch=$(config_site_arch) | local sites="" | local x | | [[ ${CHOST/-linux-/} != $CHOST ]] && sites+=" linux ${site_arch}-linux" | [[ ${CHOST/darwin/} != $CHOST ]] && sites+=" darwin ${site_arch}-linux" | | [[ ${CHOST/-linux-uclibc/} != $CHOST ]] && sites+=" linux-uclibc ${site_arch}-linux-uclibc" | [[ ${CHOST/-linux-gnu/} != $CHOST ]] && sites+=" linux-gnu ${site_arch}-linux-gnu" | | [[ ${CHOST/-linux-uclibceabi/} != $CHOST ]] && sites+=" linux-uclibceabi ${site_arch}-linux-uclibceabi" | [[ ${CHOST/-linux-gnueabi/} != $CHOST ]] && sites+=" linux-gnueabi ${site_arch}-linux-gnueabi" | | for x in ${sites} ${CHOST}; do | [[ -e ${TOPDIR}/${x} ]] && echo ${TOPDIR}/${x} | done | } | | if [[ ${CHOST} != "" ]]; then | sites="$(config_site_names)" | if [[ ${sites} != "" ]]; then | for site in ${sites}; do | echo "$(basename $0): loading site script ${site}" | . ${site} | done | fi | unset site
Re: [racket-dev] racket-5.1{, .0.6} not building foreign interface not supported
On 04/14/11 14:03, Matthew Flatt wrote: > At Thu, 14 Apr 2011 10:40:12 +0200, Marijn wrote: >> I'm not sure how >> to debug that AC_TRY_LINK invocation or what kind of information would >> help you to do it, so please tell me if you need anything. > > Can you send me "config.log"? It shows the compilation commands and > error messages when AC_TRY_LINK tries to compile and link. configure:5116: result: yes configure:5121: checking for libffi configure:5173: x86_64-pc-linux-gnu-gcc -o conftest -march=native -ggdb -O2 -pipe -I/usr/lib64/libffi-3.0.10rc8/include -Wl,-O1 -Wl,--as-needed -lffi conftest.c -ldl -lm -ldl -lm -rdynamic >&5 /var/tmp/portage/dev-scheme/racket-999/temp/ccc4wcaM.o: In function `main': /var/tmp/portage/dev-scheme/racket-999/work/racket-999/src/conftest.c:29: undefined reference to `ffi_type_void' /var/tmp/portage/dev-scheme/racket-999/work/racket-999/src/conftest.c:29: undefined reference to `ffi_prep_cif' collect2: ld returned 1 exit status configure:5179: $? = 1 configure: failed program was: | /* confdefs.h. */ | #define PACKAGE_NAME "" | #define PACKAGE_TARNAME "" | #define PACKAGE_VERSION "" | #define PACKAGE_STRING "" | #define PACKAGE_BUGREPORT "" | #define USE_SINGLE_FLOATS 1 | #define HAVE_LIBM 1 | #define HAVE_LIBDL 1 | #define MZ_USE_NOINLINE 1 | #define HAVE_CODESET 1 | #define HAVE_GETADDRINFO 1 | #define STDC_HEADERS 1 | #define HAVE_SYS_TYPES_H 1 | #define HAVE_SYS_STAT_H 1 | #define HAVE_STDLIB_H 1 | #define HAVE_STRING_H 1 | #define HAVE_MEMORY_H 1 | #define HAVE_STRINGS_H 1 | #define HAVE_INTTYPES_H 1 | #define HAVE_STDINT_H 1 | #define HAVE_UNISTD_H 1 | /* end confdefs.h. */ | #include | int | main () | { | ffi_cif cif; | ffi_prep_cif(&cif, FFI_DEFAULT_ABI, 0, &ffi_type_void, NULL); | ; | return 0; | } configure:5195: result: no 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.61. Invocation command line was $ ./configure --prefix=/usr --build=x86_64-pc-linux-gnu --host=x86_64-pc-linux-gnu --mandir=/usr/share/man --infodir=/usr/share/info --datadir=/usr/share --sysconfdir=/etc --localstatedir=/var/lib --libdir=/usr/lib64 --enable-gracket --disable-plot --disable-docs --enable-shared --disable-jit --enable-foreign --disable-places --disable-futures --disable-backtrace --disable-pthread --disable-perl --with-x ## - ## ## Platform. ## ## - ## hostname = fusion uname -m = x86_64 uname -r = 2.6.36-gentoo-r8 uname -s = Linux uname -v = #1 SMP PREEMPT Wed Mar 9 14:02:29 CET 2011 /usr/bin/uname -p = Intel(R) Core(TM)2 Duo CPU E8600 @ 3.33GHz /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: /usr/lib64/portage/bin/ebuild-helpers/4 PATH: /usr/lib64/portage/bin/ebuild-helpers PATH: /usr/local/sbin PATH: /usr/local/bin PATH: /usr/sbin PATH: /usr/bin PATH: /sbin PATH: /bin PATH: /opt/bin PATH: /usr/x86_64-pc-linux-gnu/gcc-bin/4.4.5 ## --- ## ## Core tests. ## ## --- ## configure:1693: loading site script /usr/share/config.site | #!/bin/bash | # Copyright 2009 Gentoo Foundation | # Distributed under the terms of the GNU General Public License v2 | | TOPDIR=/usr/share/crossdev/include/site | | config_site_arch() { | local host=$(echo ${CHOST/-/ } | awk '{print $1}') | | [[ ${host/arm.*eb/} != ${host} ]] && host=armeb | [[ ${host/arm/} != ${host} ]] && [[ ${host} != armeb ]] && host=arm | | [[ ${host/mips.*el/} != ${host} ]] && host=mipsel | | #[[ ${host/i[4-5]/6} != ${host} ]] && host=i686 | | echo ${host} | } | | config_site_names() { | local site_arch=$(config_site_arch) | local sites="" | local x | | [[ ${CHOST/-linux-/} != $CHOST ]] && sites+=" linux ${site_arch}-linux" | [[ ${CHOST/darwin/} != $CHOST ]] && sites+=" darwin ${site_arch}-linux" | | [[ ${CHOST/-linux-uclibc/} != $CHOST ]] && sites+=" linux-uclibc ${site_arch}-linux-uclibc" | [[ ${CHOST/-linux-gnu/} != $CHOST ]] && sites+=" linux-gnu ${site_arch}-linux-gnu" | | [[ ${CHOST/-linux-uclibceabi/} != $CHOST ]] && sites+=" linux-uclibceabi ${site_arch}-linux-uclibceabi" | [[ ${CHOST/-linux-gnueabi/} != $CHOST ]] && sites+=" linux-gnueabi ${site_arch}-linux-gnueabi" | | for x in ${sites} ${CHOST}; do | [[ -e ${TOPDIR}/${x} ]] && echo ${TOPDIR}/${x} | done | } | | if [[ ${CHOST} != "" ]]; then | sites="$(config_site_names)" | if [[ ${sites} != "" ]]; then | for site in ${sites}; do | echo "$(basename $0): loading site script ${site}" | . ${site} | done | fi | unset site
Re: [racket-dev] racket-5.1{, .0.6} not building foreign interface not supported
At Thu, 14 Apr 2011 16:56:30 +0200, Marijn wrote: > configure:5173: x86_64-pc-linux-gnu-gcc -o conftest -march=native -ggdb > -O2 -pipe -I/usr/lib64/libffi-3.0.10rc8/include -Wl,-O1 > -Wl,--as-needed -lffi > conftest.c -ldl -lm -ldl -lm -rdynamic >&5 I mixed up LDFLAGS and LIBS, now fixed. Another try? _ For list-related administrative tasks: http://lists.racket-lang.org/listinfo/dev
Re: [racket-dev] [plt-planet-announce] New PLaneT package: stephanh/RacketGL.plt for 4.x, 3xx
If Stephan is willing, I think we should put this in the core for the next (not the upcoming release), or remove our core sgl code. Jay 2011/4/14 PLaneT : > This announces the availability of a new package from PLaneT: > > --- > Name: RacketGL.plt > Package version: 1.0 > Owner: stephanh > > > Package Description > Automatically generated bindings for the OpenGL library. Currently includes > bindings up to and including OpenGL 4.1. > --- > > Go to > > http://planet.racket-lang.org/display.ss?package=RacketGL.plt&owner=stephanh > > for more information. > _ > For list-related administrative tasks: > http://list.cs.brown.edu/mailman/listinfo/plt-planet-announce > -- Jay McCarthy Assistant Professor / Brigham Young University http://faculty.cs.byu.edu/~jay "The glory of God is Intelligence" - D&C 93 _ For list-related administrative tasks: http://lists.racket-lang.org/listinfo/dev
Re: [racket-dev] [plt] Push #22405: master branch updated
More than a week ago, ry...@racket-lang.org wrote: > a19a034 Ryan Culpepper 2011-04-04 15:14 > : > | added ffi/unsafe/security > : > A collects/ffi/unsafe/security.rkt `ffi/unsafe' should be for things that are not safe, so it looks like this should be elsewhere. (And looking at the functionality, it looks like it's better to get rid of the ffi types which are easily done with `security-guard-check-file', and move it to a different collection -- maybe `racket/path'?) -- ((lambda (x) (x x)) (lambda (x) (x x))) Eli Barzilay: http://barzilay.org/ Maze is Life! _ For list-related administrative tasks: http://lists.racket-lang.org/listinfo/dev