Re: [osg-users] Mac bundle distribution can't use plugin

2009-11-25 Thread Stephan Maximilian Huber
Hi Filip,

there's one major difference between your otool output and the otool
output of my packaged app:

>
[fi...@mpq]:[~/Documents/Code/OSGTests/Build/_CPack_Packages/Darwin/DragNDrop/BasicApp-1.0.0-Darwin/BasicApp.app/Contents/MacOS]$
> otool -L libOpenThreads.11.dylib
> libOpenThreads.11.dylib:
> @loader_path/libOpenThreads.11.dylib (compatibility version

in my version, there's only
> libOpenThreads.11.dylib (compatibility version

for every used lib. Not sure if this makes a difference.

Check your logfiles (open Console.app), there should be a more
descriptive errormessage from the dynamic linker.

cheers,
Stephan


Filip Wänström schrieb:
> I Haven't fixed my issues yet so here comes some more info. This is
> what I get when listing dependencies using otool. I have massaged the
> libs extensivly using install_name_tool...
> 
> [fi...@mpq]:[~/Documents/Code/OSGTests/Build/_CPack_Packages/Darwin/DragNDrop/BasicApp-1.0.0-Darwin/BasicApp.app/Contents/MacOS]$
> otool -L BasicApp
> BasicApp:
> @loader_path/libosgDB.61.dylib (compatibility version 61.0.0,
> current version 2.9.6)
> @loader_path/libosgUtil.61.dylib (compatibility version
> 61.0.0, current version 2.9.6)
> @loader_path/libosgGA.61.dylib (compatibility version 61.0.0,
> current version 2.9.6)
> @loader_path/libosgText.61.dylib (compatibility version
> 61.0.0, current version 2.9.6)
> @loader_path/libosgViewer.61.dylib (compatibility version
> 61.0.0, current version 2.9.6)
> @loader_path/libosg.61.dylib (compatibility version 61.0.0,
> current version 2.9.6)
> @loader_path/libOpenThreads.11.dylib (compatibility version
> 11.0.0, current version 2.4.0)
> /usr/lib/libstdc++.6.dylib (compatibility version 7.0.0,
> current version 7.9.0)
> /usr/lib/libSystem.B.dylib (compatibility version 1.0.0,
> current version 123.0.0)
> [fi...@mpq]:[~/Documents/Code/OSGTests/Build/_CPack_Packages/Darwin/DragNDrop/BasicApp-1.0.0-Darwin/BasicApp.app/Contents/MacOS]$
> otool -L libOpenThreads.11.dylib
> libOpenThreads.11.dylib:
> @loader_path/libOpenThreads.11.dylib (compatibility version
> 11.0.0, current version 2.4.0)
> /usr/lib/libSystem.B.dylib (compatibility version 1.0.0,
> current version 111.1.4)
> /usr/lib/libstdc++.6.dylib (compatibility version 7.0.0,
> current version 7.4.0)
> /usr/lib/libgcc_s.1.dylib (compatibility version 1.0.0,
> current version 1.0.0)
> [fi...@mpq]:[~/Documents/Code/OSGTests/
> Build/_CPack_Packages/Darwin/DragNDrop/BasicApp-1.0.0-Darwin/BasicApp.app/Contents/MacOS]$
> otool -L ../PlugIns/osgPlugins-2.9.6/osgdb_obj.so
> ../PlugIns/osgPlugins-2.9.6/osgdb_obj.so:
> @loader_path/libOpenThreads.11.dylib (compatibility version
> 11.0.0, current version 2.4.0)
> @loader_path/libosg.61.dylib (compatibility version 61.0.0,
> current version 2.9.6)
> @loader_path/libosgDB.61.dylib (compatibility version 61.0.0,
> current version 2.9.6)
> @loader_path/libosgUtil.61.dylib (compatibility version
> 61.0.0, current version 2.9.6)
> /System/Library/Frameworks/Carbon.framework/Versions/A/Carbon
> (compatibility version 2.0.0, current version 136.0.0)
> /usr/lib/libSystem.B.dylib (compatibility version 1.0.0,
> current version 111.1.4)
> /System/Library/Frameworks/AGL.framework/Versions/A/AGL
> (compatibility version 1.0.0, current version 1.0.0)
> /System/Library/Frameworks/OpenGL.framework/Versions/A/OpenGL
> (compatibility version 1.0.0, current version 1.0.0)
> /usr/lib/libstdc++.6.dylib (compatibility version 7.0.0,
> current version 7.4.0)
> /usr/lib/libgcc_s.1.dylib (compatibility version 1.0.0,
> current version 1.0.0)
> 
> 
> And the output from the failing loading of the plugin is a before (in
> first post). Any ideas ?
> /F
> 
> 
> 
> On Mon, Nov 23, 2009 at 9:52 AM, Filip Wänström
>  wrote:
>> Hi, thanks for the answer but I am using CMake/regular makefiles to do
>> all my building and using the "OSX Ingest into bundle" script that
>> comes with osg. I just presumed it did all magic but maybe I should
>> check out the actual paths in the libs. I'll be back with a report.
>> /Filip
>>
>> On Fri, Nov 20, 2009 at 6:21 PM, Stephan Maximilian Huber
>>  wrote:
>>> Hi Filip,
>>>
>>> check your system.log-file -- I am pretty sure the osgdb_obj pluging
>>> refers to the osg-dylibs in /usr/lib or similar.
>>>
>>> You'll have to massage the paths to the libs stored in the plugin via
>>> install_name_tool in a post-build-step.
>>>
>>> Paths to libs are hardcoded in the object-file when linked. You can
>>> change them to something better suited like @loader_path.../pipapo. Try
>>> googling for install_name_tool and @loader_path to get an idea.
>>>
>>> If you are using the deprecated XCode-project and embed the osg
>>> frameworks into your app and the obj-plugin into plugins it should work
>>> out of the box whithout fiddling around with install_n

Re: [osg-users] Mac bundle distribution can't use plugin

2009-11-25 Thread Filip Wänström
And finally, I have a founf the fix. These are happy times!

The plugin loader_path should be pointing to the libs from the path of
the plugin. This means that the otool listing should be:
$otool -L osgdb_obj.so
osgdb_obj.so:
@loader_path/../../MacOS/libOpenThreads.11.dylib
(compatibility version 11.0.0, current version 2.4.0)
@loader_path/../../MacOS/libosg.61.dylib (compatibility
version 61.0.0, current version 2.9.6)
@loader_path/../../MacOS/libosgDB.61.dylib (compatibility
version 61.0.0, current version 2.9.6)
@loader_path/../../MacOS/libosgUtil.61.dylib (compatibility
version 61.0.0, current version 2.9.6)
/System/Library/Frameworks/Carbon.framework/Versions/A/Carbon
(compatibility version 2.0.0, current version 136.0.0)
/usr/lib/libSystem.B.dylib (compatibility version 1.0.0,
current version 111.1.4)
/System/Library/Frameworks/AGL.framework/Versions/A/AGL
(compatibility version 1.0.0, current version 1.0.0)
/System/Library/Frameworks/OpenGL.framework/Versions/A/OpenGL
(compatibility version 1.0.0, current version 1.0.0)
/usr/lib/libstdc++.6.dylib (compatibility version 7.0.0,
current version 7.4.0)
/usr/lib/libgcc_s.1.dylib (compatibility version 1.0.0,
current version 1.0.0)

And then it all works. I will make an example of this so that others
don't have to spend weeks to support mac deployment!
/Filip



On Wed, Nov 25, 2009 at 10:46 AM, Filip Wänström
 wrote:
> I Haven't fixed my issues yet so here comes some more info. This is
> what I get when listing dependencies using otool. I have massaged the
> libs extensivly using install_name_tool...
>
> [fi...@mpq]:[~/Documents/Code/OSGTests/Build/_CPack_Packages/Darwin/DragNDrop/BasicApp-1.0.0-Darwin/BasicApp.app/Contents/MacOS]$
> otool -L BasicApp
> BasicApp:
>       �...@loader_path/libosgDB.61.dylib (compatibility version 61.0.0,
> current version 2.9.6)
>       �...@loader_path/libosgUtil.61.dylib (compatibility version
> 61.0.0, current version 2.9.6)
>       �...@loader_path/libosgGA.61.dylib (compatibility version 61.0.0,
> current version 2.9.6)
>       �...@loader_path/libosgText.61.dylib (compatibility version
> 61.0.0, current version 2.9.6)
>       �...@loader_path/libosgViewer.61.dylib (compatibility version
> 61.0.0, current version 2.9.6)
>       �...@loader_path/libosg.61.dylib (compatibility version 61.0.0,
> current version 2.9.6)
>       �...@loader_path/libOpenThreads.11.dylib (compatibility version
> 11.0.0, current version 2.4.0)
>        /usr/lib/libstdc++.6.dylib (compatibility version 7.0.0,
> current version 7.9.0)
>        /usr/lib/libSystem.B.dylib (compatibility version 1.0.0,
> current version 123.0.0)
> [fi...@mpq]:[~/Documents/Code/OSGTests/Build/_CPack_Packages/Darwin/DragNDrop/BasicApp-1.0.0-Darwin/BasicApp.app/Contents/MacOS]$
> otool -L libOpenThreads.11.dylib
> libOpenThreads.11.dylib:
>       �...@loader_path/libOpenThreads.11.dylib (compatibility version
> 11.0.0, current version 2.4.0)
>        /usr/lib/libSystem.B.dylib (compatibility version 1.0.0,
> current version 111.1.4)
>        /usr/lib/libstdc++.6.dylib (compatibility version 7.0.0,
> current version 7.4.0)
>        /usr/lib/libgcc_s.1.dylib (compatibility version 1.0.0,
> current version 1.0.0)
> [fi...@mpq]:[~/Documents/Code/OSGTests/
> Build/_CPack_Packages/Darwin/DragNDrop/BasicApp-1.0.0-Darwin/BasicApp.app/Contents/MacOS]$
> otool -L ../PlugIns/osgPlugins-2.9.6/osgdb_obj.so
> ../PlugIns/osgPlugins-2.9.6/osgdb_obj.so:
>       �...@loader_path/libOpenThreads.11.dylib (compatibility version
> 11.0.0, current version 2.4.0)
>       �...@loader_path/libosg.61.dylib (compatibility version 61.0.0,
> current version 2.9.6)
>       �...@loader_path/libosgDB.61.dylib (compatibility version 61.0.0,
> current version 2.9.6)
>       �...@loader_path/libosgUtil.61.dylib (compatibility version
> 61.0.0, current version 2.9.6)
>        /System/Library/Frameworks/Carbon.framework/Versions/A/Carbon
> (compatibility version 2.0.0, current version 136.0.0)
>        /usr/lib/libSystem.B.dylib (compatibility version 1.0.0,
> current version 111.1.4)
>        /System/Library/Frameworks/AGL.framework/Versions/A/AGL
> (compatibility version 1.0.0, current version 1.0.0)
>        /System/Library/Frameworks/OpenGL.framework/Versions/A/OpenGL
> (compatibility version 1.0.0, current version 1.0.0)
>        /usr/lib/libstdc++.6.dylib (compatibility version 7.0.0,
> current version 7.4.0)
>        /usr/lib/libgcc_s.1.dylib (compatibility version 1.0.0,
> current version 1.0.0)
>
>
> And the output from the failing loading of the plugin is a before (in
> first post). Any ideas ?
> /F
>
>
>
> On Mon, Nov 23, 2009 at 9:52 AM, Filip Wänström
>  wrote:
>> Hi, thanks for the answer but I am using CMake/regular makefiles to do
>> all my building and using the "OSX Ingest into bundle" script that
>> comes with osg. I just presumed it did all magic but maybe I should
>> check out the actual paths in the libs.

Re: [osg-users] Mac bundle distribution can't use plugin

2009-11-25 Thread Filip Wänström
I Haven't fixed my issues yet so here comes some more info. This is
what I get when listing dependencies using otool. I have massaged the
libs extensivly using install_name_tool...

[fi...@mpq]:[~/Documents/Code/OSGTests/Build/_CPack_Packages/Darwin/DragNDrop/BasicApp-1.0.0-Darwin/BasicApp.app/Contents/MacOS]$
otool -L BasicApp
BasicApp:
@loader_path/libosgDB.61.dylib (compatibility version 61.0.0,
current version 2.9.6)
@loader_path/libosgUtil.61.dylib (compatibility version
61.0.0, current version 2.9.6)
@loader_path/libosgGA.61.dylib (compatibility version 61.0.0,
current version 2.9.6)
@loader_path/libosgText.61.dylib (compatibility version
61.0.0, current version 2.9.6)
@loader_path/libosgViewer.61.dylib (compatibility version
61.0.0, current version 2.9.6)
@loader_path/libosg.61.dylib (compatibility version 61.0.0,
current version 2.9.6)
@loader_path/libOpenThreads.11.dylib (compatibility version
11.0.0, current version 2.4.0)
/usr/lib/libstdc++.6.dylib (compatibility version 7.0.0,
current version 7.9.0)
/usr/lib/libSystem.B.dylib (compatibility version 1.0.0,
current version 123.0.0)
[fi...@mpq]:[~/Documents/Code/OSGTests/Build/_CPack_Packages/Darwin/DragNDrop/BasicApp-1.0.0-Darwin/BasicApp.app/Contents/MacOS]$
otool -L libOpenThreads.11.dylib
libOpenThreads.11.dylib:
@loader_path/libOpenThreads.11.dylib (compatibility version
11.0.0, current version 2.4.0)
/usr/lib/libSystem.B.dylib (compatibility version 1.0.0,
current version 111.1.4)
/usr/lib/libstdc++.6.dylib (compatibility version 7.0.0,
current version 7.4.0)
/usr/lib/libgcc_s.1.dylib (compatibility version 1.0.0,
current version 1.0.0)
[fi...@mpq]:[~/Documents/Code/OSGTests/
Build/_CPack_Packages/Darwin/DragNDrop/BasicApp-1.0.0-Darwin/BasicApp.app/Contents/MacOS]$
otool -L ../PlugIns/osgPlugins-2.9.6/osgdb_obj.so
../PlugIns/osgPlugins-2.9.6/osgdb_obj.so:
@loader_path/libOpenThreads.11.dylib (compatibility version
11.0.0, current version 2.4.0)
@loader_path/libosg.61.dylib (compatibility version 61.0.0,
current version 2.9.6)
@loader_path/libosgDB.61.dylib (compatibility version 61.0.0,
current version 2.9.6)
@loader_path/libosgUtil.61.dylib (compatibility version
61.0.0, current version 2.9.6)
/System/Library/Frameworks/Carbon.framework/Versions/A/Carbon
(compatibility version 2.0.0, current version 136.0.0)
/usr/lib/libSystem.B.dylib (compatibility version 1.0.0,
current version 111.1.4)
/System/Library/Frameworks/AGL.framework/Versions/A/AGL
(compatibility version 1.0.0, current version 1.0.0)
/System/Library/Frameworks/OpenGL.framework/Versions/A/OpenGL
(compatibility version 1.0.0, current version 1.0.0)
/usr/lib/libstdc++.6.dylib (compatibility version 7.0.0,
current version 7.4.0)
/usr/lib/libgcc_s.1.dylib (compatibility version 1.0.0,
current version 1.0.0)


And the output from the failing loading of the plugin is a before (in
first post). Any ideas ?
/F



On Mon, Nov 23, 2009 at 9:52 AM, Filip Wänström
 wrote:
> Hi, thanks for the answer but I am using CMake/regular makefiles to do
> all my building and using the "OSX Ingest into bundle" script that
> comes with osg. I just presumed it did all magic but maybe I should
> check out the actual paths in the libs. I'll be back with a report.
> /Filip
>
> On Fri, Nov 20, 2009 at 6:21 PM, Stephan Maximilian Huber
>  wrote:
>> Hi Filip,
>>
>> check your system.log-file -- I am pretty sure the osgdb_obj pluging
>> refers to the osg-dylibs in /usr/lib or similar.
>>
>> You'll have to massage the paths to the libs stored in the plugin via
>> install_name_tool in a post-build-step.
>>
>> Paths to libs are hardcoded in the object-file when linked. You can
>> change them to something better suited like @loader_path.../pipapo. Try
>> googling for install_name_tool and @loader_path to get an idea.
>>
>> If you are using the deprecated XCode-project and embed the osg
>> frameworks into your app and the obj-plugin into plugins it should work
>> out of the box whithout fiddling around with install_name_tool.
>>
>> cheers,
>> Stephan
>>
>>
>>
>> Filip Wänström schrieb:
>>> Hi,
>>>
>>> I have problems with distributing self-contained applications on the
>>> mac. I have reduced my issues by building a very simple example that
>>> basically only opens a window and loads an .obj file.
>>>
>>> Using OSG_NOTIFY_LEVEL=INFO (DEBUG is the same + a lot more, but
>>> unrelated) I get the following output:
>>>
>>> [fi...@mpq]:[~/Documents/Code/OSGTests/]$
>>> ./_CPack_Packages/Darwin/DragNDrop/BasicApp-1.0.0-Darwin/BasicApp.app/Contents/MacOS/BasicApp
>>> GraphicsContext::setWindowingSystemInterface() 0xc0e930 0xa13c50
>>> Initiating 
>>> Constructing BasicApp 1
>>> Listing plugins
>>> plugin: 
>>> /Users/filip/Documents/Code/OSGTests/_CPack_Packages/Darwin/DragNDrop/BasicApp-1.0.0-Darwin/BasicApp.app/Contents/PlugIns/osgPlugin

Re: [osg-users] Mac bundle distribution can't use plugin

2009-11-23 Thread Filip Wänström
Hi, thanks for the answer but I am using CMake/regular makefiles to do
all my building and using the "OSX Ingest into bundle" script that
comes with osg. I just presumed it did all magic but maybe I should
check out the actual paths in the libs. I'll be back with a report.
/Filip

On Fri, Nov 20, 2009 at 6:21 PM, Stephan Maximilian Huber
 wrote:
> Hi Filip,
>
> check your system.log-file -- I am pretty sure the osgdb_obj pluging
> refers to the osg-dylibs in /usr/lib or similar.
>
> You'll have to massage the paths to the libs stored in the plugin via
> install_name_tool in a post-build-step.
>
> Paths to libs are hardcoded in the object-file when linked. You can
> change them to something better suited like @loader_path.../pipapo. Try
> googling for install_name_tool and @loader_path to get an idea.
>
> If you are using the deprecated XCode-project and embed the osg
> frameworks into your app and the obj-plugin into plugins it should work
> out of the box whithout fiddling around with install_name_tool.
>
> cheers,
> Stephan
>
>
>
> Filip Wänström schrieb:
>> Hi,
>>
>> I have problems with distributing self-contained applications on the
>> mac. I have reduced my issues by building a very simple example that
>> basically only opens a window and loads an .obj file.
>>
>> Using OSG_NOTIFY_LEVEL=INFO (DEBUG is the same + a lot more, but
>> unrelated) I get the following output:
>>
>> [fi...@mpq]:[~/Documents/Code/OSGTests/]$
>> ./_CPack_Packages/Darwin/DragNDrop/BasicApp-1.0.0-Darwin/BasicApp.app/Contents/MacOS/BasicApp
>> GraphicsContext::setWindowingSystemInterface() 0xc0e930 0xa13c50
>> Initiating 
>> Constructing BasicApp 1
>> Listing plugins
>> plugin: 
>> /Users/filip/Documents/Code/OSGTests/_CPack_Packages/Darwin/DragNDrop/BasicApp-1.0.0-Darwin/BasicApp.app/Contents/PlugIns/osgPlugins-2.9.6/osgdb_obj.so
>> Found file: "data/models/clogo.obj"
>> Opened DynamicLibrary osgPlugins-2.9.6/osgdb_obj.so
>> Warning: Could not find plugin to read objects from file
>> "data/models/clogo.obj".
>> Failed to load model
>>
>> This seems self contradictory to me...
>>
>> So as far as I can tell:
>> 1) the bundled osglibs are found correctly and the app starts
>> 2) the file in the Resources directory in the app bundle is found correctly
>> 3) the right plugin is chosen and found in the app bundle
>> PlugIns/osgPlugins-2.9.6 directory
>> 4) The lib is opened ok
>> 5) it fails
>>
>> All .dylibs/.so are copied from my /usr/local/ osg install into the app 
>> bundle
>>
>> I tried to see if there were some hidden depencies on osgdb_obj.so
>> using otool but as far as I could tell there were no extra Non-system
>> dependencies
>>
>> I'm at a loss here and tearing my nonexistent hair. Any help would be
>> greatly appreciated.
>>
>> Best
>> /Filip
>> ___
>> osg-users mailing list
>> osg-users@lists.openscenegraph.org
>> http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
>
> ___
> osg-users mailing list
> osg-users@lists.openscenegraph.org
> http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
>
___
osg-users mailing list
osg-users@lists.openscenegraph.org
http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org


