Re: [Discuss-gnuradio] UHD Announcement - September 23rd 2010
On Sat, Sep 25, 2010 at 6:23 PM, Josh Blum j...@joshknows.com wrote: I agree with you it's not exactly right. I'm not sure about the right action. This issue should probably go onto the list of things to be considered in the grand build restructuring that was discussed by some of us a couple of weeks ago. Autotools is trying to be helpful by setting the unspecified prefix to NONE during configure. But since gnuradio is using it as if it was always set I suggest we do the following at the top of configure.ac if test ${prefix} = NONE; then prefix=${ac_default_prefix} fi We can put it on the next branch and hope it fixes more things than it breaks... at least until the grand rebuild structuring comes along. :-) -Josh Thanks, guys. I've made a note of this to keep in mind while we're working on the restructuring. Tom ___ Discuss-gnuradio mailing list Discuss-gnuradio@gnu.org http://lists.gnu.org/mailman/listinfo/discuss-gnuradio
Re: [Discuss-gnuradio] UHD Announcement - September 23rd 2010
On Sun, Sep 26, 2010 at 09:40:58AM -0400, Tom Rondeau wrote: On Sat, Sep 25, 2010 at 6:23 PM, Josh Blum j...@joshknows.com wrote: I agree with you it's not exactly right. I'm not sure about the right action. This issue should probably go onto the list of things to be considered in the grand build restructuring that was discussed by some of us a couple of weeks ago. Autotools is trying to be helpful by setting the unspecified prefix to NONE during configure. But since gnuradio is using it as if it was always set I suggest we do the following at the top of configure.ac if test ${prefix} = NONE; then prefix=${ac_default_prefix} fi We can put it on the next branch and hope it fixes more things than it breaks... at least until the grand rebuild structuring comes along. :-) -Josh Thanks, guys. I've made a note of this to keep in mind while we're working on the restructuring. Tom It looks like it's part of autoconf's machinery... On my system I found it in /usr/share/autoconf/autoconf/general.m4 around line 558. AC_SUBST(prefix, NONE)dnl There's a discussion here that's relevant: http://www.mail-archive.com/autoc...@gnu.org/msg15773.html I think Josh's suggestion will work. It probably has to occur after AC_INIT (or maybe AC_PREREQ). Not sure if there's anything else that needs to run first. Eric ___ Discuss-gnuradio mailing list Discuss-gnuradio@gnu.org http://lists.gnu.org/mailman/listinfo/discuss-gnuradio
Re: [Discuss-gnuradio] UHD Announcement - September 23rd 2010
The problem being that /usr/local/lib/pkgconfig isnt honoring the users prefix and possibly libdir. Perhaps we can still make this right... Does this patch work for you? -Josh Still no worky. Must set PKG_CONFIG_PATH manually. I confirmed that the patch had been applied to the .m4, then did a make distclean then a ./bootstrap, then a ./configure. The configure fails to find UHD unless I explicitly set PKG_CONFIG_PATH. -- Marcus Leech Principal Investigator Shirleys Bay Radio Astronomy Consortium http://www.sbrac.org ___ Discuss-gnuradio mailing list Discuss-gnuradio@gnu.org http://lists.gnu.org/mailman/listinfo/discuss-gnuradio
Re: [Discuss-gnuradio] UHD Announcement - September 23rd 2010
This turns out to be a bug in gnuradio configure - when --prefix is not specified with ./configure, the ${prefix} variable is set to NONE http://www.mail-archive.com/autoc...@gnu.org/msg15772.html The following code with yeild a PKG_CONFIG_PATH of NONE/lib/pkgconfig dnl add ${prefix}/lib${gr_libdir_suffix}/pkgconfig to the head of the PKG_CONFIG_PATH if test x${PKG_CONFIG_PATH} = x; then PKG_CONFIG_PATH=${prefix}/lib${gr_libdir_suffix}/pkgconfig else PKG_CONFIG_PATH=${prefix}/lib${gr_libdir_suffix}/pkgconfig:${PKG_CONFIG_PATH} fi export PKG_CONFIG_PATH if may be more appropriate to do the following somewhere at the top of configure.ac if test ${prefix} = NONE; then prefix=${ac_default_prefix} fi gr_standalone.m4 and configure.ac both seem to have this issue -Josh On 09/25/2010 09:32 AM, Marcus D. Leech wrote: The problem being that /usr/local/lib/pkgconfig isnt honoring the users prefix and possibly libdir. Perhaps we can still make this right... Does this patch work for you? -Josh Still no worky. Must set PKG_CONFIG_PATH manually. I confirmed that the patch had been applied to the .m4, then did a make distclean then a ./bootstrap, then a ./configure. The configure fails to find UHD unless I explicitly set PKG_CONFIG_PATH. ___ Discuss-gnuradio mailing list Discuss-gnuradio@gnu.org http://lists.gnu.org/mailman/listinfo/discuss-gnuradio
Re: [Discuss-gnuradio] UHD Announcement - September 23rd 2010
On Sat, Sep 25, 2010 at 10:24:18AM -0700, Josh Blum wrote: This turns out to be a bug in gnuradio configure - when --prefix is not specified with ./configure, the ${prefix} variable is set to NONE Listen guys, you may not like this behavior, but it's not a bug. If you read the makefile standards, it's to allow a package to be installed into a different location at make install time. http://www.mail-archive.com/autoc...@gnu.org/msg15772.html The following code with yeild a PKG_CONFIG_PATH of NONE/lib/pkgconfig dnl add ${prefix}/lib${gr_libdir_suffix}/pkgconfig to the head of the PKG_CONFIG_PATH if test x${PKG_CONFIG_PATH} = x; then PKG_CONFIG_PATH=${prefix}/lib${gr_libdir_suffix}/pkgconfig else PKG_CONFIG_PATH=${prefix}/lib${gr_libdir_suffix}/pkgconfig:${PKG_CONFIG_PATH} fi export PKG_CONFIG_PATH There definitely shouldn't be any PKG_CONFIG_PATH special case handling for anything in grc_component_name.m4. A ton of effort was put into making the building system work reliably and consistently (mostly by Michael Dickens). A lot of the details are quite subtle, and the effort took a long time to stabilize, and has proven itself to work on a wide variety of OS's and distributions. All of the grc_component_name.m4's should follow the same pattern. There shouldn't be any divergence in the boilerplate. I removed the offending code because it was causing my build to break, and noticed at that time that it shouldn't have been there in the first place. Eric ___ Discuss-gnuradio mailing list Discuss-gnuradio@gnu.org http://lists.gnu.org/mailman/listinfo/discuss-gnuradio
Re: [Discuss-gnuradio] UHD Announcement - September 23rd 2010
There definitely shouldn't be any PKG_CONFIG_PATH special case handling for anything in grc_component_name.m4. A ton of effort was put into making the building system work reliably and consistently (mostly by Michael Dickens). A lot of the details are quite subtle, and the effort took a long time to stabilize, and has proven itself to work on a wide variety of OS's and distributions. All of the grc_component_name.m4's should follow the same pattern. There shouldn't be any divergence in the boilerplate. I removed the offending code because it was causing my build to break, and noticed at that time that it shouldn't have been there in the first place. Eric Fair enough, Eric. So do you suggest another approach that allows boostrap/configure/make to just work, or simply more notes about this in the build instructions when you're using UHD? -- Marcus Leech Principal Investigator Shirleys Bay Radio Astronomy Consortium http://www.sbrac.org ___ Discuss-gnuradio mailing list Discuss-gnuradio@gnu.org http://lists.gnu.org/mailman/listinfo/discuss-gnuradio
Re: [Discuss-gnuradio] UHD Announcement - September 23rd 2010
On Sat, Sep 25, 2010 at 03:09:47PM -0400, Marcus D. Leech wrote: There definitely shouldn't be any PKG_CONFIG_PATH special case handling for anything in grc_component_name.m4. A ton of effort was put into making the building system work reliably and consistently (mostly by Michael Dickens). A lot of the details are quite subtle, and the effort took a long time to stabilize, and has proven itself to work on a wide variety of OS's and distributions. All of the grc_component_name.m4's should follow the same pattern. There shouldn't be any divergence in the boilerplate. I removed the offending code because it was causing my build to break, and noticed at that time that it shouldn't have been there in the first place. Eric Fair enough, Eric. So do you suggest another approach that allows boostrap/configure/make to just work, or simply more notes about this in the build instructions when you're using UHD? This really doesn't have anything to do with UHD. You'd see the same problem with any other dependency installed outside of /lib{,64} or /usr/lib{,64} Just as you have to set your PYTHONPATH for stuff in /usr/local..., set your PKG_CONFIG_PATH for stuff in /usr/local/lib{,64} Eric ___ Discuss-gnuradio mailing list Discuss-gnuradio@gnu.org http://lists.gnu.org/mailman/listinfo/discuss-gnuradio
Re: [Discuss-gnuradio] UHD Announcement - September 23rd 2010
On 09/25/2010 12:01 PM, Eric Blossom wrote: On Sat, Sep 25, 2010 at 10:24:18AM -0700, Josh Blum wrote: This turns out to be a bug in gnuradio configure - when --prefix is not specified with ./configure, the ${prefix} variable is set to NONE Listen guys, you may not like this behavior, but it's not a bug. If you read the makefile standards, it's to allow a package to be installed into a different location at make install time. Thats fine, but is it fine that configure.ac sets PKG_CONFIG_PATH to NONE/lib/pkgconfig when --prefix is not specified. Thats not a problem? -Josh ___ Discuss-gnuradio mailing list Discuss-gnuradio@gnu.org http://lists.gnu.org/mailman/listinfo/discuss-gnuradio
Re: [Discuss-gnuradio] UHD Announcement - September 23rd 2010
Fair enough, Eric. So do you suggest another approach that allows boostrap/configure/make to just work, or simply more notes about this in the build instructions when you're using UHD? The issue being that all the gnuradio dependencies are distribution installable (on linux) so you dont need to set special paths and environment variables. However, UHD is not ready to be handed out as rpms and debs (though it can be) so it may need special paths set to use on operating system X. However, it looks like gnuradio wants to set your PKG_CONFIG_PATH to include the ${prefix}/lib${lib_suffix}/pkgconfig. So, if you happen to use the same prefix and lib_suffix as you built for UHD, gnuradio should be able to find the uhd.pc file without you needing to set PKG_CONFIG_PATH by hand. The problem with this being, if --prefix is not set, gnuradio sets this to NONE/lib${lib_suffix}/pkgconfig which isnt going to work. Maybe ${ac_default_prefix} can be used when ${prefix} is set to NONE -Josh ___ Discuss-gnuradio mailing list Discuss-gnuradio@gnu.org http://lists.gnu.org/mailman/listinfo/discuss-gnuradio
Re: [Discuss-gnuradio] UHD Announcement - September 23rd 2010
On Sat, Sep 25, 2010 at 12:23:19PM -0700, Josh Blum wrote: On 09/25/2010 12:01 PM, Eric Blossom wrote: On Sat, Sep 25, 2010 at 10:24:18AM -0700, Josh Blum wrote: This turns out to be a bug in gnuradio configure - when --prefix is not specified with ./configure, the ${prefix} variable is set to NONE Listen guys, you may not like this behavior, but it's not a bug. If you read the makefile standards, it's to allow a package to be installed into a different location at make install time. Thats fine, but is it fine that configure.ac sets PKG_CONFIG_PATH to NONE/lib/pkgconfig when --prefix is not specified. Thats not a problem? I agree with you it's not exactly right. I'm not sure about the right action. This issue should probably go onto the list of things to be considered in the grand build restructuring that was discussed by some of us a couple of weeks ago. Eric ___ Discuss-gnuradio mailing list Discuss-gnuradio@gnu.org http://lists.gnu.org/mailman/listinfo/discuss-gnuradio
Re: [Discuss-gnuradio] UHD Announcement - September 23rd 2010
On Sat, Sep 25, 2010 at 12:32:36PM -0700, Josh Blum wrote: Fair enough, Eric. So do you suggest another approach that allows boostrap/configure/make to just work, or simply more notes about this in the build instructions when you're using UHD? The issue being that all the gnuradio dependencies are distribution installable (on linux) so you dont need to set special paths and environment variables. However, UHD is not ready to be handed out as rpms and debs (though it can be) so it may need special paths set to use on operating system X. However, it looks like gnuradio wants to set your PKG_CONFIG_PATH to include the ${prefix}/lib${lib_suffix}/pkgconfig. So, if you happen to use the same prefix and lib_suffix as you built for UHD, gnuradio should be able to find the uhd.pc file without you needing to set PKG_CONFIG_PATH by hand. The problem with this being, if --prefix is not set, gnuradio sets this to NONE/lib${lib_suffix}/pkgconfig which isnt going to work. Maybe ${ac_default_prefix} can be used when ${prefix} is set to NONE That would probably be better than what we've got. Independent of the use case you brought up, there's a couple of other places we run afoul the same issue (prefix == NONE). IIRC it gets baked into some C/C++ strings somewhere too. Eric ___ Discuss-gnuradio mailing list Discuss-gnuradio@gnu.org http://lists.gnu.org/mailman/listinfo/discuss-gnuradio
Re: [Discuss-gnuradio] UHD Announcement - September 23rd 2010
I agree with you it's not exactly right. I'm not sure about the right action. This issue should probably go onto the list of things to be considered in the grand build restructuring that was discussed by some of us a couple of weeks ago. Autotools is trying to be helpful by setting the unspecified prefix to NONE during configure. But since gnuradio is using it as if it was always set I suggest we do the following at the top of configure.ac if test ${prefix} = NONE; then prefix=${ac_default_prefix} fi We can put it on the next branch and hope it fixes more things than it breaks... at least until the grand rebuild structuring comes along. :-) -Josh ___ Discuss-gnuradio mailing list Discuss-gnuradio@gnu.org http://lists.gnu.org/mailman/listinfo/discuss-gnuradio
Re: [Discuss-gnuradio] UHD Announcement - September 23rd 2010
Hello List, I have pushed a bunch of code to the uhd repo and gnuradio next branch. http://ettus-apps.sourcerepo.com/redmine/ettus/projects/uhd/wiki - USRP1 multi-channel support has been completed. Multiple channels can be access through the new single usrp API which supersedes the simple usrp API. The equivalent gnuradio blocks(uhd single usrp source and sink), and grc wrappers have been created as well. http://www.ettus.com/uhd_docs/doxygen/html/classuhd_1_1usrp_1_1single__usrp.html The simple usrp interface is now deprecated but will continue to work. In the single channel case, all API calls are identical; to switch any code that was written for simple usrp, just change the include header and instantiation to the following: #include uhd/usrp/single_usrp.hpp single_usrp::sptr sdev = single_usrp::make(args); If you are running in GRC, just drag and drop the new blocks and swap the connections. :-) - In other news, UHD can now compile against pre-built libusb1.0 windows binaries: http://www.libusb.org/wiki/windows_backend#LatestBinarySnapshots Runtime operation has yet to be confirmed. Thanks! -Josh ___ OK, so I just updated a two-weeks-old gnuradio and uhd via GIT, and while UHD builds properly and installs correctly, gnuradio can't find uhd when it goes to do a configure, because pkg-config can't find uhd--and therefore doesn't build gr-uhd. This is a change from circa two weeks ago. So, either Fedora 12 has done something to the default paths for pkg-config, or the Gnu Radio build environment has changed slightly in the last two weeks. The fix was for me to manually put /usr/local/lib/pkgconfig into PKG_CONFIG_PATH before running the Gnu Radio configure/make/sudo make install cycle, but I haven't had to do that previously. -- Marcus Leech Principal Investigator Shirleys Bay Radio Astronomy Consortium http://www.sbrac.org ___ Discuss-gnuradio mailing list Discuss-gnuradio@gnu.org http://lists.gnu.org/mailman/listinfo/discuss-gnuradio
Re: [Discuss-gnuradio] UHD Announcement - September 23rd 2010
http://gnuradio.org/cgit/gnuradio.git/commit/?h=nextid=71c193ad5380829e20af533ed89903d8d7abcd2c -Josh Ok, so all Eric's fault :-) So, since the let's be nice and add /usr/local/lib to PKG_CONFIG_PATH code got removed from the .m4 file, so perhaps a note needs to be added to the build instructions for UHD for systems that don't by default have /usr/local/lib/pkgconfig in PKG_CONFIG_PATH? -- Marcus Leech Principal Investigator Shirleys Bay Radio Astronomy Consortium http://www.sbrac.org ___ Discuss-gnuradio mailing list Discuss-gnuradio@gnu.org http://lists.gnu.org/mailman/listinfo/discuss-gnuradio
Re: [Discuss-gnuradio] UHD Announcement - September 23rd 2010
On 09/24/2010 10:18 PM, Marcus D. Leech wrote: http://gnuradio.org/cgit/gnuradio.git/commit/?h=nextid=71c193ad5380829e20af533ed89903d8d7abcd2c -Josh Ok, so all Eric's fault :-) So, since the let's be nice and add /usr/local/lib to PKG_CONFIG_PATH code got removed from the .m4 file, so perhaps a note needs to be added to the build instructions for UHD for systems that don't by default have /usr/local/lib/pkgconfig in PKG_CONFIG_PATH? heres the mention of the package config stuff: http://ettus-apps.sourcerepo.com/redmine/ettus/projects/uhd/wiki#Gnuradio-UHD you can also manipulate the installation dirs like so: http://www.ettus.com/uhd_docs/manual/html/build.html#generate-makefiles-with-cmake :-) -Josh ___ Discuss-gnuradio mailing list Discuss-gnuradio@gnu.org http://lists.gnu.org/mailman/listinfo/discuss-gnuradio
Re: [Discuss-gnuradio] UHD Announcement - September 23rd 2010
On 09/24/2010 10:18 PM, Marcus D. Leech wrote: http://gnuradio.org/cgit/gnuradio.git/commit/?h=nextid=71c193ad5380829e20af533ed89903d8d7abcd2c -Josh Ok, so all Eric's fault :-) The problem being that /usr/local/lib/pkgconfig isnt honoring the users prefix and possibly libdir. Perhaps we can still make this right... Does this patch work for you? -Josh diff --git a/config/grc_gr_uhd.m4 b/config/grc_gr_uhd.m4 index 090187c..a3d3aff 100644 --- a/config/grc_gr_uhd.m4 +++ b/config/grc_gr_uhd.m4 @@ -24,6 +24,8 @@ AC_DEFUN([GRC_GR_UHD],[ GRC_CHECK_DEPENDENCY(gr-uhd, gnuradio-core) if test $passed = yes; then +dnl setup the pkg config path with uhd configuration variables +export PKG_CONFIG_PATH=$PKG_CONFIG_PATH:${prefix}/lib${LIB_SUFFIX}/pkgconfig dnl Don't do gr-uhd if the 'uhd' package is not installed PKG_CHECK_MODULES( [UHD], [uhd], [], ___ Discuss-gnuradio mailing list Discuss-gnuradio@gnu.org http://lists.gnu.org/mailman/listinfo/discuss-gnuradio