|
FMOD SoundSystem
|
|
View previous topic :: View next topic
|
|
Author |
Message |
sidegame
Newbie
Joined: 26 Jul 2007
Posts: 9
Location: University of Tasmania, Australia
|
Posted: Thu Jul 26, 2007 5:47
pm Post subject: SOLVED:
[OSX / XCode] Dylib search problem.
|
|
|
Greetings,
Using the search feature on this forum didn't yeild any obvious
answers, but I will happily stand corrected as a generally
oblivious person.
Using the FMOD 4.06.22, a project group of which I am a part has
had difficulty including the .dylib's into XCode.
They can be placed in the project fine, and the project builds
fine, but upon attempting to run it, we get the following
error:
dyld: Library not loaded: /usr/local/lib/*.dylib
Referenced from: /Users/...etc. etc... /<application
executablename>
Reason: image not found
Where *.dylib is whichever of the dylibs it first decides to
encounter.
Upon running 'otool -L' on the executable, we noticed that despite
adding all the dylibs to the project, the references all pointed to
/usr/local/lib/. Upon running 'otool -L' on any of the dylibs, we
discovered that these were also all pointing to
/usr/local/lib/.
There exists a somewhat useful tool to change the location of
dylibs for binary files, but not that I can find for existing
dylibs. As such our inconvenient 'work around' is to run a script
at the end of every build that does the following on all the fmod
dylibs:
install_name_tool -change /usr/local/lib/libfmodex.dylib
@executable_path/../Frameworks/libfmodex.dylib <name of
executable>
This is incredibly inconvenient, and at present I'm trying to find
a better solution, ideally changing the dylibs own statically
stored path to themselves to be something more useful (if that is
in fact what is the root of the problem). I opened the XCode
examples, to find they compiled and ran... from XCode. Trying to
run example app outside of XCode resulted in the same error. I then
attempted the Makefile also provided with all the examples, but
only to be faced with the same problem. It is however from the
makefile that I devised the temporary solution using
install_name_tool script. It may be worth considering that the use
of install_name_tool in the makefile didn't actually run, as for
instance with the 'effects', it has the following line:
install_name_tool -change libfmodex.dylib
@executable_path/libfmodex.dylib effects
But when doing an 'otool -L' on the executable 'effects' both
before and afterwards I get the same output, ie:
/usr/local/lib/libfmodex.dylib (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)
/usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current
version 88.3.9)
Modifying the install_name_tool command to the following:
install_name_tool -change /usr/local/lib/libfmodex.dylib
@executable_path/libfmodex.dylib effects
results in 'otool -L effects' updating to:
@executable_path/libfmodex.dylib (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)
/usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current
version 88.3.9)
Which I believe is the desired output.
I would easily believe this to be an OSX only problem, but
nevertheless it has been causing me a rather big headache so far,
and I'm open to any suggestion or assistance (not to mention a hint
as to why XCode can build+run fine, but if you try and run the
executable outside of XCode it fails with the same original
error).
Note - This is on an intel OSX machine, running 10.4.10, and has
only been tested (and confirmed to have the same issue) on other
10.4.10 machines (intel and PPC).
Also note - That copying all the dylibs to /usr/local/lib resolves
the problem, but is not feasible as access to all our machines for
work have different privelages (and thus some we cannot copy to
/usr/local/lib), and a release would need to be self
contained.
Apologies for the first post being a long one, but I'm trying to
get as much info as I think might help lead to a solution of this
problem.
Last edited by sidegame on Sat Jul 28, 2007 2:50 pm; edited 1 time
in total
|
|
|
Back to top
|
|
|
sidegame
Newbie
Joined: 26 Jul 2007
Posts: 9
Location: University of Tasmania, Australia
|
Posted: Fri Jul 27, 2007 4:03
pm Post
subject:
|
|
|
Ok, after a bit more
investigation, it appears the PPC version of the dylibs, when
running otool -L on them returns:
libfmodex.dylib:
libfmodex.dylib
(compatibility version 0.0.0, current version 0.0.0)
/System/Library/Frameworks/CoreAudio.framework/Versions/A/CoreAudio
(compatibility version 1.0.0, current version 1.0.0)
/System/Library/Frameworks/AudioUnit.framework/Versions/A/AudioUnit
(compatibility version 1.0.0, current version 1.0.0)
/System/Library/Frameworks/Carbon.framework/Versions/A/Carbon
(compatibility version 2.0.0, current version 128.0.0)
/usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current
version 88.1.
Whereas the Intel version, using the same command returns:
libfmodex.dylib:
/usr/local/lib/libfmodex.dylib
(compatibility version 1.0.0, current version 1.0.0)
/System/Library/Frameworks/AudioUnit.framework/Versions/A/AudioUnit
(compatibility version 1.0.0, current version 1.0.0)
/System/Library/Frameworks/Carbon.framework/Versions/A/Carbon
(compatibility version 2.0.0, current version 128.0.0)
/System/Library/Frameworks/CoreAudio.framework/Versions/A/CoreAudio
(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)
/usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current
version 88.3.3)
Running 'otool -R' on the two returns the following:
(PPC)
libfmodex.dylib:
libfmodex.dylib
(Intel)
libfmodex.dylib:
/usr/local/lib/libfmodex.dylib
If someone can direct me to a method of changing the install paths
of dylibs (as install_name_tool does not seem to change the install
paths of dylibs, only executables as far as I can tell), I'd
appreciate it. Also if this problem is not unique to myself, it may
be worth considering this a potential fix for the next
release.
|
|
|
Back to top
|
|
|
sidegame
Newbie
Joined: 26 Jul 2007
Posts: 9
Location: University of Tasmania, Australia
|
Posted: Fri Jul 27, 2007 4:33
pm Post
subject:
|
|
|
Ok.
I just did the same otool -L on the development build (4.07.19) and
got the following results:
(PPC)
libfmodex.dylib:
libfmodex.dylib
(compatibility version 0.0.0, current version 0.0.0)
/System/Library/Frameworks/CoreAudio.framework/Versions/A/CoreAudio
(compatibility version 1.0.0, current version 1.0.0)
/System/Library/Frameworks/Carbon.framework/Versions/A/Carbon
(compatibility version 2.0.0, current version 128.0.0)
/System/Library/Frameworks/AudioUnit.framework/Versions/A/AudioUnit
(compatibility version 1.0.0, current version 1.0.0)
/usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current
version 88.1.
(Intel)
libfmodex.dylib:
/Users/Mathew/Desktop/sound/fmod4/mac/build/Release/libfmodex.dylib
(compatibility version 1.0.0, current version 1.0.0)
/System/Library/Frameworks/Carbon.framework/Versions/A/Carbon
(compatibility version 2.0.0, current version 128.0.0)
/System/Library/Frameworks/CoreAudio.framework/Versions/A/CoreAudio
(compatibility version 1.0.0, current version 1.0.0)
/System/Library/Frameworks/AudioUnit.framework/Versions/A/AudioUnit
(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)
/usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current
version 88.3.3)
I would like to make a request that when Mathew (guessing that is
OSX Intel developer for FMOD) has a few spare moments that he
modify the install path of the library to be consistent with the
PPC versions. I apologise if listing the paths above is an
unintended invasion of privacy, but they are publically available,
and should the problem be solved feel free to remove the reference
to the absolute path on your system where FMOD is being
built.
|
|
|
Back to top
|
|
|
sidegame
Newbie
Joined: 26 Jul 2007
Posts: 9
Location: University of Tasmania, Australia
|
Posted: Fri Jul 27, 2007 5:01
pm Post
subject:
|
|
|
Sorry to keep replying
rather than modifying the above post, however this is not an edit
of what I said before but rather something new:
Running 'otool -L' on all the dylibs (w/ 'head -n 2' for each of
them), has shown some interesting results (as shown below).
Could I make the request that possibly the OSX builds be available
as universal binaries (quite easy using the lipo command), and then
possibly put together in a Framework?
|
|
|
Back to top
|
|
|
sidegame
Newbie
Joined: 26 Jul 2007
Posts: 9
Location: University of Tasmania, Australia
|
Posted: Fri Jul 27, 2007 5:01
pm Post subject: i386
(40622)
|
|
|
|
Code:
|
libfmodex.dylib
/usr/local/lib/libfmodex.dylib (compatibility version
1.0.0, current version 1.0.0)
libfmodexp.dylib
/usr/local/lib/libfmodexp.dylib (compatibility version
1.0.0, current version 1.0.0)
codec_aiff.dylib
/usr/local/lib/codec_aiff.dylib (compatibility version
1.0.0, current version 1.0.0)
codec_cdda.dylib
/usr/local/lib/codec_cdda.dylib (compatibility version
1.0.0, current version 1.0.0)
codec_dls.dylib
/usr/local/lib/codec_dls.dylib (compatibility version
1.0.0, current version 1.0.0)
codec_flac.dylib
/usr/local/lib/codec_flac.dylib (compatibility version
1.0.0, current version 1.0.0)
codec_fsb.dylib
/usr/local/lib/codec_fsb.dylib (compatibility version
1.0.0, current version 1.0.0)
codec_it.dylib
/usr/local/lib/codec_it.dylib (compatibility version
1.0.0, current version 1.0.0)
codec_midi.dylib
/usr/local/lib/codec_midi.dylib (compatibility version
1.0.0, current version 1.0.0)
codec_mod.dylib
/usr/local/lib/codec_mod.dylib (compatibility version
1.0.0, current version 1.0.0)
codec_mpeg.dylib
/usr/local/lib/codec_mpeg.dylib (compatibility version
1.0.0, current version 1.0.0)
codec_oggvorbis.dylib
/usr/local/lib/codec_oggvorbis.dylib (compatibility
version 1.0.0, current version 1.0.0)
codec_playlist.dylib
/usr/local/lib/codec_playlist.dylib (compatibility
version 1.0.0, current version 1.0.0)
codec_raw.dylib
/usr/local/lib/codec_raw.dylib (compatibility version
1.0.0, current version 1.0.0)
codec_s3m.dylib
/usr/local/lib/codec_s3m.dylib (compatibility version
1.0.0, current version 1.0.0)
codec_sf2.dylib
/usr/local/lib/codec_sf2.dylib (compatibility version
1.0.0, current version 1.0.0)
codec_tag.dylib
/usr/local/lib/codec_tag.dylib (compatibility version
1.0.0, current version 1.0.0)
codec_wav.dylib
/usr/local/lib/codec_wav.dylib (compatibility version
1.0.0, current version 1.0.0)
codec_xm.dylib
/usr/local/lib/codec_xm.dylib (compatibility version
1.0.0, current version 1.0.0)
dsp_chorus.dylib
/usr/local/lib/dsp_chorus.dylib (compatibility version
1.0.0, current version 1.0.0)
dsp_distortion.dylib
/usr/local/lib/dsp_distortion.dylib (compatibility
version 1.0.0, current version 1.0.0)
dsp_echo.dylib
/usr/local/lib/dsp_echo.dylib (compatibility version
1.0.0, current version 1.0.0)
dsp_flange.dylib
/usr/local/lib/dsp_flange.dylib (compatibility version
1.0.0, current version 1.0.0)
dsp_highpass.dylib
/usr/local/lib/dsp_highpass.dylib (compatibility
version 1.0.0, current version 1.0.0)
dsp_itecho.dylib
/usr/local/lib/dsp_itecho.dylib (compatibility version
1.0.0, current version 1.0.0)
dsp_lowpass.dylib
/usr/local/lib/dsp_lowpass.dylib (compatibility
version 1.0.0, current version 1.0.0)
dsp_lowpass2.dylib
/usr/local/lib/dsp_lowpass2.dylib (compatibility
version 1.0.0, current version 1.0.0)
dsp_normalize.dylib
/usr/local/lib/dsp_normalize.dylib (compatibility
version 1.0.0, current version 1.0.0)
dsp_oscillator.dylib
/usr/local/lib/dsp_oscillator.dylib (compatibility
version 1.0.0, current version 1.0.0)
dsp_parameq.dylib
/usr/local/lib/dsp_parameq.dylib (compatibility
version 1.0.0, current version 1.0.0)
dsp_pitchshift.dylib
/usr/local/lib/dsp_pitchshift.dylib (compatibility
version 1.0.0, current version 1.0.0)
dsp_reverb.dylib
/usr/local/lib/dsp_reverb.dylib (compatibility version
1.0.0, current version 1.0.0)
output_coreaudio.dylib
/usr/local/lib/output_coreaudio.dylib (compatibility
version 1.0.0, current version 1.0.0)
output_nosound_nrt.dylib
/usr/local/lib/output_nosound_nrt.dylib (compatibility
version 1.0.0, current version 1.0.0)
output_nosound.dylib
/usr/local/lib/output_nosound.dylib (compatibility
version 1.0.0, current version 1.0.0)
output_soundmanager.dylib
/usr/local/lib/output_soundmanager.dylib
(compatibility version 1.0.0, current version 1.0.0)
output_wavwriter_nrt.dylib
/usr/local/lib/output_wavwriter_nrt.dylib
(compatibility version 1.0.0, current version 1.0.0)
output_wavwriter.dylib
/usr/local/lib/output_wavwriter.dylib (compatibility
version 1.0.0, current version 1.0.0) |
|
|
|
Back to top
|
|
|
sidegame
Newbie
Joined: 26 Jul 2007
Posts: 9
Location: University of Tasmania, Australia
|
Posted: Fri Jul 27, 2007 5:02
pm Post subject: PPC
(40622)
|
|
|
|
Code:
|
libfmodex.dylib
libfmodex.dylib (compatibility version 0.0.0, current
version 0.0.0)
libfmodexp.dylib
libfmodexp.dylib (compatibility version 0.0.0, current
version 0.0.0)
codec_aiff.dylib
version/api/plugins/codec_aiff.dylib (compatibility
version 0.0.0, current version 0.0.0)
codec_cdda.dylib
version/api/plugins/codec_cdda.dylib (compatibility
version 0.0.0, current version 0.0.0)
codec_dls.dylib
version/api/plugins/codec_dls.dylib (compatibility
version 0.0.0, current version 0.0.0)
codec_flac.dylib
version/api/plugins/codec_flac.dylib (compatibility
version 0.0.0, current version 0.0.0)
codec_fsb.dylib
version/api/plugins/codec_fsb.dylib (compatibility
version 0.0.0, current version 0.0.0)
codec_it.dylib
version/api/plugins/codec_it.dylib (compatibility
version 0.0.0, current version 0.0.0)
codec_midi.dylib
version/api/plugins/codec_midi.dylib (compatibility
version 0.0.0, current version 0.0.0)
codec_mod.dylib
version/api/plugins/codec_mod.dylib (compatibility
version 0.0.0, current version 0.0.0)
codec_mpeg.dylib
version/api/plugins/codec_mpeg.dylib (compatibility
version 0.0.0, current version 0.0.0)
codec_oggvorbis.dylib
version/api/plugins/codec_oggvorbis.dylib
(compatibility version 0.0.0, current version 0.0.0)
codec_playlist.dylib
version/api/plugins/codec_playlist.dylib
(compatibility version 0.0.0, current version 0.0.0)
codec_raw.dylib
version/api/plugins/codec_raw.dylib (compatibility
version 0.0.0, current version 0.0.0)
codec_s3m.dylib
version/api/plugins/codec_s3m.dylib (compatibility
version 0.0.0, current version 0.0.0)
codec_sf2.dylib
version/api/plugins/codec_sf2.dylib (compatibility
version 0.0.0, current version 0.0.0)
codec_tag.dylib
version/api/plugins/codec_tag.dylib (compatibility
version 0.0.0, current version 0.0.0)
codec_wav.dylib
version/api/plugins/codec_wav.dylib (compatibility
version 0.0.0, current version 0.0.0)
codec_xm.dylib
version/api/plugins/codec_xm.dylib (compatibility
version 0.0.0, current version 0.0.0)
dsp_chorus.dylib
version/api/plugins/dsp_chorus.dylib (compatibility
version 0.0.0, current version 0.0.0)
dsp_distortion.dylib
version/api/plugins/dsp_distortion.dylib
(compatibility version 0.0.0, current version 0.0.0)
dsp_echo.dylib
version/api/plugins/dsp_echo.dylib (compatibility
version 0.0.0, current version 0.0.0)
dsp_flange.dylib
version/api/plugins/dsp_flange.dylib (compatibility
version 0.0.0, current version 0.0.0)
dsp_highpass.dylib
version/api/plugins/dsp_highpass.dylib (compatibility
version 0.0.0, current version 0.0.0)
dsp_itecho.dylib
version/api/plugins/dsp_itecho.dylib (compatibility
version 0.0.0, current version 0.0.0)
dsp_lowpass_simple.dylib
version/api/plugins/dsp_lowpass_simple.dylib
(compatibility version 0.0.0, current version 0.0.0)
dsp_lowpass.dylib
version/api/plugins/dsp_lowpass.dylib (compatibility
version 0.0.0, current version 0.0.0)
dsp_lowpass2.dylib
version/api/plugins/dsp_lowpass2.dylib (compatibility
version 0.0.0, current version 0.0.0)
dsp_normalize.dylib
version/api/plugins/dsp_normalize.dylib (compatibility
version 0.0.0, current version 0.0.0)
dsp_oscillator.dylib
version/api/plugins/dsp_oscillator.dylib
(compatibility version 0.0.0, current version 0.0.0)
dsp_parameq.dylib
version/api/plugins/dsp_parameq.dylib (compatibility
version 0.0.0, current version 0.0.0)
dsp_pitchshift.dylib
version/api/plugins/dsp_pitchshift.dylib
(compatibility version 0.0.0, current version 0.0.0)
dsp_reverb.dylib
version/api/plugins/dsp_reverb.dylib (compatibility
version 0.0.0, current version 0.0.0)
dsp_sfxreverb.dylib
version/api/plugins/dsp_sfxreverb.dylib (compatibility
version 0.0.0, current version 0.0.0)
output_coreaudio.dylib
version/api/plugins/output_coreaudio.dylib
(compatibility version 0.0.0, current version 0.0.0)
output_nosound_nrt.dylib
version/api/plugins/output_nosound_nrt.dylib
(compatibility version 0.0.0, current version 0.0.0)
output_nosound.dylib
version/api/plugins/output_nosound.dylib
(compatibility version 0.0.0, current version 0.0.0)
output_soundmanager.dylib
version/api/plugins/output_soundmanager.dylib
(compatibility version 0.0.0, current version 0.0.0)
output_wavwriter_nrt.dylib
version/api/plugins/output_wavwriter_nrt.dylib
(compatibility version 0.0.0, current version 0.0.0)
output_wavwriter.dylib
version/api/plugins/output_wavwriter.dylib
(compatibility version 0.0.0, current version 0.0.0) |
|
|
|
Back to top
|
|
|
sidegame
Newbie
Joined: 26 Jul 2007
Posts: 9
Location: University of Tasmania, Australia
|
Posted: Fri Jul 27, 2007 5:02
pm Post subject: i386
(40719)
|
|
|
|
Code:
|
libfmodex.dylib
/Users/Mathew/Desktop/sound/fmod4/mac/build/Release/libfmodex.dylib
(compatibility version 1.0.0, current version 1.0.0)
libfmodexp.dylib
/Users/Mathew/Desktop/sound/fmod4/mac/build/Release_Plugins/libfmodexp.dylib
(compatibility version 1.0.0, current version 1.0.0)
codec_aiff.dylib
/Users/Mathew/Desktop/sound/fmod4/mac/build/Release_Plugins/codec_aiff.dylib
(compatibility version 1.0.0, current version 1.0.0)
codec_cdda.dylib
/Users/Mathew/Desktop/sound/fmod4/mac/build/Release_Plugins/codec_cdda.dylib
(compatibility version 1.0.0, current version 1.0.0)
codec_dls.dylib
/Users/Mathew/Desktop/sound/fmod4/mac/build/Release_Plugins/codec_dls.dylib
(compatibility version 1.0.0, current version 1.0.0)
codec_flac.dylib
/Users/Mathew/Desktop/sound/fmod4/mac/build/Release_Plugins/codec_flac.dylib
(compatibility version 1.0.0, current version 1.0.0)
codec_fsb.dylib
/Users/Mathew/Desktop/sound/fmod4/mac/build/Release_Plugins/codec_fsb.dylib
(compatibility version 1.0.0, current version 1.0.0)
codec_it.dylib
/Users/Mathew/Desktop/sound/fmod4/mac/build/Release_Plugins/codec_it.dylib
(compatibility version 1.0.0, current version 1.0.0)
codec_midi.dylib
/Users/Mathew/Desktop/sound/fmod4/mac/build/Release_Plugins/codec_midi.dylib
(compatibility version 1.0.0, current version 1.0.0)
codec_mod.dylib
/Users/Mathew/Desktop/sound/fmod4/mac/build/Release_Plugins/codec_mod.dylib
(compatibility version 1.0.0, current version 1.0.0)
codec_mpeg.dylib
/Users/Mathew/Desktop/sound/fmod4/mac/build/Release_Plugins/codec_mpeg.dylib
(compatibility version 1.0.0, current version 1.0.0)
codec_oggvorbis.dylib
/Users/Mathew/Desktop/sound/fmod4/mac/build/Release_Plugins/codec_oggvorbis.dylib
(compatibility version 1.0.0, current version 1.0.0)
codec_playlist.dylib
/Users/Mathew/Desktop/sound/fmod4/mac/build/Release_Plugins/codec_playlist.dylib
(compatibility version 1.0.0, current version 1.0.0)
codec_raw.dylib
/Users/Mathew/Desktop/sound/fmod4/mac/build/Release_Plugins/codec_raw.dylib
(compatibility version 1.0.0, current version 1.0.0)
codec_s3m.dylib
/Users/Mathew/Desktop/sound/fmod4/mac/build/Release_Plugins/codec_s3m.dylib
(compatibility version 1.0.0, current version 1.0.0)
codec_sf2.dylib
/Users/Mathew/Desktop/sound/fmod4/mac/build/Release_Plugins/codec_sf2.dylib
(compatibility version 1.0.0, current version 1.0.0)
codec_tag.dylib
/Users/Mathew/Desktop/sound/fmod4/mac/build/Release_Plugins/codec_tag.dylib
(compatibility version 1.0.0, current version 1.0.0)
codec_wav.dylib
/Users/Mathew/Desktop/sound/fmod4/mac/build/Release_Plugins/codec_wav.dylib
(compatibility version 1.0.0, current version 1.0.0)
codec_xm.dylib
/Users/Mathew/Desktop/sound/fmod4/mac/build/Release_Plugins/codec_xm.dylib
(compatibility version 1.0.0, current version 1.0.0)
dsp_chorus.dylib
/Users/Mathew/Desktop/sound/fmod4/mac/build/Release_Plugins/dsp_chorus.dylib
(compatibility version 1.0.0, current version 1.0.0)
dsp_distortion.dylib
/Users/Mathew/Desktop/sound/fmod4/mac/build/Release_Plugins/dsp_distortion.dylib
(compatibility version 1.0.0, current version 1.0.0)
dsp_echo.dylib
/Users/Mathew/Desktop/sound/fmod4/mac/build/Release_Plugins/dsp_echo.dylib
(compatibility version 1.0.0, current version 1.0.0)
dsp_flange.dylib
/Users/Mathew/Desktop/sound/fmod4/mac/build/Release_Plugins/dsp_flange.dylib
(compatibility version 1.0.0, current version 1.0.0)
dsp_highpass.dylib
/Users/Mathew/Desktop/sound/fmod4/mac/build/Release_Plugins/dsp_highpass.dylib
(compatibility version 1.0.0, current version 1.0.0)
dsp_itecho.dylib
/Users/Mathew/Desktop/sound/fmod4/mac/build/Release_Plugins/dsp_itecho.dylib
(compatibility version 1.0.0, current version 1.0.0)
dsp_lowpass.dylib
/Users/Mathew/Desktop/sound/fmod4/mac/build/Release_Plugins/dsp_lowpass.dylib
(compatibility version 1.0.0, current version 1.0.0)
dsp_lowpass2.dylib
/Users/Mathew/Desktop/sound/fmod4/mac/build/Release_Plugins/dsp_lowpass2.dylib
(compatibility version 1.0.0, current version 1.0.0)
dsp_normalize.dylib
/Users/Mathew/Desktop/sound/fmod4/mac/build/Release_Plugins/dsp_normalize.dylib
(compatibility version 1.0.0, current version 1.0.0)
dsp_oscillator.dylib
/Users/Mathew/Desktop/sound/fmod4/mac/build/Release_Plugins/dsp_oscillator.dylib
(compatibility version 1.0.0, current version 1.0.0)
dsp_parameq.dylib
/Users/Mathew/Desktop/sound/fmod4/mac/build/Release_Plugins/dsp_parameq.dylib
(compatibility version 1.0.0, current version 1.0.0)
dsp_pitchshift.dylib
/Users/Mathew/Desktop/sound/fmod4/mac/build/Release_Plugins/dsp_pitchshift.dylib
(compatibility version 1.0.0, current version 1.0.0)
dsp_reverb.dylib
/Users/Mathew/Desktop/sound/fmod4/mac/build/Release_Plugins/dsp_reverb.dylib
(compatibility version 1.0.0, current version 1.0.0)
output_coreaudio.dylib
/Users/Mathew/Desktop/sound/fmod4/mac/build/Release_Plugins/output_coreaudio.dylib
(compatibility version 1.0.0, current version 1.0.0)
output_nosound_nrt.dylib
/Users/Mathew/Desktop/sound/fmod4/mac/build/Release_Plugins/output_nosound_nrt.dylib
(compatibility version 1.0.0, current version 1.0.0)
output_nosound.dylib
/Users/Mathew/Desktop/sound/fmod4/mac/build/Release_Plugins/output_nosound.dylib
(compatibility version 1.0.0, current version 1.0.0)
output_soundmanager.dylib
/Users/Mathew/Desktop/sound/fmod4/mac/build/Release_Plugins/output_soundmanager.dylib
(compatibility version 1.0.0, current version 1.0.0)
output_wavwriter_nrt.dylib
/Users/Mathew/Desktop/sound/fmod4/mac/build/Release_Plugins/output_wavwriter_nrt.dylib
(compatibility version 1.0.0, current version 1.0.0)
output_wavwriter.dylib
/Users/Mathew/Desktop/sound/fmod4/mac/build/Release_Plugins/output_wavwriter.dylib
(compatibility version 1.0.0, current version 1.0.0) |
|
|
|
Back to top
|
|
|
sidegame
Newbie
Joined: 26 Jul 2007
Posts: 9
Location: University of Tasmania, Australia
|
Posted: Fri Jul 27, 2007 5:03
pm Post subject: PPC
(40719)
|
|
|
|
Code:
|
libfmodex.dylib
libfmodex.dylib (compatibility version 0.0.0, current
version 0.0.0)
libfmodexp.dylib
libfmodexp.dylib (compatibility version 0.0.0, current
version 0.0.0)
codec_aiff.dylib
version/api/plugins/codec_aiff.dylib (compatibility
version 0.0.0, current version 0.0.0)
codec_cdda.dylib
version/api/plugins/codec_cdda.dylib (compatibility
version 0.0.0, current version 0.0.0)
codec_dls.dylib
version/api/plugins/codec_dls.dylib (compatibility
version 0.0.0, current version 0.0.0)
codec_flac.dylib
version/api/plugins/codec_flac.dylib (compatibility
version 0.0.0, current version 0.0.0)
codec_fsb.dylib
version/api/plugins/codec_fsb.dylib (compatibility
version 0.0.0, current version 0.0.0)
codec_it.dylib
version/api/plugins/codec_it.dylib (compatibility
version 0.0.0, current version 0.0.0)
codec_midi.dylib
version/api/plugins/codec_midi.dylib (compatibility
version 0.0.0, current version 0.0.0)
codec_mod.dylib
version/api/plugins/codec_mod.dylib (compatibility
version 0.0.0, current version 0.0.0)
codec_mpeg.dylib
version/api/plugins/codec_mpeg.dylib (compatibility
version 0.0.0, current version 0.0.0)
codec_oggvorbis.dylib
version/api/plugins/codec_oggvorbis.dylib
(compatibility version 0.0.0, current version 0.0.0)
codec_playlist.dylib
version/api/plugins/codec_playlist.dylib
(compatibility version 0.0.0, current version 0.0.0)
codec_raw.dylib
version/api/plugins/codec_raw.dylib (compatibility
version 0.0.0, current version 0.0.0)
codec_s3m.dylib
version/api/plugins/codec_s3m.dylib (compatibility
version 0.0.0, current version 0.0.0)
codec_sf2.dylib
version/api/plugins/codec_sf2.dylib (compatibility
version 0.0.0, current version 0.0.0)
codec_tag.dylib
version/api/plugins/codec_tag.dylib (compatibility
version 0.0.0, current version 0.0.0)
codec_wav.dylib
version/api/plugins/codec_wav.dylib (compatibility
version 0.0.0, current version 0.0.0)
codec_xm.dylib
version/api/plugins/codec_xm.dylib (compatibility
version 0.0.0, current version 0.0.0)
dsp_chorus.dylib
version/api/plugins/dsp_chorus.dylib (compatibility
version 0.0.0, current version 0.0.0)
dsp_distortion.dylib
version/api/plugins/dsp_distortion.dylib
(compatibility version 0.0.0, current version 0.0.0)
dsp_echo.dylib
version/api/plugins/dsp_echo.dylib (compatibility
version 0.0.0, current version 0.0.0)
dsp_flange.dylib
version/api/plugins/dsp_flange.dylib (compatibility
version 0.0.0, current version 0.0.0)
dsp_highpass.dylib
version/api/plugins/dsp_highpass.dylib (compatibility
version 0.0.0, current version 0.0.0)
dsp_itecho.dylib
version/api/plugins/dsp_itecho.dylib (compatibility
version 0.0.0, current version 0.0.0)
dsp_lowpass_simple.dylib
version/api/plugins/dsp_lowpass_simple.dylib
(compatibility version 0.0.0, current version 0.0.0)
dsp_lowpass.dylib
version/api/plugins/dsp_lowpass.dylib (compatibility
version 0.0.0, current version 0.0.0)
dsp_lowpass2.dylib
version/api/plugins/dsp_lowpass2.dylib (compatibility
version 0.0.0, current version 0.0.0)
dsp_normalize.dylib
version/api/plugins/dsp_normalize.dylib (compatibility
version 0.0.0, current version 0.0.0)
dsp_oscillator.dylib
version/api/plugins/dsp_oscillator.dylib
(compatibility version 0.0.0, current version 0.0.0)
dsp_parameq.dylib
version/api/plugins/dsp_parameq.dylib (compatibility
version 0.0.0, current version 0.0.0)
dsp_pitchshift.dylib
version/api/plugins/dsp_pitchshift.dylib
(compatibility version 0.0.0, current version 0.0.0)
dsp_reverb.dylib
version/api/plugins/dsp_reverb.dylib (compatibility
version 0.0.0, current version 0.0.0)
dsp_sfxreverb.dylib
version/api/plugins/dsp_sfxreverb.dylib (compatibility
version 0.0.0, current version 0.0.0)
output_coreaudio.dylib
version/api/plugins/output_coreaudio.dylib
(compatibility version 0.0.0, current version 0.0.0)
output_nosound_nrt.dylib
version/api/plugins/output_nosound_nrt.dylib
(compatibility version 0.0.0, current version 0.0.0)
output_nosound.dylib
version/api/plugins/output_nosound.dylib
(compatibility version 0.0.0, current version 0.0.0)
output_soundmanager.dylib
version/api/plugins/output_soundmanager.dylib
(compatibility version 0.0.0, current version 0.0.0)
output_wavwriter_nrt.dylib
version/api/plugins/output_wavwriter_nrt.dylib
(compatibility version 0.0.0, current version 0.0.0)
output_wavwriter.dylib
version/api/plugins/output_wavwriter.dylib
(compatibility version 0.0.0, current version 0.0.0) |
|
|
|
Back to top
|
|
|
sidegame
Newbie
Joined: 26 Jul 2007
Posts: 9
Location: University of Tasmania, Australia
|
Posted: Sat Jul 28, 2007 2:49
pm Post subject: SOLVED
:)
|
|
|
Good news. It appears there
is functionality of the install_name_tool that I missed
earlier.
if I go:
install_name_tool -id
@executable_path/../Frameworks/<dylibname>.dylib
<dylibname>.dylib
Then it updates their own local references to themselves that is
used when compiled into a .app. It is still an issue as to what the
defaults should be (I imagine just 'itself', or something similar
to the above, as copying the dylibs to the .app/Conents/Frameworks/
is quite simple, given that's where most of your headers and other
frameworks go anyway.
Neverthless, hopefully this can act as a reference for anyone else
who stumbles into the same trap.
|
|
|
Back to top
|
|
|
brett
God
Joined: 03 May 2001
Posts: 8072
|
Posted: Mon Jul 30, 2007 11:51
am Post
subject:
|
|
|
Thanks for the research
we'll look at putting this in our mac specific tutorial section of
the docs.
_________________
Brett Paterson
Firelight Technologies
FMOD SoundSystem
|
|
|
Back to top
|
|
|
ssexton
Newbie
Joined: 31 Jul 2007
Posts: 3
Location: South Florida
|
Posted: Tue Jul 31, 2007 8:37
am Post
subject:
|
|
|
As a long-time Mac
programmer (but new to FMOD), I have a few comments on this, which
might be helpful to you:
1. afaik, install_name_tool is the correct way to take care of this
issue. Its not a problem with XCode because XCode does it for you.
Do "man install_name_tool" for details, but as you've discovered,
its -change for updating dependencies (must be an exact match) and
-id for the object itself.
2. If you're not careful about the order in which you do things, it
is *quite* easy to create situations where you need to create a
symbolic link named @executable_path in order to link successfully.
This is because the loader (dyld) knows how to resolve
@executable_path, but the linker (ld) does not!
3. TO THE FMOD DEVS: A related issue, is that if you don't create
the binary correctly, install_name_tool can fail. If you aren't
already, please use -headerpad_max_install_names when you link to
avoid the problem. Otherwise, install_name_tool can fail, if the
old name is too much shorter than the new name.
Best regards,
Steve
|
|
|
Back to top
|
|
|
mathew
Deity
Joined: 28 Jun 2007
Posts: 16
Location: Melbourne, Australia
|
Posted: Tue Jul 31, 2007 5:50
pm Post
subject:
|
|
|
Okay then, wow!
I have been busy working on cleaning up the MacOSX code recently
and have not been monitoring the forum as closely as I would have
liked to. It would seem you have done a very good job of detailing
what I have been working on.
The issue with the install_name_tool stuff should be all resolved
now. I have set up the dylibs so that they use a relative path. So
fmodevent will assume fmodex is in the same directory. I have also
updated the examples to use relative paths for the accessing the
library, eg. ../api/lib/libfmodex.dylib.
Another thing that was mentioned here was the use of universal
binaries, well that has been implemented as well. Since the
majority of people would benefit from having the libraries as
universal, the minority can now use lipo to thin them back out to
individual archs if needed. Notes have been added to the mac
specific section of the docs explaining this.
All of these changes have been made to the development version of
FMOD only, and should appear in the next release. Please stay tuned
for the release and let me know if there is anything else we can
tweak.
_________________
Mathew Block
Firelight Technologies
FMOD SoundSystem
|
|
|
Back to top
|
|
|
|
|
|
You cannot post new topics in this
forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum
|
Powered by phpBB © 2001, 2005 phpBB Group
|