Re: [osg-users] Mac bundle distribution can't use plugin

2009-11-20 Thread Stephan Maximilian Huber
Hi Filip,

check your system.log-file -- I am pretty sure the osgdb_obj pluging
refers to the osg-dylibs in /usr/lib or similar.

You'll have to massage the paths to the libs stored in the plugin via
install_name_tool in a post-build-step.

Paths to libs are hardcoded in the object-file when linked. You can
change them to something better suited like @loader_path.../pipapo. Try
googling for install_name_tool and @loader_path to get an idea.

If you are using the deprecated XCode-project and embed the osg
frameworks into your app and the obj-plugin into plugins it should work
out of the box whithout fiddling around with install_name_tool.

cheers,
Stephan



Filip Wänström schrieb:
> Hi,
> 
> I have problems with distributing self-contained applications on the
> mac. I have reduced my issues by building a very simple example that
> basically only opens a window and loads an .obj file.
> 
> Using OSG_NOTIFY_LEVEL=INFO (DEBUG is the same + a lot more, but
> unrelated) I get the following output:
> 
> [fi...@mpq]:[~/Documents/Code/OSGTests/]$
> ./_CPack_Packages/Darwin/DragNDrop/BasicApp-1.0.0-Darwin/BasicApp.app/Contents/MacOS/BasicApp
> GraphicsContext::setWindowingSystemInterface() 0xc0e930 0xa13c50
> Initiating 
> Constructing BasicApp 1
> Listing plugins
> plugin: 
> /Users/filip/Documents/Code/OSGTests/_CPack_Packages/Darwin/DragNDrop/BasicApp-1.0.0-Darwin/BasicApp.app/Contents/PlugIns/osgPlugins-2.9.6/osgdb_obj.so
> Found file: "data/models/clogo.obj"
> Opened DynamicLibrary osgPlugins-2.9.6/osgdb_obj.so
> Warning: Could not find plugin to read objects from file
> "data/models/clogo.obj".
> Failed to load model
> 
> This seems self contradictory to me...
> 
> So as far as I can tell:
> 1) the bundled osglibs are found correctly and the app starts
> 2) the file in the Resources directory in the app bundle is found correctly
> 3) the right plugin is chosen and found in the app bundle
> PlugIns/osgPlugins-2.9.6 directory
> 4) The lib is opened ok
> 5) it fails
> 
> All .dylibs/.so are copied from my /usr/local/ osg install into the app bundle
> 
> I tried to see if there were some hidden depencies on osgdb_obj.so
> using otool but as far as I could tell there were no extra Non-system
> dependencies
> 
> I'm at a loss here and tearing my nonexistent hair. Any help would be
> greatly appreciated.
> 
> Best
> /Filip
> ___
> osg-users mailing list
> osg-users@lists.openscenegraph.org
> http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org

___
osg-users mailing list
osg-users@lists.openscenegraph.org
http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org