From: <ka...@en...> - 2008-01-22 22:12:54
|
Hi All, I am a newbie when it comes to PLplot and I'm alittle lost. In addition, I'm working from a mac (10.4.11/Intel) which might put me at a disadvantage. I have a few questions about PLplot upon getting started: 1) During the installation I tried to install PLplot into it's own directory in /usr/local using '--Prefix=/usr/local/PLplot' during cmake. However, this didn't install it into PLplot, but rather the default location which I assume is /usr/local. Will this be a problem? (I read in the README file that it was recommended to put PLplot in its own directory). For installation I followed the instructions from the wiki (http://www.miscdebris.net/plplot_wiki/index.php?title=Mac_OSX). 2) After the installation I tried to run the example files but I don't know how. There is an example folder in /path/to/PLplot/directory as well as in the folder I created for the build plplot-build which is in /path/to/PLplot/directory. If I enter the example folder in the PLplot directory and type 'make' it says makefile can't be found (there are makefiles but end in *.in, *.am, and *.example). If I enter the example folder in plplot-build the 'make' command executes but no executable files are added. How can I test that the installation worked? 3) My ultimate goal is to use PLplot with wxwidget code that I'm transferring from a PC. The code works on the PC (via wxPlot) and I'm trying to get it to work on the mac via xcode 2.4.1. I finally got the code to compile, but recieve this error message when I try to excute: [Session started at 2008-01-22 14:11:05 -0800.] ZeroLink: unknown symbol '__Z9read_plotP15plPlotterStructP7__sFILERb' guifit has exited due to signal 6 (SIGABRT) Does anyone know what this error is caused by or have experience with PLplot on xcode? 4) Any suggestions welcome as this is all new to me. Cheers, tdk |
From: Alan W. I. <ir...@be...> - 2008-01-22 23:02:23
|
On 2008-01-22 14:12-0800 ka...@en... wrote: > Hi All, Hi Ty: Glad to see you are finally able to post to one of our lists after some auto-bouncing. > 1) During the installation I tried to install PLplot into it's own > directory in /usr/local using '--Prefix=/usr/local/PLplot' during cmake. > However, this didn't install it into PLplot, but rather the default > location which I assume is /usr/local. Will this be a problem? (I read in > the README file that it was recommended to put PLplot in its own > directory). For installation I followed the instructions from the wiki > (http://www.miscdebris.net/plplot_wiki/index.php?title=Mac_OSX). That Mac OS X part of our wiki is just a supplement to our generic Unix instructions at http://www.miscdebris.net/plplot_wiki. Read/follow the generic instructions first, then look at the Mac OS X part of our wiki for any additional comments. In particular the generic instructions give you an example of how to set the installation prefix, and you have not followed those. Thus, you currently do have a default install location of /usr/local so I would advise starting over with clean source tree and empty build tree. Note, setting the installation prefix has no effect until you type the "make install" command so if you haven't typed that command yet, you won't have to clean out /usr/local/. > > 2) After the installation I tried to run the example files but I don't know > how. There is an example folder in /path/to/PLplot/directory as well as in > the folder I created for the build plplot-build which is in > /path/to/PLplot/directory. If I enter the example folder in the PLplot > directory and type 'make' it says makefile can't be found (there are > makefiles but end in *.in, *.am, and *.example). If I enter the example > folder in plplot-build the 'make' command executes but no executable files > are added. How can I test that the installation worked? Look for the heading "Post-cmake build, install, and build-tree and install-tree tests" in our generic instructions, where I believe you will find the answer to your question. Good luck with PLplot, and don't hesistate to post here again if you run into any other difficulty with PLplot. Alan __________________________ Alan W. Irwin Astronomical research affiliation with Department of Physics and Astronomy, University of Victoria (astrowww.phys.uvic.ca). Programming affiliations with the FreeEOS equation-of-state implementation for stellar interiors (freeeos.sf.net); PLplot scientific plotting software package (plplot.org); the libLASi project (unifont.org/lasi); the Loads of Linux Links project (loll.sf.net); and the Linux Brochure Project (lbproject.sf.net). __________________________ Linux-powered Science __________________________ |
From: <ka...@en...> - 2008-01-23 00:48:02
|
Hi All, (Thanks for the response Alan). My first question is how do I clean out the installed files from /usr/local (I ran 'make install')? Is there a list of installed items whereby I can do this manually? Secondly, I am trying to follow the 'generic unix' instructions and have skipped the first two optional steps, is this okay? When I tried to do the cmake invocation step, the cmake.out file reads: CMake Error: The source directory "~/plplot-5.8.0/plplot_cmake" does not exist. Specify --help for usage, or press the help button on the CMake GUI. Cheers, Ty On January 22, 3:02 pm "Alan W. Irwin" <ir...@be...> wrote: > > On 2008-01-22 14:12-0800 ka...@en... wrote: > > > Hi All, > > Hi Ty: > > Glad to see you are finally able to post to one of our lists after some > auto-bouncing. > > > 1) During the installation I tried to install PLplot into it's own > > directory in /usr/local using '--Prefix=/usr/local/PLplot' during > > cmake. However, this didn't install it into PLplot, but rather the > > default location which I assume is /usr/local. Will this be a > > problem? (I read in the README file that it was recommended to put > > PLplot in its own directory). For installation I followed the > > instructions from the wiki (http://www.miscdebris.net/plplot_wiki/index.php?title=Mac_OSX). > > > > That Mac OS X part of our wiki is just a supplement to our generic Unix > instructions at http://www.miscdebris.net/plplot_wiki. Read/follow the > generic instructions first, then look at the Mac OS X part of our wiki > for any additional comments. In particular the generic instructions > give you an example of how to set the installation prefix, and you have > not followed those. Thus, you currently do have a default install > location of /usr/local so I would advise starting over with clean > source tree and empty build tree. Note, setting the installation prefix > has no effect until you type the "make install" command so if you > haven't typed that command yet, you won't have to clean out /usr/local/. > > > > > 2) After the installation I tried to run the example files but I > > don't know how. There is an example folder in > > /path/to/PLplot/directory as well as in the folder I created for the > > build plplot-build which is in /path/to/PLplot/directory. If I enter > > the example folder in the PLplot directory and type 'make' it says > > makefile can't be found (there are makefiles but end in *.in, *.am, > > and *.example). If I enter the example folder in plplot-build the > > 'make' command executes but no executable files are added. How can I > > test that the installation worked? > > Look for the heading "Post-cmake build, install, and build-tree and > install-tree tests" in our generic instructions, where I believe you > will find the answer to your question. > > Good luck with PLplot, and don't hesistate to post here again if you run > into any other difficulty with PLplot. > > Alan > __________________________ > Alan W. Irwin > > Astronomical research affiliation with Department of Physics and > Astronomy, University of Victoria (astrowww.phys.uvic.ca). > > Programming affiliations with the FreeEOS equation-of-state > implementation for stellar interiors (freeeos.sf.net); PLplot > scientific plotting software package (plplot.org); the libLASi project > (unifont.org/lasi); the Loads of Linux Links project (loll.sf.net); and > the Linux Brochure Project (lbproject.sf.net). > __________________________ > > Linux-powered Science > __________________________ |
From: Alan W. I. <ir...@be...> - 2008-01-23 05:20:24
|
On 2008-01-22 15:50-0800 ka...@en... wrote: > Hi Alan, > > First question: > I did the make install, so how should I clean out my /usr/local? Is there > a list of installed files so I can manually delete them, or is there a > simpler way? Look for a file called install_manifest.txt in the top-level of the build tree. It is automatically produced by the "make install" target that cmake sets up. However, if you are a conservative individual (like I am) about removing stuff, I wouldn't trust that file blindly in case CMake screwed something up. However, it should be a reasonable guide for what to remove (with caution). BTW, this is one of the reasons I advocate having a unique installation prefix for personal use of PLplot. It makes it easy to remove everything you installed without concern over the correctness of a list of installed files. Alan __________________________ Alan W. Irwin Astronomical research affiliation with Department of Physics and Astronomy, University of Victoria (astrowww.phys.uvic.ca). Programming affiliations with the FreeEOS equation-of-state implementation for stellar interiors (freeeos.sf.net); PLplot scientific plotting software package (plplot.org); the libLASi project (unifont.org/lasi); the Loads of Linux Links project (loll.sf.net); and the Linux Brochure Project (lbproject.sf.net). __________________________ Linux-powered Science __________________________ |
From: Alan W. I. <ir...@be...> - 2008-01-23 06:53:46
|
On 2008-01-22 16:47-0800 ka...@en... wrote: > Secondly, I am trying to follow the 'generic unix' instructions and have > skipped the first two optional steps, is this okay? Usually. > When I tried to do the > cmake invocation step, the cmake.out file reads: > > CMake Error: The source directory "~/plplot-5.8.0/plplot_cmake" does not > exist. That error message means exactly what it says; the directory you specified to cmake does not exist on your system. You have to specify the exact path of the top-level source tree on your system. If you created that by unpacking the 5.8.0 tarball, that will be some_prefix/plplot-5.8.0, where some_prefix is the directory where you unpacked the tarball. Alternatively, if you do an svn checkout of our code, you can name the resulting source tree anything you like. In my case I use plplot_cmake for historical reasons, and that shows up in the wiki example. That is clearly labelled as an example, and nobody else has mentioned having problems with adopting the literal directory name there, but I have just now modified the wiki to make this clearer. Alan __________________________ Alan W. Irwin Astronomical research affiliation with Department of Physics and Astronomy, University of Victoria (astrowww.phys.uvic.ca). Programming affiliations with the FreeEOS equation-of-state implementation for stellar interiors (freeeos.sf.net); PLplot scientific plotting software package (plplot.org); the libLASi project (unifont.org/lasi); the Loads of Linux Links project (loll.sf.net); and the Linux Brochure Project (lbproject.sf.net). __________________________ Linux-powered Science __________________________ |
From: Jerry <lan...@qw...> - 2008-01-23 10:29:35
|
On Jan 22, 2008, at 3:12 PM, <ka...@en...> <ka...@en...> wrote: > 3) My ultimate goal is to use PLplot with wxwidget code that I'm > transferring from a PC. The code works on the PC (via wxPlot) and I'm > trying to get it to work on the mac via xcode 2.4.1. I finally got > the > code to compile, but recieve this error message when I try to excute: > > [Session started at 2008-01-22 14:11:05 -0800.] > ZeroLink: unknown symbol '__Z9read_plotP15plPlotterStructP7__sFILERb' > guifit has exited due to signal 6 (SIGABRT) > > Does anyone know what this error is caused by or have experience with > PLplot on xcode? Hi tdk, I developed the Ada bindings using mostly Xcode, and I'm also at 10.4.11 and 2.4. I know little of C but I do know a little about Xcode. I don't know what the ZeroLink problem is (linking for Ada happens in its own universe, so to speak) but you might try turning off ZeroLink. See Help, "Using ZeroLink". Then Project -> Edit Active Target 'Your Target', click on the Build tab, and look for the ZERO_LINK checkbox. I don't know if that will help and you'll probably lose the ZeroLink functionality. So then, you might check with the Xcode mailing list. By the way, Xcode (at least through 2.4) is really stupid about some things. You can put a source file in the Groups & Files panel but that doesn't tell the compiler where to look for the file when it needs to compile. You need to edit your Target settings and place the path to your file in the Header Search Paths. Same thing applies for libraries, but Library Search Paths. Jerry |
From: Werner S. <sm...@ia...> - 2008-01-23 11:45:45
|
Hi, > 3) My ultimate goal is to use PLplot with wxwidget code that I'm > transferring from a PC. The code works on the PC (via wxPlot) and I'm > trying to get it to work on the mac via xcode 2.4.1. I finally got the > code to compile, but recieve this error message when I try to excute: > > [Session started at 2008-01-22 14:11:05 -0800.] > ZeroLink: unknown symbol '__Z9read_plotP15plPlotterStructP7__sFILERb' > guifit has exited due to signal 6 (SIGABRT) This doesn't look like a wxWidgets problem. The symbol '__Z9read_plotP15plPlotterStructP7__sFILERb' is just a "encoded" function call, which can't be found in the libraries you told XCode to link into the executable. So I would look where you call a function read_plot( plPlotterStruct , FILE ) (or similar), and where you actually define this function. I can't remember having defined such function in wxWidgets driver code, but I'll have a look. Regards, Werner -- Dr. Werner Smekal Institut fuer Allgemeine Physik Technische Universitaet Wien Wiedner Hauptstr 8-10 A-1040 Wien Austria email: sm...@ia... web: http://www.iap.tuwien.ac.at/~smekal phone: +43-(0)1-58801-13463 (office) +43-(0)1-58801-13469 (laboratory) fax: +43-(0)1-58801-13499 |
From: <ka...@en...> - 2008-01-25 19:23:35
Attachments:
plot_files.tar.gz
|
Hi All, I am making progress, and have installed plplot correctly thanks to your guys help. Werner, your fix to wxwidget.cpp worked brilliantly and I can run the examples now with the wxwidget driver. Now that I am satisfied with my plplot build I wanted to return to running plplot with wxwidgets on xcode. I am still receiving the error I received originally: ZeroLink: unknown symbol '__Z9read_plotP15plPlotterStructP7__sFILERb' I tried compiling without ZeroLink as Jerry suggested but that still doesn't execute. Also, I looked for read_plot in my include and source files but didn't find a function like that. The wxwidget code I'm trying to transfer uses wxPlot which I believe is built from plplot (which is why I think it is possible to get working on the mac). I have attached the include files that I use related to plotting. In my source files the only related classes I use are wxPlot, wxGrid, and PlotCanvas. Either I am calling something from these files that plplot can't handle, or I am not implementing it correctly in xcode. In regards to that, what libraries or include file locations should/could I add to my xcode project? Thanks again. Cheers, Ty > Hi, > > > 3) My ultimate goal is to use PLplot with wxwidget code that I'm > > transferring from a PC. The code works on the PC (via wxPlot) and I'm > > trying to get it to work on the mac via xcode 2.4.1. I finally got > > the code to compile, but recieve this error message when I try to > > excute: > > [Session started at 2008-01-22 14:11:05 -0800.] > > ZeroLink: unknown symbol '__Z9read_plotP15plPlotterStructP7__sFILERb' > > guifit has exited due to signal 6 (SIGABRT) > > This doesn't look like a wxWidgets problem. The symbol > '__Z9read_plotP15plPlotterStructP7__sFILERb' is just a "encoded" > function call, which can't be found in the libraries you told XCode to > link into the executable. So I would look where you call a function > read_plot( plPlotterStruct , FILE ) (or similar), and where you > actually define this function. I can't remember having defined such > function in wxWidgets driver code, but I'll have a look. > > Regards, > Werner |
From: <ka...@en...> - 2008-01-23 19:01:52
Attachments:
cmake.out
cmake_warnings_only.out
|
Hi Guys, Thanks for all the help thus far (Alan, Jerry, and Werner). The progress up until now has been cleaning my earlier build and reinstalling plplot, which seemed to go fine. I've attached my cmake.out file and was wondering if any of the warnings are something to worry about (in particular Qhull which also gave me an error in the compilation of the examples, plplot_test.out). - The reason I ask is that when I try example c/x01 and use wxwidgets as the device it gives me a bus error. Should I be worried about this if I plan to use it with wxwidgets and xcode? (Note, I was able to get it to run under the x windows device when I ran it in x11.) So I'm guessing I don't have one of the prerequisites for running plplot in wxwidgets. - The other question I had which Jerry might be able to answer best is what libraries I should add to my xcode project. From my wxwidget build all the libraries I added ended in *.a. I didn't see any such libraries in plplot and was wondering if there are any to add? Thanks again! Cheers, Ty |
From: Werner S. <sm...@ia...> - 2008-01-23 19:32:55
|
Hi Ty, regarding the warnings: the only warning which concerns the wxwidgets driver is about the agg library. But you don't need it, it's only for antialized output and can be added later, after you solved all the primary problems. The qhull library is useful for surface plots, I think, but is not mandatory. All other warnings are regarding interfaces to different languages (f95, phyton, ...) since you use c++ and wxwidgets, they are of no interest. Regarding the crash of the wxwidgets driver. I have to admit, that the last time I checked the wxwidgets driver on Mac OSX was about 2 years ago on a 700Mhz G3, Mac OSX 10.4, everything was so slow, that it was no fun to develop. It worked back than, but there were many changes to the driver till than, so it's very likely that the wxwidgets driver is broken on Mac OS X, though it works on Linux and Windows. So far the bad news. Good news is, that I already have a nice new shiny iMac and just need to set up everything for plplot, so I can check it soon and see if there is a serious problem. I'll try to have a look at it as soon as possible. Regards, Werner ka...@en... wrote: > Hi Guys, > > Thanks for all the help thus far (Alan, Jerry, and Werner). The progress > up until now has been cleaning my earlier build and reinstalling plplot, > which seemed to go fine. I've attached my cmake.out file and was wondering > if any of the warnings are something to worry about (in particular Qhull > which also gave me an error in the compilation of the examples, > plplot_test.out). > > - The reason I ask is that when I try example c/x01 and use wxwidgets as > the device it gives me a bus error. Should I be worried about this if I > plan to use it with wxwidgets and xcode? (Note, I was able to get it to run > under the x windows device when I ran it in x11.) So I'm guessing I don't > have one of the prerequisites for running plplot in wxwidgets. > > - The other question I had which Jerry might be able to answer best is what > libraries I should add to my xcode project. From my wxwidget build all the > libraries I added ended in *.a. I didn't see any such libraries in plplot > and was wondering if there are any to add? > > Thanks again! > > Cheers, > Ty > > > ------------------------------------------------------------------------ > > ------------------------------------------------------------------------- > This SF.net email is sponsored by: Microsoft > Defy all challenges. Microsoft(R) Visual Studio 2008. > http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/ > > > ------------------------------------------------------------------------ > > _______________________________________________ > Plplot-general mailing list > Plp...@li... > https://lists.sourceforge.net/lists/listinfo/plplot-general -- Dr. Werner Smekal Institut fuer Allgemeine Physik Technische Universitaet Wien Wiedner Hauptstr 8-10 A-1040 Wien Austria email: sm...@ia... web: http://www.iap.tuwien.ac.at/~smekal phone: +43-(0)1-58801-13463 (office) +43-(0)1-58801-13469 (laboratory) fax: +43-(0)1-58801-13499 |
From: <ka...@en...> - 2008-01-23 22:04:52
|
Hi Werner, Thanks for looking into it. I'm glad to hear that you are once again working with a mac, they are great little computers. I'm rather surprised that no one in the mac community has expressed an interest in this yet (wxwidget driver that is). I might seem alittle slow for saying this, but if the driver isn't working for the examples from plplot, do I have any chance of getting it to work with wxwidgets in xcode? Cheers, Ty On January 23, 11:32 am Werner Smekal <sm...@ia...> wrote: > Hi Ty, > > regarding the warnings: the only warning which concerns the wxwidgets > driver is about the agg library. But you don't need it, it's only for > antialized output and can be added later, after you solved all the > primary problems. The qhull library is useful for surface plots, I > think, but is not mandatory. All other warnings are regarding > interfaces to different languages (f95, phyton, ...) since you use c++ > and wxwidgets, they are of no interest. > > Regarding the crash of the wxwidgets driver. I have to admit, that the > last time I checked the wxwidgets driver on Mac OSX was about 2 years > ago on a 700Mhz G3, Mac OSX 10.4, everything was so slow, that it was > no fun to develop. It worked back than, but there were many changes to > the driver till than, so it's very likely that the wxwidgets driver is > broken on Mac OS X, though it works on Linux and Windows. So far the > bad news. Good news is, that I already have a nice new shiny iMac and > just need to set up everything for plplot, so I can check it soon and > see if there is a serious problem. I'll try to have a look at it as > soon as possible. > > Regards, > Werner > > ka...@en... wrote: > > Hi Guys, > > > > Thanks for all the help thus far (Alan, Jerry, and Werner). The > > progress up until now has been cleaning my earlier build and > > reinstalling plplot, which seemed to go fine. I've attached my > > cmake.out file and was wondering if any of the warnings are something > > to worry about (in particular Qhull which also gave me an error in > > the compilation of the examples, plplot_test.out). > > > > - The reason I ask is that when I try example c/x01 and use wxwidgets > > as the device it gives me a bus error. Should I be worried about > > this if I plan to use it with wxwidgets and xcode? (Note, I was able > > to get it to run under the x windows device when I ran it in x11.) > > So I'm guessing I don't have one of the prerequisites for running > > plplot in wxwidgets. > > - The other question I had which Jerry might be able to answer best > > is what libraries I should add to my xcode project. From my wxwidget > > build all the libraries I added ended in *.a. I didn't see any such > > libraries in plplot and was wondering if there are any to add? > > > > Thanks again! > > > > Cheers, > > Ty > > > > > > ------------------------------------------------------------------------ > > > > ------------------------------------------------------------------------- > > This SF.net email is sponsored by: Microsoft > > Defy all challenges. Microsoft(R) Visual Studio 2008. > > http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/ > > > > > > ------------------------------------------------------------------------ > > > > _______________________________________________ > > Plplot-general mailing list > > Plp...@li... > > https://lists.sourceforge.net/lists/listinfo/plplot-general > > > -- > Dr. Werner Smekal > Institut fuer Allgemeine Physik > Technische Universitaet Wien > Wiedner Hauptstr 8-10 > A-1040 Wien > Austria > > email: sm...@ia... > web: http://www.iap.tuwien.ac.at/~smekal > phone: +43-(0)1-58801-13463 (office) > +43-(0)1-58801-13469 (laboratory) > fax: +43-(0)1-58801-13499 > > ------------------------------------------------------------------------- > This SF.net email is sponsored by: Microsoft > Defy all challenges. Microsoft(R) Visual Studio 2008. > http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/ > _______________________________________________ > Plplot-general mailing list > Plp...@li... > https://lists.sourceforge.net/lists/listinfo/plplot-general |
From: Werner S. <sm...@ia...> - 2008-01-24 14:55:44
|
Hi Ty, > Thanks for looking into it. I'm glad to hear that you are once again > working with a mac, they are great little computers. I'm rather > surprised > that no one in the mac community has expressed an interest in this yet > (wxwidget driver that is). Obviously not, since I think I encountered this bug many months ago, but didn't have the time to fix it and was not motivated doing this on a *very* slow computer. > > I might seem alittle slow for saying this, but if the driver isn't > working > for the examples from plplot, do I have any chance of getting it to > work > with wxwidgets in xcode? Maybe, since it was a bug in the application created around the driver, which is not needed if you use the wxWidgets driver from within a wxWidgets application, but nevertheless it's already fixed in the svn repository. So, please try the latest svn version or make the corresponding changes to drivers/wxwidgets.cpp: Modified: trunk/drivers/wxwidgets.cpp =================================================================== --- trunk/drivers/wxwidgets.cpp 2008-01-23 10:59:02 UTC (rev 8164) +++ trunk/drivers/wxwidgets.cpp 2008-01-24 14:41:02 UTC (rev 8165) @@ -1883,14 +1883,18 @@ //printf( "Clipping region: x=%d, y=%d, width=%d, height=%d, counter= %d\n", vX, vY, vW, vH, counter++ ); if( m_dev->antialized ) { - wxMemoryDC MemoryDC; - wxBitmap bitmap( m_dev->m_buffer->GetSubImage(wxRect(vX, vY, vW, vH)), -1 ); - MemoryDC.SelectObject( bitmap ); - dc.Blit( vX, vY, vW, vH, &MemoryDC, 0, 0 ); - MemoryDC.SelectObject( wxNullBitmap ); + if( m_dev->m_buffer ) { + wxMemoryDC MemoryDC; + wxBitmap bitmap( m_dev->m_buffer->GetSubImage(wxRect(vX, vY, vW, vH)), -1 ); + MemoryDC.SelectObject( bitmap ); + dc.Blit( vX, vY, vW, vH, &MemoryDC, 0, 0 ); + MemoryDC.SelectObject( wxNullBitmap ); + } } - else - dc.Blit( vX, vY, vW, vH, m_dev->dc, vX, vY ); + else { + if( m_dev->dc ) + dc.Blit( vX, vY, vW, vH, m_dev->dc, vX, vY ); + } upd ++ ; } Most examples should work now. Best Regards, Werner -- Dr. Werner Smekal Institut fuer Allgemeine Physik Technische Universitaet Wien Wiedner Hauptstr 8-10 A-1040 Wien Austria email: sm...@ia... web: http://www.iap.tuwien.ac.at/~smekal phone: +43-(0)1-58801-13463 (office), +43-(0)1-58801-13469 (laboratory) fax: +43-(0)1-58801-13499 |
From: Jerry <lan...@qw...> - 2008-01-24 01:05:50
|
On Jan 23, 2008, at 12:01 PM, <ka...@en...> <ka...@en...> wrote: > - The other question I had which Jerry might be able to answer best > is what > libraries I should add to my xcode project. From my wxwidget build > all the > libraries I added ended in *.a. I didn't see any such libraries in > plplot > and was wondering if there are any to add? Hi Ty, I might have given you false hope. I've never built with wxwidgets, always with DENABLE_wxwidgets=OFF and -DPLD_wxwidgets=OFF. (Isn't that suggested on the plplot wiki for Macs?) The only non-Ada library that I put into Xcode is libplplotd.dylib. Jerry |
From: <ka...@en...> - 2008-02-03 17:42:13
Attachments:
make_results.out.tbz
|
Hi All, I am still trying to incorporate PLplot in some of my code and had a question on building without the shared libraries. I've been getting alot of good help from Werner and I've hit a snag that I thought would be better to post to the group. I'm trying to add the Plplot libraries to xcode but only have the *.dylibs in the source tree. Werner suggested I try compiling and building with the shared libraries off. When I do this I get an error in the build. I have attached a copy of what I get when I 'make' with the Shared libraries off. Any ideas what is going wrong? My goal is to build the libraries with *.a extension to add to my xcode. Cheers, Ty |
From: Werner S. <sm...@ia...> - 2008-02-04 09:20:46
|
Hi Ty, you can get rid of the tk warnings by gettting rid of the tk driver, which you don't need anyway by setting the cmake option - DENABLE_tk=OFF and -DENABLE-tcl=OFF. The other warnings you get are since there is a mixup between the png/jpeg libraries installed by macport to /opt/local/ and the ones provided by the wxWidgets library. I actually have similar problems and need to find a way how I tell cmake which library/headers it should use. In the shared case this is not a problem, since the wxWidgets library knows which dylib to use, but if you link all together many symbols are twice in the linked object. So I would suggest to stick to the shared case, since you can link against the dylib anyways. If you look at how an example is compiled (use make VERBOSE=1): cd /Users/smekal/Development/plplot/build/examples/c && /usr/bin/ gcc -headerpad_max_install_names -fPIC "CMakeFiles/x14c.dir/ x14c.o" -o x14c -L/Users/smekal/Development/plplot/build/src -L/ Users/smekal/Development/plplot/build/lib/csa -lplplotd -lm -lltdl - ldl -lcsirocsa -lm You can see that it tells gcc to look in /Users/smekal/Development/ plplot/build/src and link against plplotd. Since there are in this directory only dylibs I suppose gcc can link against them, as can gcc for Windows (which I'm sure can link against dlls). So don't tell xcode the link against libplplotd.a, just tell it to link against plplotd. gcc should figure it out on its own. Regards, Werner On 03.02.2008, at 18:42, <ka...@en...> <ka...@en... > wrote: > Hi All, > > I am still trying to incorporate PLplot in some of my code and had a > question on building without the shared libraries. I've been > getting alot > of good help from Werner and I've hit a snag that I thought would be > better > to post to the group. I'm trying to add the Plplot libraries to > xcode but > only have the *.dylibs in the source tree. Werner suggested I try > compiling and building with the shared libraries off. When I do > this I get > an error in the build. I have attached a copy of what I get when I > 'make' > with the Shared libraries off. > > Any ideas what is going wrong? My goal is to build the libraries > with *.a > extension to add to my xcode. > > Cheers, > Ty > < > make_results > .out > .tbz > > > ------------------------------------------------------------------------- > This SF.net email is sponsored by: Microsoft > Defy all challenges. Microsoft(R) Visual Studio 2008. > http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/_______________________________________________ > Plplot-general mailing list > Plp...@li... > https://lists.sourceforge.net/lists/listinfo/plplot-general -- Dr. Werner Smekal Institut fuer Allgemeine Physik Technische Universitaet Wien Wiedner Hauptstr 8-10 A-1040 Wien Austria email: sm...@ia... web: http://www.iap.tuwien.ac.at/~smekal phone: +43-(0)1-58801-13463 (office), +43-(0)1-58801-13469 (laboratory) fax: +43-(0)1-58801-13499 |
From: Alan W. I. <ir...@be...> - 2008-02-04 02:14:35
|
On 2008-02-03 09:42-0800 ka...@en... wrote: > [...]compiling and building with the shared libraries off. When I do this I get > an error in the build. Hazen, can you verify this problem with static builds (-DBUILD_SHARED_LIBS=OFF) for Mac OS X? I don't have access to that platform, but we need verification of this issue for Mac OS X since static builds work fine on Linux. (I just tested that in work leading up to our next release.) Alan __________________________ Alan W. Irwin Astronomical research affiliation with Department of Physics and Astronomy, University of Victoria (astrowww.phys.uvic.ca). Programming affiliations with the FreeEOS equation-of-state implementation for stellar interiors (freeeos.sf.net); PLplot scientific plotting software package (plplot.org); the libLASi project (unifont.org/lasi); the Loads of Linux Links project (loll.sf.net); and the Linux Brochure Project (lbproject.sf.net). __________________________ Linux-powered Science __________________________ |
From: Hazen B. <hba...@ma...> - 2008-02-04 04:00:26
|
On Feb 3, 2008, at 9:14 PM, Alan W. Irwin wrote: > On 2008-02-03 09:42-0800 ka...@en... wrote: > >> [...]compiling and building with the shared libraries off. When I >> do this I get >> an error in the build. > > Hazen, can you verify this problem with static builds > (-DBUILD_SHARED_LIBS=OFF) for Mac OS X? I am able to compile and build with shared libraries off on OS-X 10.4 (PowerPC). For what it is worth, I get many of the same warnings about tk and X11, but none about png. -Hazen |
From: Alan W. I. <ir...@be...> - 2008-02-04 18:55:38
|
On 2008-02-04 10:20+0100 Werner Smekal wrote: > Hi Ty, > > you can get rid of the tk warnings by gettting rid of the tk driver, > which you don't need anyway by setting the cmake option - > DENABLE_tk=OFF and -DENABLE-tcl=OFF. The other warnings you get are > since there is a mixup between the png/jpeg libraries installed by > macport to /opt/local/ and the ones provided by the wxWidgets library. > I actually have similar problems and need to find a way how I tell > cmake which library/headers it should use. In the shared case this is > not a problem, since the wxWidgets library knows which dylib to use, > but if you link all together many symbols are twice in the linked > object. Hi Werner: I follow the above argument this far. If you turn dynamic drivers off (which is a necessary side effect of the -DBUILD_SHARED_LIBS=OFF option or which you can specify independently for the shared libraries case by using the -DENABLE_DYNDRIVERS=OFF option), then instead of being used as independent plug-ins all driver code becomes part of our core library. In that all-in-one case, you have the wxwidgets driver code using the wxwidgets library and the gd driver using the gd library, i.e., our core library links to both the wxwidgets and gd libraries, but NOT directly to the jpeg or png libraries since our device drivers do not refer to jpeg or png symbols. So this is classical hierarchical linking with libplplot linking to wxwidgets which in turn links to the jpeg and png libraries and similarly with libplplot linking to libgd which in turn links to the jpeg and png libraries. If those two libraries link to two separate versions of the jpeg and png libraries, that should not be an issue for a really smart library linking and run-time linking environment, but I am not sure whether Mac OS X (or any other platform) is that smart or not. In any case, how libgd and libwxwidgets are linked is completely outside of our build system's control and something that the Mac OS X user may have to deal with independently by reinstalling one or both of those libraries. Note, another complicating factor is our FindGD.cmake module finds jpeg and png library information just in case the platform's linking and run-time environment is too dumb to even support hierarchical linking. However, the CMake modules to find the jpeg and png libraries are completely independent of each other and also of our own FindGD.cmake so it's quite possible that FindGD.cmake is finding an inconsistent set of jpeg and png libraries. To change that behaviour set the environment variable CMAKE_LIBRARY_PATH (see our wiki for more information on this variable) to the appropriate path for the png and jpeg libraries needed by libgd. Werner, does that change solve the issue? If not, then perhaps libwxwidgets and libgd as currently installed on your system are linked to different jpeg and png libraries, and you may have to reinstall one or both of them to use consistent jpeg and png libraries if the Mac OS X linker and run-time loader is not smart enough to handle that situation. Alan __________________________ Alan W. Irwin Astronomical research affiliation with Department of Physics and Astronomy, University of Victoria (astrowww.phys.uvic.ca). Programming affiliations with the FreeEOS equation-of-state implementation for stellar interiors (freeeos.sf.net); PLplot scientific plotting software package (plplot.org); the libLASi project (unifont.org/lasi); the Loads of Linux Links project (loll.sf.net); and the Linux Brochure Project (lbproject.sf.net). __________________________ Linux-powered Science __________________________ |
From: Werner S. <sm...@ia...> - 2008-02-05 10:07:00
|
Hi Alan > > I follow the above argument this far. If you turn dynamic drivers off > (which > is a necessary side effect of the -DBUILD_SHARED_LIBS=OFF option or which > you can specify independently for the shared libraries case by using the > -DENABLE_DYNDRIVERS=OFF option), then instead of being used as > independent > plug-ins all driver code becomes part of our core library. In that > all-in-one case, you have the wxwidgets driver code using the wxwidgets > library and the gd driver using the gd library, i.e., our core library > links > to both the wxwidgets and gd libraries, but NOT directly to the jpeg > or png > libraries since our device drivers do not refer to jpeg or png > symbols. So > this is classical hierarchical linking with libplplot linking to > wxwidgets > which in turn links to the jpeg and png libraries and similarly with > libplplot linking to libgd which in turn links to the jpeg and png > libraries. If those two libraries link to two separate versions of > the jpeg > and png libraries, that should not be an issue for a really smart library > linking and run-time linking environment, but I am not sure whether > Mac OS X > (or any other platform) is that smart or not. In any case, how libgd and > libwxwidgets are linked is completely outside of our build system's > control > and something that the Mac OS X user may have to deal with > independently by > reinstalling one or both of those libraries. I think that's case. Mabye gcc is smart enough, since it issues only lots of warnings, but I wouldn't have a good feeling, that this will work :) > > Note, another complicating factor is our FindGD.cmake module finds > jpeg and > png library information just in case the platform's linking and run-time > environment is too dumb to even support hierarchical linking. > However, the > CMake modules to find the jpeg and png libraries are completely > independent > of each other and also of our own FindGD.cmake so it's quite possible > that > FindGD.cmake is finding an inconsistent set of jpeg and png > libraries. To > change that behaviour set the environment variable CMAKE_LIBRARY_PATH > (see > our wiki for more information on this variable) to the appropriate > path for > the png and jpeg libraries needed by libgd. I hope all FindXXX.cmake scripts always look in CMAKE_LIBRARY_PATH first, before trying the standard paths, or? Than I would just need to set them to /opt/local/lib which is were all macports libraries are. I would also need to set CMAKE_INCLUDE_PATH to /opt/local/include, so that the correct headers are used as well. I can test that on Thursday, until then I have no access to a Mac OS X machine. > > Werner, does that change solve the issue? If not, then perhaps > libwxwidgets > and libgd as currently installed on your system are linked to > different jpeg > and png libraries, and you may have to reinstall one or both of them to > use consistent jpeg and png libraries if the Mac OS X linker and run-time > loader is not smart enough to handle that situation. In any case I think if you mix the macports gd library with the wxwidgets library provided by apple, that this won't work (for the static case). Either one must compile wxwidgets on its own, using the macports libraries (wxWidgets uses them if it can find png and jpeg libraries, or turn png/jpeg support off) or use the macports wxwidgets library. Thanks for the reminder about CMAKE_LIBRARY_PATH. Regards, Werner > > Alan > __________________________ > Alan W. Irwin > > Astronomical research affiliation with Department of Physics and > Astronomy, > University of Victoria (astrowww.phys.uvic.ca). > > Programming affiliations with the FreeEOS equation-of-state > implementation > for stellar interiors (freeeos.sf.net); PLplot scientific plotting > software > package (plplot.org); the libLASi project (unifont.org/lasi); the > Loads of > Linux Links project (loll.sf.net); and the Linux Brochure Project > (lbproject.sf.net). > __________________________ > > Linux-powered Science > __________________________ |
From: Werner S. <sm...@ia...> - 2008-02-08 08:38:53
|
Ok, just to close (?) this topic. > > Werner, does that change solve the issue? If not, then perhaps > libwxwidgets > and libgd as currently installed on your system are linked to > different jpeg > and png libraries, and you may have to reinstall one or both of them > to > use consistent jpeg and png libraries if the Mac OS X linker and run- > time > loader is not smart enough to handle that situation. this partly solves my issues. CMAKE_LIBRARY_PATH and CMAKE_INCLUDE_PATH are the first in the search paths for the cmake modules and if I set them to /opt/local/lib and /opt/local/include respectively cmake happily find all macports libraries. If I don't do that cmake gets confused: It is impossible to order the linker search path in such a way that libraries specified as full paths will be picked by the linker. Directories and libraries involved are: Directory: /opt/local/lib contains: Library: /usr/lib/libltdl.dylib Directory: /usr/X11/lib contains: Library: /opt/local/lib/libXrender.dylib Library: /opt/local/lib/libfontconfig.dylib Library: /opt/local/lib/libfreetype.dylib Library: /opt/local/lib/libpng12.dylib Directory: /usr/X11R6/lib contains: Library: /opt/local/lib/libXrender.dylib Library: /opt/local/lib/libfontconfig.dylib Library: /opt/local/lib/libfreetype.dylib Library: /opt/local/lib/libpng12.dylib Directory: /usr/lib contains: Library: /opt/local/lib/libexpat.dylib Library: /opt/local/lib/libiconv.dylib Library: /opt/local/lib/libz.dylib After I set the CMAKE_LIBRARY_PATH and CMAKE_INCLUDE_PATH enviroment variables it compiles. If I compile the static library I get link errors regarding the wxwidgets.o object file: Undefined symbols: "___cxa_guard_release", referenced from: wxPLplotWindow::OnIdle(wxIdleEvent&) in libplplotd.a(wxwidgets.o) "operator delete[](void*)", referenced from: fill_polygon(PLStream*) in libplplotd.a(wxwidgets.o) agg::pod_allocator<unsigned char>::deallocate(unsigned char*, unsigned int)in libplplotd.a(wxwidgets.o) agg ::pod_allocator <agg::scanline_u8::span>::deallocate(agg::scanline_u8::span*, unsigned int)in libplplotd.a(wxwidgets.o) agg::pod_allocator<agg::cell_aa>::deallocate(agg::cell_aa*, unsigned int)in libplplotd.a(wxwidgets.o) agg::pod_allocator<agg::cell_aa*>::deallocate(agg::cell_aa**, unsigned int)in libplplotd.a(wxwidgets.o) agg::pod_allocator<agg::vertex_dist>::deallocate(agg::vertex_dist*, unsigned int)in libplplotd.a(wxwidgets.o) agg::pod_allocator<agg::vertex_dist*>::deallocate(agg::vertex_dist**, unsigned int)in libplplotd.a(wxwidgets.o) agg::pod_allocator<agg::point_base<double> >::deallocate(agg::point_base<double>*, unsigned int)in libplplotd.a(wxwidgets.o) agg ::pod_allocator <agg::point_base<double>*>::deallocate(agg::point_base<double>**, unsigned int)in libplplotd.a(wxwidgets.o) agg ::pod_allocator < agg ::rasterizer_cells_aa < agg ::cell_aa > ::sorted_y >::deallocate(agg::rasterizer_cells_aa<agg::cell_aa>::sorted_y*, unsigned int)in libplplotd.a(wxwidgets.o) agg::pod_allocator<double>::deallocate(double*, unsigned int)in libplplotd.a(wxwidgets.o) agg::pod_allocator<double*>::deallocate(double**, unsigned int)in libplplotd.a(wxwidgets.o) "___cxa_end_catch", referenced from: wxRunApp(PLStream*, bool)in libplplotd.a(wxwidgets.o) install_buffer(PLStream*) in libplplotd.a(wxwidgets.o) "operator delete(void*)", referenced from: wxPLCreateApp() in libplplotd.a(wxwidgets.o) plD_tidy_wxwidgets(PLStream*) in libplplotd.a(wxwidgets.o) plD_tidy_wxwidgets(PLStream*) in libplplotd.a(wxwidgets.o) wxPLplotFrame::wxPLplotFrame(wxString const&, PLStream*)in libplplotd.a(wxwidgets.o) wxPLplotFrame::wxPLplotFrame(wxString const&, PLStream*)in libplplotd.a(wxwidgets.o) It complains about symbols normally provided by the standard c++ library? So either this library is not linked in (why?) or C/C++ mixup or ... no idea. Disabling the wxwidgets driver let plplot compile and also there are no(t many) problems executing the examples, that is, aqt/xwin/xcairo have actually problems, but png and others work. Regards, Werner > > > Alan > __________________________ > Alan W. Irwin > > Astronomical research affiliation with Department of Physics and > Astronomy, > University of Victoria (astrowww.phys.uvic.ca). > > Programming affiliations with the FreeEOS equation-of-state > implementation > for stellar interiors (freeeos.sf.net); PLplot scientific plotting > software > package (plplot.org); the libLASi project (unifont.org/lasi); the > Loads of > Linux Links project (loll.sf.net); and the Linux Brochure Project > (lbproject.sf.net). > __________________________ > > Linux-powered Science > __________________________ -- Dr. Werner Smekal Institut fuer Allgemeine Physik Technische Universitaet Wien Wiedner Hauptstr 8-10 A-1040 Wien Austria email: sm...@ia... web: http://www.iap.tuwien.ac.at/~smekal phone: +43-(0)1-58801-13463 (office), +43-(0)1-58801-13469 (laboratory) fax: +43-(0)1-58801-13499 |
From: Alan W. I. <ir...@be...> - 2008-02-05 17:09:36
|
On 2008-02-05 11:07+0100 Werner Smekal wrote: > I hope all FindXXX.cmake scripts always look in CMAKE_LIBRARY_PATH > first, before trying the standard paths, or? Yes. If you check the FindXXX.cmake modules installed with your system you will see they virtually always use the CMake FIND_LIBRARY command to find libraries. Unless specifically told otherwise, that command uses the environment variable CMAKE_LIBRARY_PATH before system paths for searches, see the full documentation of FIND_LIBRARY at http://www.cmake.org/HTML/Documentation.html. Good luck with your further tests once you get access to your Mac system. Alan __________________________ Alan W. Irwin Astronomical research affiliation with Department of Physics and Astronomy, University of Victoria (astrowww.phys.uvic.ca). Programming affiliations with the FreeEOS equation-of-state implementation for stellar interiors (freeeos.sf.net); PLplot scientific plotting software package (plplot.org); the libLASi project (unifont.org/lasi); the Loads of Linux Links project (loll.sf.net); and the Linux Brochure Project (lbproject.sf.net). __________________________ Linux-powered Science __________________________ |