[Chicken-users] If anyone wants an RPM version of Chicken Scheme
I built an RPM version of Chicken Scheme for Fedora 12. If anyone would care to try it out you can find it at: http://admiyo.fedorapeople.org/chicken/ As you can see, I had to make one small patch for x86_64. This patch should probably not be applied for i386 systems, but I haven't tested it. ___ Chicken-users mailing list Chicken-users@nongnu.org http://lists.nongnu.org/mailman/listinfo/chicken-users
Re: [Chicken-users] If anyone wants an RPM version of Chicken Scheme
From: Adam Young Subject: [Chicken-users] If anyone wants an RPM version of Chicken Scheme Date: Fri, 09 Apr 2010 15:12:31 -0400 > I built an RPM version of Chicken Scheme for Fedora 12. If anyone would > care to try it out you can find it at: > > http://admiyo.fedorapeople.org/chicken/ > > > As you can see, I had to make one small patch for x86_64. This patch > should probably not be applied for i386 systems, but I haven't tested > it. > Hi! Thanks for the information. It would be great if you could perhaps add a link to your package on this wiki page: http://chicken.wiki.br/platforms That patch makes sense, but I'm unsure whether it is applicable to all Linux systems (or is it? If anybody knows, please tell me). cheers, felix ___ Chicken-users mailing list Chicken-users@nongnu.org http://lists.nongnu.org/mailman/listinfo/chicken-users
Re: [Chicken-users] If anyone wants an RPM version of Chicken Scheme
Hi, Out of curiosity what does /usr/lib point to on a Fedora 12 system? Do you have to specify --libdir=/usr/lib64 when you call "./configure" for every single package? On Apr 9, 2010, at 2:12 PM, Adam Young wrote: I built an RPM version of Chicken Scheme for Fedora 12. If anyone would care to try it out you can find it at: http://admiyo.fedorapeople.org/chicken/ As you can see, I had to make one small patch for x86_64. This patch should probably not be applied for i386 systems, but I haven't tested it. ___ Chicken-users mailing list Chicken-users@nongnu.org http://lists.nongnu.org/mailman/listinfo/chicken-users ___ Chicken-users mailing list Chicken-users@nongnu.org http://lists.nongnu.org/mailman/listinfo/chicken-users
Re: [Chicken-users] If anyone wants an RPM version of Chicken Scheme
On 04/10/2010 06:35 PM, Jim Ursetto wrote: Hi, Out of curiosity what does /usr/lib point to on a Fedora 12 system? One decision that is was made differently between RedHat and Debian based distributions is how to distinguish between 32bit and 64 bit libraries. ON as 64 bit Red Hat based system, 32 bit libraries go into /usr/lib, and 64bit go into /usr/lib64. I've done both the Debian and Red Hat approaches on this, and think that RH approach leads toi an easier time mixing 32 and 64 bit libraries, but at the expense of a littel bit of surprise in from time to time. You don't usually need to explicelty set libdir to /usr/lib, but I found that if I didn't, the chicken configuration would put stuff into /usr/lib, not /usr/lib64 on my system, and things wouldn't work. The right thing to do in the specfile is, I think, to put a conditional aroundthe patch application, but it would probably be better to fix the make file. I'll do a little digging and see if I can make that happen, and send in a fix. Do you have to specify --libdir=/usr/lib64 when you call "./configure" for every single package? On Apr 9, 2010, at 2:12 PM, Adam Young wrote: I built an RPM version of Chicken Scheme for Fedora 12. If anyone would care to try it out you can find it at: http://admiyo.fedorapeople.org/chicken/ As you can see, I had to make one small patch for x86_64. This patch should probably not be applied for i386 systems, but I haven't tested it. ___ Chicken-users mailing list Chicken-users@nongnu.org http://lists.nongnu.org/mailman/listinfo/chicken-users ___ Chicken-users mailing list Chicken-users@nongnu.org http://lists.nongnu.org/mailman/listinfo/chicken-users
Re: [Chicken-users] If anyone wants an RPM version of Chicken Scheme
Mixing works fine on Debian, on 64-bit Debian /usr/lib contains the native libraries and lib64 is a symlink to /usr/lib, with lib32/ being a separate directory. This allows apps that expect plain /usr/lib to work normally. What I'm not clear on is why this is requires a patch in the first place. You specified LIBDIR=/usr/lib64 in your .spec file, as far as I know this should dump all library files into /usr/lib64 not /usr/ lib, and if it doesn't maybe there is a bug in the makefile? Can you clarify what happens when you build with LIBDIR=/usr/lib64 (after a make distclean of course). On Apr 12, 2010, at 2:37 PM, Adam Young wrote: You don't usually need to explicelty set libdir to /usr/lib, but I found that if I didn't, the chicken configuration would put stuff into /usr/lib, not /usr/lib64 on my system, and things wouldn't work. ___ Chicken-users mailing list Chicken-users@nongnu.org http://lists.nongnu.org/mailman/listinfo/chicken-users
Re: [Chicken-users] If anyone wants an RPM version of Chicken Scheme
On 04/12/2010 05:53 PM, Jim Ursetto wrote: Mixing works fine on Debian, on 64-bit Debian /usr/lib contains the native libraries and lib64 is a symlink to /usr/lib, with lib32/ being a separate directory. This allows apps that expect plain /usr/lib to work normally. What I'm not clear on is why this is requires a patch in the first place. You specified LIBDIR=/usr/lib64 in your .spec file, as far as I know this should dump all library files into /usr/lib64 not /usr/lib, and if it doesn't maybe there is a bug in the makefile? Can you clarify what happens when you build with LIBDIR=/usr/lib64 (after a make distclean of course). Look at the patch. The pathc /usr/lib is coded into a scheme source file:csc.scm (define linking-optimization-options default-linking-optimization-options) (define library-dir ! (prefix "" "lib" (if host-mode INSTALL_LIB_HOME TARGET_LIB_HOME)) ) --- 253,259 (define linking-optimization-options default-linking-optimization-options) (define library-dir ! (prefix "" "lib64" (if host-mode INSTALL_LIB_HOME TARGET_LIB_HOME)) ) I am fairly certain that what I origianlly saw was a problem during the linking stage in that it tried to link with a library in /usr/lib. Thie was non-existant on my system, but possible could have been a 32 bit library if I had that rpm installed. Note that I had to change this if I just ran make on my Fedora system, not just during the rpm build. There is no ./configure type script that I am missing, is there? On Apr 12, 2010, at 2:37 PM, Adam Young wrote: You don't usually need to explicelty set libdir to /usr/lib, but I found that if I didn't, the chicken configuration would put stuff into /usr/lib, not /usr/lib64 on my system, and things wouldn't work. ___ Chicken-users mailing list Chicken-users@nongnu.org http://lists.nongnu.org/mailman/listinfo/chicken-users
Re: [Chicken-users] If anyone wants an RPM version of Chicken Scheme
I modified the spec file to only include the patch for x86_64. I also dropped the devel RPM, as it really doesn't make sense for Chicken. http://admiyo.fedorapeople.org/chicken/ If someone wants a 32bit version, I'll have to scare up a 32 bit system or build a VM to make it. ___ Chicken-users mailing list Chicken-users@nongnu.org http://lists.nongnu.org/mailman/listinfo/chicken-users
Re: [Chicken-users] If anyone wants an RPM version of Chicken Scheme
I looked at the patch already, the INSTALL_LIB_HOME should take precedence and is set by `make LIBDIR=/usr/lib64`, as you did in the .spec file. In other words this should work without a patch unless there is a problem with the build system. So, please send full build output so we can review it, making sure to run `make distclean` beforehand. On Apr 13, 2010, at 10:50 AM, Adam Young wrote: On 04/12/2010 05:53 PM, Jim Ursetto wrote: Mixing works fine on Debian, on 64-bit Debian /usr/lib contains the native libraries and lib64 is a symlink to /usr/lib, with lib32/ being a separate directory. This allows apps that expect plain / usr/lib to work normally. What I'm not clear on is why this is requires a patch in the first place. You specified LIBDIR=/usr/lib64 in your .spec file, as far as I know this should dump all library files into /usr/lib64 not / usr/lib, and if it doesn't maybe there is a bug in the makefile? Can you clarify what happens when you build with LIBDIR=/usr/lib64 (after a make distclean of course). Look at the patch. The pathc /usr/lib is coded into a scheme source file:csc.scm (define library-dir ! (prefix "" "lib" (if host-mode INSTALL_LIB_HOME TARGET_LIB_HOME)) ) ___ Chicken-users mailing list Chicken-users@nongnu.org http://lists.nongnu.org/mailman/listinfo/chicken-users
Re: [Chicken-users] If anyone wants an RPM version of Chicken Scheme
On 04/13/2010 02:11 PM, Jim Ursetto wrote: I looked at the patch already, the INSTALL_LIB_HOME should take precedence and is set by `make LIBDIR=/usr/lib64`, as you did in the .spec file. In other words this should work without a patch unless there is a problem with the build system. And so it did...I wonder if I fooled myself when I built by hand and didn't pass the LIBDIR arg. Looks like the specfile worked out the issued. I'll post an updated rpm and spec. So, please send full build output so we can review it, /making sure to run `make distclean` beforehand./ On Apr 13, 2010, at 10:50 AM, Adam Young wrote: On 04/12/2010 05:53 PM, Jim Ursetto wrote: Mixing works fine on Debian, on 64-bit Debian /usr/lib contains the native libraries and lib64 is a symlink to /usr/lib, with lib32/ being a separate directory. This allows apps that expect plain /usr/lib to work normally. What I'm not clear on is why this is requires a patch in the first place. You specified LIBDIR=/usr/lib64 in your .spec file, as far as I know this should dump all library files into /usr/lib64 not /usr/lib, and if it doesn't maybe there is a bug in the makefile? Can you clarify what happens when you build with LIBDIR=/usr/lib64 (after a make distclean of course). Look at the patch. The pathc /usr/lib is coded into a scheme source file:csc.scm (define library-dir ! (prefix "" "lib" (if host-mode INSTALL_LIB_HOME TARGET_LIB_HOME)) ) ___ Chicken-users mailing list Chicken-users@nongnu.org http://lists.nongnu.org/mailman/listinfo/chicken-users
Re: [Chicken-users] If anyone wants an RPM version of Chicken Scheme
Ok, great! It is possible that you built it without LIBDIR, then did a make clean, then rebuilt it with LIBDIR. `make clean` does not delete the chicken-config.h file and so the LIBDIR change would have no effect on the second build. I have done something similar several times. On Apr 13, 2010, at 1:47 PM, Adam Young wrote: On 04/13/2010 02:11 PM, Jim Ursetto wrote: I looked at the patch already, the INSTALL_LIB_HOME should take precedence and is set by `make LIBDIR=/usr/lib64`, as you did in the .spec file. In other words this should work without a patch unless there is a problem with the build system. And so it did...I wonder if I fooled myself when I built by hand and didn't pass the LIBDIR arg. Looks like the specfile worked out the issued. I'll post an updated rpm and spec. ___ Chicken-users mailing list Chicken-users@nongnu.org http://lists.nongnu.org/mailman/listinfo/chicken-users
Re: [Chicken-users] If anyone wants an RPM version of Chicken Scheme
On 04/13/2010 03:05 PM, Jim Ursetto wrote: Ok, great! It is possible that you built it without LIBDIR, then did a make clean, then rebuilt it with LIBDIR. `make clean` does not delete the chicken-config.h file and so the LIBDIR change would have no effect on the second build. I have done something similar several times. rpm -b does all of that. I think the problem was something along those lines, but before I did the rpmbuild. The updated rpm and spec file is posted. I still can't get to http://chicken.wiki.br/platforms as I am getting s "too long to respond" error. I'll get around to buil;ding a 32bit one of these days. On Apr 13, 2010, at 1:47 PM, Adam Young wrote: On 04/13/2010 02:11 PM, Jim Ursetto wrote: I looked at the patch already, the INSTALL_LIB_HOME should take precedence and is set by `make LIBDIR=/usr/lib64`, as you did in the .spec file. In other words this should work without a patch unless there is a problem with the build system. And so it did...I wonder if I fooled myself when I built by hand and didn't pass the LIBDIR arg. Looks like the specfile worked out the issued. I'll post an updated rpm and spec. ___ Chicken-users mailing list Chicken-users@nongnu.org http://lists.nongnu.org/mailman/listinfo/chicken-users