Skip to Content

Pre-compiled binary Hydrogen 0.9.4-svn79 - MacOSX (intel only)

68 replies [Last post]
joostjodel
Offline
Joined: 04/17/2010

Hi all,

I have compiled Hydrogen using MacPorts on July 17 2009 for intel MacOSX 10.5 Leopard (and possibly works on 10.4 Tiger too).

To save time (and energy) I put it online. Download link:

http://web.inter.nl.net/users/chef/hydrogen.app.zip

I hope it works for you too (if not let me know) !!

Thanks to the creators of Hydrogen!!

=== EDIT July 24 2009===

I put a new version online to resolve missing dependencies. See http://www.hydrogen-music.org/forum/?action=show_thread&fid=7&thread=1093&page=2#4477. The new download URL is now http://web.inter.nl.net/users/chef/hydrogen.zip (39,4 MB). I removed the old upload.

=== EDIT July 28 2009===
New intel-only build, http://www.hydrogen-music.org/forum/index.php?action=show_thread&fid=7&thread=1093&page=4#4507.
Download link: http://web.inter.nl.net/users/chef/Hydrogen-svn1290.dmg (15.2 MB). In addition, you need
http://web.inter.nl.net/users/chef/libcrypto.zip (1.3 MB) and unpack it in /opt/local/lib. If you don't have this directory, create it. For clarity: these files need to be directly in /opt/local/lib (so not the libcrypto directory).

Old version svn79 removed since I am short on webspace..:(

=== EDIT August 7 2009===
Thanks to the help of Magnus Oman who wrote a nice launching script included in this *.dmg bundle, there is now a package that should be self-containing, i.e. no need to download the extra libcrypto file anymore:

http://web.inter.nl.net/users/chef/Hydrogen-svn1295.dmg (15.6 MB)

=== EDIT August 7 2009===
...and an even newer build that includes Coremidi and solves the weird "CoreAudio Driver Not compiled" error in the preferences.

http://web.inter.nl.net/users/chef/Hydrogen-svn1307.dmg (15.3 MB)

== edit Nov 26 2009 ==
All links removed, download this version from
http://downloads.sourceforge.net/hydrogen/hydrogen_0.9.4rc2.dmg

or the newer version for 64 bit snow leopard only:
http://www.hydrogen-music.org/forum/?action=show_thread&thread=1166&fid=7&page=1

mauser
Offline
Joined: 03/30/2010

Hi Joost!!

Congratulations, this are great news. Btw. is the version number in your post correct? 79 seems to be a little bit outdated as we reached 1252 recently..
Thanks,
mauser

joostjodel
Offline
Joined: 04/17/2010

Hi, yes it seems outdated right? It is the version available from MacPorts, so hopefully they will update their repositories soon with a more recent version...

By the way, I am not sure this app has all dependencies built-in, it seem rather small (some 9 MB). So if someone would please test this version and see if it works..

If not, try running this app inside a terminal and post error messages here. How to run Hydrogen in a terminal:

- right-click hydrogen.app > choose "show package contents". A new Finder window will open. Go to Contents > MacOS.
- open terminal and drag "hydrogen" binary in terminal and hit enter.

mauser
Offline
Joined: 03/30/2010

Ah ok.. So if it is rev.79, where is the difference to the installer on our download page? ( I simply don't know, i'm just curious ).

Hm, the version you're talking about is pretty outdated, it is known to be unstable and crashes a lot. It was just the beginning of the 0.9.4 development. Is there a possibility to contact the people who did this macports stuff??

joostjodel
Offline
Joined: 04/17/2010

They are different versions: this is rev. 79, the one from the download page says rev. 0.9.4-svn95M (Mar 31 2008). Perhaps then the MacPorts build I made is even older than the download version (it looks better though..:)?

I have no idea about how to update the MacPorts repository... It would definitely be great to be able to build a more recent version of Hydrogen via Macports, since it's so incredibly easy.

There is some info on becoming a 'committer' to Macports at http://trac.macports.org/wiki/NewCommittersGuide.

-- edit --
And here's how to commit updates to Macports: http://guide.macports.org/#project.contributing. I guess you guys - as Hydrogen developers - should maintain the Macport too...;-P

joostjodel
Offline
Joined: 04/17/2010

By the way, this is the portfile for Hydrogen in Macports. As you can see it has no maintainer, but someone must have uploaded it once.. What's interesting is that when I go to the SVN URL listed in this file (http://svn.assembla.com/svn/hydrogen/trunk), it says "Revision 1252", which is exactly the version you say is the most recent. So it appears that because of the lack of maintenance of the portfile, the wrong version number is given, whereas the complied build is actually the most recent one (good news I guess).

--------
# $Id: Portfile 44217 2008-12-23 21:25:51Z mcalhoun@macports.org $

# -*- Mode: Tcl; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- vim:fenc=utf-8:filetype=tcl:et:sw=4:ts=4:sts=4
PortSystem 1.0

name hydrogen
version 0.9.3.79
revision 1
categories audio
platforms macosx
maintainers nomaintainer
homepage http://www.hydrogen-music.org/

description Hydrogen is an advanced drum machine.
long_description \
Hydrogen is an advanced drum machine for GNU/Linux. \
Its main goal is to provide professional yet simple and intuitive \
pattern-based drum programming.

fetch.type svn
svn.url http://svn.assembla.com/svn/hydrogen/trunk
svn.tag 79
worksrcdir trunk

depends_lib lib:libqt.4:qt4-mac \
port:flac \
port:libsndfile \
port:libtar

post-patch {
reinplace "s|/opt/local|${prefix}|g" \
${worksrcpath}/extra/hydrogenPlayer/hydrogenPlayer.pro \
${worksrcpath}/extra/hydrogenSynth/hydrogenSynth.pro \
${worksrcpath}/gui/gui.pro \
${worksrcpath}/libs/hydrogen/hydrogen.pro
}

configure.pre_args
configure.env prefix=${prefix} QTDIR=${prefix}/libexec/qt4-mac

build.target first

destroot.destdir INSTALL_ROOT="${destroot}"
post-destroot {
xinstall -d ${destroot}/Applications/MacPorts
move ${destroot}${prefix}/bin/hydrogen.app ${destroot}/Applications/MacPorts
}

mauser
Offline
Joined: 03/30/2010

Hi,

No, its rev 79. The property "svn.tag" tells macports which revision it should use from our repository ( see http://guide.macports.org/ ).

Well there are some informations on the macports homepage:

http://trac.macports.org/browser/trunk/dports/audio/hydrogen/Portfile

There is a part of the mailadress from the person who committed the last update, i think the hidden part of his mailadress should be "@macports.org" . Maybe you could get in contact with him?

The new revision might need some work to build fine with macports because we moved to a new build system ( from qmake to scons ). The old version, which is available via macports, is using qmake.

mauser
Offline
Joined: 03/30/2010

>-- edit --
>And here's how to commit updates to Macports: http://guide.macports.org>/#project.contributing. I guess you guys - as Hydrogen developers - should >maintain the Macport too...;-P

Sure, if you buy us a mac :)
It's a little bit hard to work on a mac port without a mac.

joostjodel
Offline
Joined: 04/17/2010

OK, I've filed a request ticket for an update of the portfile. Hopefully this moves things forward.

Do you have any idea whether new dependencies should be called in the portfile, or what kind of modifications should be inserted with regard to the newer build system you are using (qmake > scons)? Then I could try to write a newer portfile myself and submit it to the macports system. Right now the dependencies mentioned are:

depends_lib lib:libqt.4:qt4-mac \
port:flac \
port:libsndfile \
port:libtar

Thanks for your replies so far!

mauser
Offline
Joined: 03/30/2010

Hi!

The dependencies are ok, they haven't changed. Maybe you have to add scons as a dependency. The whole post-patch section won't work because the .pro files are qmake-specific and don't exist anymore.
I'm happy to help if there are any problems!

Dani
Offline
Joined: 04/17/2010

Hello, i have this error:

.............................................
Process: hydrogen [605]
Path: /Applications/hydrogen.app/Contents/MacOS/hydrogen
Identifier: com.yourcompany.hydrogen
Version: ??? (???)
Code Type: X86 (Native)
Parent Process: launchd [124]

Interval Since Last Report: 1287 sec
Crashes Since Last Report: 3
Per-App Interval Since Last Report: 0 sec
Per-App Crashes Since Last Report: 3

Date/Time: 2009-07-21 04:19:41.757 +0200
OS Version: Mac OS X 10.5.7 (9J61)
Report Version: 6
Anonymous UUID: 0FC54BCB-8024-4729-96D7-76F18D91D5E6

Exception Type: EXC_BREAKPOINT (SIGTRAP)
Exception Codes: 0x0000000000000002, 0x0000000000000000
Crashed Thread: 0

Dyld Error Message:
Library not loaded: /opt/local/lib/libsndfile.1.dylib
Referenced from: /Applications/hydrogen.app/Contents/MacOS/hydrogen
Reason: image not found

.............................................

Model: iMac8,1, BootROM IM81.00C1.B00, 2 processors, Intel Core 2 Duo, 2.4 GHz, 1 GB
Graphics: kHW_ATIr600M74Item, ATI Radeon HD 2400, spdisplays_pcie_device, 128 MB
Memory Module: global_name
AirPort: spairport_wireless_card_type_airport_extreme (0x14E4, 0x8C), Broadcom BCM43xx 1.0 (5.10.38.35)
Bluetooth: Version 2.1.6f8, 2 service, 0 devices, 1 incoming serial ports
Network Service: AirPort, AirPort, en1
Serial ATA Device: Hitachi HDP725025GLA380, 232,89 GB
Parallel ATA Device: PIONEER DVD-RW DVR-K06A
USB Device: Built-in iSight, (null) mA
USB Device: Keyboard Hub, (null) mA
USB Device: Apple Keyboard, (null) mA
USB Device: IR Receiver, (null) mA
USB Device: USB Laser Mouse, (null) mA
USB Device: BRCM2046 Hub, (null) mA
USB Device: Bluetooth USB Host Controller, (null) mA

darthvim
Offline
Joined: 04/17/2010

hi i had to install with port:

libsndfile
libtar
qt4-mac (took very long to compile).

could you please add the midi out patch to it ?
thanks in advance

mauser
Offline
Joined: 03/30/2010

Hi darthvim,

who should add the midi patch? And to what?

darthvim
Offline
Joined: 04/17/2010

sorry mauser, i didn't ment to add a patch (i mixed something up), well ...

it would be great if joostjodel could compile

http://trac.assembla.com/hydrogen/browser/branches/new_fx_rack_and_sampl...

for me, cause i couldn't compile it for me on my mac ...

or midi out could be implemented in the 0.94 rc2 ;) and sample fun also ..., works great and was stable for me in linux...

well both would be even better ;)

mauser
Offline
Joined: 03/30/2010

The problem is that the macports repository holds just an *very* outdated version of hydrogen.

@JoostJoodel: How does this macports thing work? Is it possible that to use macports file from harddisk, so that you don't have to wait for a new version on their page? We could try to write one on our own..

darthvim
Offline
Joined: 04/17/2010

... oh my fault, i did not read the whole thread, so mauser compiled the one from mac ports.

i tried the repository from wolkes sample and fun.

tried to compile but had no alsa ... is there a way to compile a working version on coreaudio with a mac and without alsa ?

thanks

mauser
Offline
Joined: 03/30/2010

Hm, no. I built nothing :) I think you're messing up things now :)

You can turn of alsa with "scons alsa=0". Run scons --help to get a list with all modules which can be turned on/off.
Here's the list:

debug: Set to 1 to build with debug informations
default: 0
actual: 0

libarchive: Set to 1 to enable libarchive instead of libtar
default: 0
actual: 0

prefix: Default: /usr/local
default: /usr/local
actual: /usr/local

DESTDIR: Default: none
default:
actual:

optflags: Default: none
default:
actual:

oss: Set to 1 to enable oss
default: 1
actual: 1

portmidi: Set to 1 to enable portmidi
default: 0
actual: 0

portaudio: Set to 1 to enable portaudio
default: 0
actual: 0

lash: Set to 1 to enable lash
default: 0
actual: 0

alsa: Set to 1 to enable alsa
default: 1
actual: 1

jack: Set to 1 to enable jack
default: 1
actual: 1

lrdf: Set to 1 to enable lrdf
default: 1
actual: 1

flac: Set to 1 to enable flac
default: 1
actual: 1

darthvim
Offline
Joined: 04/17/2010

ok ;)

i installed libtar via port but scons says still:

scons: warning: The Options class is deprecated; use the Variables class instead.
File "/Users/master/hyd/branches/new_fx_rack_and_sample_fun/SConstruct", line 319, in
* Downloading required 3rdparty libraries
Checking for C header file sndfile.h... yes
Checking for C header file jack/jack.h... yes
Checking for C header file zlib.h... yes
Checking for C header file libtar.h... no
libtar must be installed!

can you or joostjodel help me anyhow ?

thanks in advance

darthvim
Offline
Joined: 04/17/2010

i had to compile libtar on my own from

ftp://ftp.feep.net/pub/software/libtar/?ref=darwinports.com

and now it needs liblrdf ;) ...

mauser
Offline
Joined: 03/30/2010

You can disable lrdf if you want, it is needed to categorize ladspa effects.

joostjodel
Offline
Joined: 04/17/2010

Mauser wrote:
[color=red]The problem is that the macports repository holds just an *very* outdated version of hydrogen.

@JoostJoodel: How does this macports thing work? Is it possible that to use macports file from harddisk, so that you don't have to wait for a new version on their page? We could try to write one on our own..[/color]

As far as I understand it, Macports can be seen as a kind of *.deb variant for Linux but then only with source (not binaries). It is basically a repository with a reference (= the portfile) how to get the source code and some clues how to build from source. It is indeed possible to maintain a local repository of Macports which contains a more recent version of Hydrogen (see http://guide.macports.org/#development.local-repositories for explanation how to do this, that part is quite simple).

So I tried that. But that gave me a quick error:

[color=red]
sudo port -f install hydrogen
---> Configuring hydrogen
Error: Target org.macports.configure returned: configure failure: shell command " cd "/opt/local/var/macports/build/_Users_michiel_builds_audio_hydrogen/work/trunk" && ./configure " returned error 127
Command output: sh: ./configure: No such file or directory

Error: Status 1 encountered during processing.
[/color]

Clearly Macports tries to look for the "./configure ; make ; make install" set of commands. It does not seem to recognize Hydrogen needs to be build with scons. Yet when I changed "./configure" with "scons", I ran into pervasive problems with QT, although I believe I set my path correctly:

[color=red]scons: done reading SConscript files.
scons: Building targets ...
g++ -o gui/src/SongEditor/SongEditor.o -c -O3 -fomit-frame-pointer -funroll-loops -DLRDF_SUPPORT -DPORTMIDI_SUPPORT -DFLAC_SUPPORT -DCOREAUDIO_SUPPORT -DLADSPA_SUPPORT -DQT_CORE_LIB -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_XML_LIB -I. -Igui/src -I3rdparty/install/include -I/opt/local/include -I/usr/local/include -Ilibs/hydrogen/include -Igui/src/UI -I/opt/local/libexec/qt4-mac/include/qt4 -I/opt/local/libexec/qt4-mac/include/qt4/QtCore -I/opt/local/libexec/qt4-mac/include/qt4/QtGui -I/opt/local/libexec/qt4-mac/include/qt4/QtNetwork -I/opt/local/libexec/qt4-mac/include/qt4/QtXml gui/src/SongEditor/SongEditor.cpp
In file included from gui/src/SongEditor/SongEditor.cpp:27:
libs/hydrogen/include/hydrogen/Song.h:27:19: error: QString: No such file or directory
In file included from gui/src/SongEditor/SongEditor.cpp:33:
libs/hydrogen/include/hydrogen/instrument.h:27:26: error: QtCore/QString: No such file or directory
In file included from gui/src/SongEditor/../PatternFillDialog.h:29,
from gui/src/SongEditor/SongEditor.h:32,
from gui/src/SongEditor/SongEditor.cpp:37:
gui/src/UI/ui_PatternFillDialog_UI.h:13:27: error: QtCore/QVariant: No such file or directory
gui/src/UI/ui_PatternFillDialog_UI.h:14:25: error: QtGui/QAction: No such file or directory
gui/src/UI/ui_PatternFillDialog_UI.h:15:30: error: QtGui/QApplication: No such file or directory
gui/src/UI/ui_PatternFillDialog_UI.h:16:30: error: QtGui/QButtonGroup: No such file or directory
gui/src/UI/ui_PatternFillDialog_UI.h:17:25: error: QtGui/QDialog: No such file or directory

[/color]

I think I'm gonna give up and wait for someone to update the Hydrogen Macport... I hope the request I did on the Macports trac system will be granted soon..

joostjodel
Offline
Joined: 04/17/2010

@Dani

OK, thanks for your detailed report. Clearly the Hydrogen.app I put online lacks some necessary packages (like "libsndfile" referenced in your error report). I'll put them online asap -after recompiling them into easily installable packages - and post links here soon...
Patience pls... :)

mauser
Offline
Joined: 03/30/2010

Hi!

Well you could try the new branche "win_port" instead of trunk.
This branche includes updated qmake files which work with the recent version of hydrogen. It will be easier to work with those files ( sincel the old macports script is using qmake ) then switching over to scons.

joostjodel
Offline
Joined: 04/17/2010

Hi,

I uploaded a new file. It is a zipped directory of *.pkg packages that are needed for Hydrogen to run on macosx-intel. I compiled all this via Macports with the command "port pkg" to make packages out of sources.

http://web.inter.nl.net/users/chef/hydrogen.zip (39,4 MB)

I recommend installing in this order:

1. libtar
2. libsndfile
3. jack (I believe hydrogen was compiled without jack support, so it doesn't actually make any difference whether you install this package or not)
4. qt4-mac (a slimmed-down version of qt, without demo's, examples, documentation)
5. hydrogen

Let me know if it works (or not). Remember this is still the old version of Hydrogen (r79) running only on intel macs. Good luck!

joostjodel
Offline
Joined: 04/17/2010

@ mauser
> Well you could try the new branche "win_port" instead of trunk.
> This branche includes updated qmake files which work with the recent
> version of hydrogen. It will be easier to work with those files ( sincel the old
> macports script is using qmake ) then switching over to scons.

Tried the "win_port" branch, but getting different error messages:

[color=red]
macmichiel:win_port michiel$ sudo scons
scons: Reading SConscript files ...

scons: warning: The Options class is deprecated; use the Variables class instead.
File "/opt/local/var/macports/build/_Users_michiel_builds_audio_hydrogen/work/win_port/SConstruct", line 331, in
['./', 'gui/src/', '3rdparty/install/include', ['/opt/local/include', '/usr/local/include']]
* Downloading required 3rdparty libraries
Checking for C header file sndfile.h... (cached) yes
Checking for C header file zlib.h... (cached) yes
Checking for C header file libtar.h... (cached) yes
Checking for C header file FLAC/all.h... (cached) yes

=================================================================
Hydrogen build script

Revision: 1288M
Platform: darwin
Release build
Prefix: /usr/local
Destdir:
=================================================================
Feature Overview:

lash: disabled
oss: disabled
alsa: disabled
jack: disabled
libarchive: disabled
portaudio: disabled
portmidi: disabled
coreaudio: enabled

=================================================================

scons: warning: QTDIR variable is not defined, using moc executable as a hint (QTDIR=/opt/local/lib/qt4-mac)
File "/opt/local/var/macports/build/_Users_michiel_builds_audio_hydrogen/work/win_port/qt4.py", line 207, in _detect

scons: warning: QTDIR variable is not defined, using moc executable as a hint (QTDIR=/opt/local/lib/qt4-mac)
File "/opt/local/var/macports/build/_Users_michiel_builds_audio_hydrogen/work/win_port/qt4.py", line 207, in _detect
scons: done reading SConscript files.
scons: Building targets ...
g++ -o gui/src/SongEditor/SongEditor.o -c -fno-default-inline -O3 -fomit-frame-pointer -funroll-loops -DFLAC_SUPPORT -DCOREAUDIO_SUPPORT -DLADSPA_SUPPORT -fno-inline -g -frtti -mthreads -fexceptions -DQT_THREAD_SUPPORT -DQT_CORE_LIB -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_XML_LIB -I. -Igui/src -I3rdparty/install/include -I/opt/local/include -I/usr/local/include -Ilibs/hydrogen/include -Igui/src/UI -I/opt/local/lib/qt4-mac/include/qt4 -I/opt/local/lib/qt4-mac/include/qt4/QtCore -I/opt/local/lib/qt4-mac/include/qt4/QtGui -I/opt/local/lib/qt4-mac/include/qt4/QtNetwork -I/opt/local/lib/qt4-mac/include/qt4/QtXml gui/src/SongEditor/SongEditor.cpp
cc1plus: error: invalid option 'threads'
scons: *** [gui/src/SongEditor/SongEditor.o] Error 1
scons: building terminated because of errors.
[/color]

== EDIT ==
....Hold it, something's compiling now, after manually tinkering with the QT PATH.... Keep you posted...

== EDIT2 ==
Things look well, lots of stuff actually compiles now, yet now I get this error message about the CoreAudioDriver:

[color=red]
g++ -o libs/hydrogen/src/pattern.o -c -fno-default-inline -O3 -fomit-frame-pointer -funroll-loops -DFLAC_SUPPORT -DCOREAUDIO_SUPPORT -DLADSPA_SUPPORT -fno-inline -g -frtti -fexceptions -DQT_THREAD_SUPPORT -DQT_CORE_LIB -DQT_GUI_LIB -I. -Igui/src -I3rdparty/install/include -I/opt/local/include -I/usr/local/include -Ilibs/hydrogen/include -I/opt/local/lib/qt4-mac/include/qt4 -I/opt/local/lib/qt4-mac/include/qt4/QtCore -I/opt/local/lib/qt4-mac/include/qt4/QtGui libs/hydrogen/src/pattern.cpp
g++ -o libs/hydrogen/src/IO/coreaudio_driver.o -c -fno-default-inline -O3 -fomit-frame-pointer -funroll-loops -DFLAC_SUPPORT -DCOREAUDIO_SUPPORT -DLADSPA_SUPPORT -fno-inline -g -frtti -fexceptions -DQT_THREAD_SUPPORT -DQT_CORE_LIB -DQT_GUI_LIB -I. -Igui/src -I3rdparty/install/include -I/opt/local/include -I/usr/local/include -Ilibs/hydrogen/include -I/opt/local/lib/qt4-mac/include/qt4 -I/opt/local/lib/qt4-mac/include/qt4/QtCore -I/opt/local/lib/qt4-mac/include/qt4/QtGui libs/hydrogen/src/IO/coreaudio_driver.cpp
libs/hydrogen/src/IO/coreaudio_driver.cpp: In constructor 'H2Core::CoreAudioDriver::CoreAudioDriver(int (*)(uint32_t, void*))':
libs/hydrogen/src/IO/coreaudio_driver.cpp:107: error: 'to_string' was not declared in this scope
libs/hydrogen/src/IO/coreaudio_driver.cpp:118: error: 'to_string' was not declared in this scope
libs/hydrogen/src/IO/coreaudio_driver.cpp:119: error: 'to_string' was not declared in this scope
libs/hydrogen/src/IO/coreaudio_driver.cpp:120: error: 'to_string' was not declared in this scope
libs/hydrogen/src/IO/coreaudio_driver.cpp:121: error: 'to_string' was not declared in this scope
libs/hydrogen/src/IO/coreaudio_driver.cpp:122: error: 'to_string' was not declared in this scope
libs/hydrogen/src/IO/coreaudio_driver.cpp:123: error: 'to_string' was not declared in this scope
scons: *** [libs/hydrogen/src/IO/coreaudio_driver.o] Error 1
scons: building terminated because of errors.
[/color]

Any ideas? Thanks so far for your help and suggestions, it stimulates me to keep trying :)!

mauser
Offline
Joined: 03/30/2010

Hi,

yes i know how to fix it, its an error in the source. I'm fixing it later when i'm home. I'll let you know when its fixed ! But the rest looks good.

mauser
Offline
Joined: 03/30/2010

Or you can fix them by yourself: Open libs/hydrogen/src/IO/coreaudio_driver.cpp and remove all lines which include "to_string".
It was just used for debugging, so its safe to remove.
Remove this lines: 107 and 118 - 123.

joostjodel
Offline
Joined: 04/17/2010

Thanks Mauser, it does indeed look good, lots of stuff now compiles.
Commenting out these lines with "//" solved this "CoreAudioDriver" problem.
Next hurdle...:)

[color=red]
scons: Building targets ...
g++ -o hydrogen -L/opt/local/lib -F/opt/local/lib -F/opt/local/lib/qt4-mac/lib -L/usr/local/lib -F/opt/local/lib/qt4-mac/lib -L/opt/local/lib/qt4-mac/lib -framework ApplicationServices -framework AudioUnit -framework Coreaudio -enable-stdcall-fixup -Wl, -enable-auto-import -Wl, -enable-runtime-pseudo-reloc -mthreads -Wl -Wl, -subsystem,windows gui/src/SongEditor/SongEditor.o gui/src/AboutDialog.o gui/src/SoundLibrary/SoundLibraryImportDialog.o gui/src/SoundLibrary/SoundLibraryRepositoryDialog.o gui/src/PlayerControl.o gui/src/widgets/midiTable.o gui/src/ExportSongDialog.o gui/src/HelpBrowser.o gui/src/SplashScreen.o gui/src/HydrogenApp.o gui/src/InstrumentEditor/InstrumentEditor.o gui/src/Mixer/MixerLine.o gui/src/PatternPropertiesDialog.o gui/src/LadspaFXSelector.o gui/src/AudioEngineInfoForm.o gui/src/Mixer/Mixer.o gui/src/PreferencesDialog.o gui/src/InstrumentRack.o gui/src/SoundLibrary/SoundLibraryExportDialog.o gui/src/AudioFileBrowser/AudioFileBrowser.o gui/src/PatternEditor/PatternEditorInstrumentList.o gui/src/main.o gui/src/widgets/DownloadWidget.o gui/src/widgets/Button.o gui/src/widgets/Rotary.o gui/src/PatternEditor/PatternEditorPanel.o gui/src/widgets/ClickableLabel.o gui/src/PatternEditor/PatternEditorRuler.o gui/src/MainForm.o gui/src/PatternEditor/PianoRollEditor.o gui/src/SoundLibrary/SoundLibraryPropertiesDialog.o gui/src/SongPropertiesDialog.o gui/src/InstrumentEditor/WaveDisplay.o gui/src/PatternEditor/NotePropertiesRuler.o gui/src/widgets/PixmapWidget.o gui/src/SoundLibrary/FileBrowser.o gui/src/PatternFillDialog.o gui/src/widgets/LCDCombo.o gui/src/PatternEditor/DrumPatternEditor.o gui/src/SongEditor/SongEditorPanel.o gui/src/InstrumentEditor/LayerPreview.o gui/src/widgets/LCD.o gui/src/widgets/Fader.o gui/src/InstrumentEditor/InstrumentEditorPanel.o gui/src/widgets/MidiSenseWidget.o gui/src/SoundLibrary/SoundLibrarySaveDialog.o gui/src/widgets/MidiActivityWidget.o gui/src/SoundLibrary/SoundLibraryPanel.o gui/src/widgets/CpuLoadWidget.o gui/src/LadspaFXProperties.o gui/src/AudioFileBrowser/SampleWaveDisplay.o gui/src/SoundLibrary/SoundLibraryTree.o gui/src/PlaylistEditor/PlaylistDialog.o gui/src/SongEditor/moc_SongEditor.o gui/src/moc_AboutDialog.o gui/src/SoundLibrary/moc_SoundLibraryImportDialog.o gui/src/SoundLibrary/moc_SoundLibraryRepositoryDialog.o gui/src/moc_PlayerControl.o gui/src/widgets/moc_midiTable.o gui/src/moc_ExportSongDialog.o gui/src/moc_HelpBrowser.o gui/src/moc_SplashScreen.o gui/src/moc_HydrogenApp.o gui/src/InstrumentEditor/moc_InstrumentEditor.o gui/src/Mixer/moc_MixerLine.o gui/src/moc_PatternPropertiesDialog.o gui/src/moc_LadspaFXSelector.o gui/src/moc_AudioEngineInfoForm.o gui/src/Mixer/moc_Mixer.o gui/src/moc_PreferencesDialog.o gui/src/moc_InstrumentRack.o gui/src/SoundLibrary/moc_SoundLibraryExportDialog.o gui/src/AudioFileBrowser/moc_AudioFileBrowser.o gui/src/PatternEditor/moc_PatternEditorInstrumentList.o gui/src/widgets/moc_DownloadWidget.o gui/src/widgets/moc_Button.o gui/src/widgets/moc_Rotary.o gui/src/PatternEditor/moc_PatternEditorPanel.o gui/src/widgets/moc_ClickableLabel.o gui/src/PatternEditor/moc_PatternEditorRuler.o gui/src/moc_MainForm.o gui/src/SoundLibrary/moc_SoundLibraryPropertiesDialog.o gui/src/moc_SongPropertiesDialog.o gui/src/InstrumentEditor/moc_WaveDisplay.o gui/src/PatternEditor/moc_NotePropertiesRuler.o gui/src/SoundLibrary/moc_FileBrowser.o gui/src/moc_PatternFillDialog.o gui/src/widgets/moc_LCDCombo.o gui/src/PatternEditor/moc_DrumPatternEditor.o gui/src/SongEditor/moc_SongEditorPanel.o gui/src/InstrumentEditor/moc_LayerPreview.o gui/src/widgets/moc_LCD.o gui/src/widgets/moc_Fader.o gui/src/InstrumentEditor/moc_InstrumentEditorPanel.o gui/src/widgets/moc_MidiSenseWidget.o gui/src/SoundLibrary/moc_SoundLibrarySaveDialog.o gui/src/widgets/moc_MidiActivityWidget.o gui/src/SoundLibrary/moc_SoundLibraryPanel.o gui/src/widgets/moc_CpuLoadWidget.o gui/src/moc_LadspaFXProperties.o gui/src/AudioFileBrowser/moc_SampleWaveDisplay.o gui/src/SoundLibrary/moc_SoundLibraryTree.o gui/src/PlaylistEditor/moc_PlaylistDialog.o -L/opt/local/lib/qt4-mac/lib -L/opt/local/lib/qt4-mac/lib -L3rdparty\libsndfile-1_0_17 "-LC:\Program Files\GnuWin32\lib" -lQtCore -lQtGui -lQtNetwork -lQtXml libhydrogen.a -lsndfile -lFLAC -lFLAC++ -ltar -lz
ld: unknown option: -enable-stdcall-fixup
collect2: ld returned 1 exit status
scons: *** [hydrogen] Error 1
scons: building terminated because of errors.
[/color]

Any suggestions?

== EDIT ==
A little searching on "ld: unknown option: -enable-stdcall-fixup" shows that instead of "-enable-stdcall-fixup" it should be "--enable-stdcall-fixup" (with an extra -). Could that be it? What file to edit for this? Thanks, I feel I am almost there now :)!

== EDIT 2 ==
I found lines 285 - 290 in the "Sconstruct" file contain this command. I changed this and the next two LINKFLAGS from - to --. I no longer get the error "ld: unknown option: -enable-stdcall-fixup". Now I get the error "ld: file not found: " [which file not found??]. I have the feeling it has something to do with Windows-based syntax in the following lines of the Sconstruct file (289 and 290). I already tried changing the path to "3rdparty/libsndfile-1.0.17" but that wouldn't help.

mauser
Offline
Joined: 03/30/2010

Hi!

Can you please post the whole error message?
And have you tried qmake instead of scons? I

darthvim
Offline
Joined: 04/17/2010

i have installed qt4-mac and qt from their dev website but still get
errors caused by qt just like it isn't installed

scons: Reading SConscript files ...

scons: warning: The Options class is deprecated; use the Variables class instead.
File "/Users/master/hyd/branches/new_fx_rack_and_sample_fun/SConstruct", line 319, in
* Downloading required 3rdparty libraries
Checking for C header file sndfile.h... (cached) yes
Checking for C header file jack/jack.h... (cached) yes
Checking for C header file zlib.h... (cached) yes
Checking for C header file libtar.h... (cached) yes

=================================================================
Hydrogen build script

Revision: exported
Platform: darwin
Release build
Prefix: /usr/local
Destdir:
=================================================================
Feature Overview:

lash: disabled
oss: enabled
alsa: disabled
jack: enabled
libarchive: disabled
portaudio: disabled
portmidi: disabled
coreaudio: enabled

=================================================================

scons: done reading SConscript files.
scons: Building targets ...
Retrieved `gui/src/UI/ui_PatternFillDialog_UI.h' from cache
Retrieved `gui/src/UI/ui_PatternPropertiesDialog_UI.h' from cache
Retrieved `gui/src/UI/ui_SongPropertiesDialog_UI.h' from cache
Retrieved `gui/src/SongEditor/ui_SongEditorPanelBpmWidget_UI.h' from cache
g++ -o gui/src/SongEditor/SongEditor.o -c -O3 -fomit-frame-pointer -funroll-loops -DOSS_SUPPORT -DJACK_SUPPORT -DCOREAUDIO_SUPPORT -DLADSPA_SUPPORT -DQT_CORE_LIB -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_XML_LIB -I. -Igui/src -I3rdparty/install/include -I/sw/include -I/usr/local/include -Ilibs/hydrogen/include -Igui/src/UI -I/Developer/qt/include/qt4 -I/Developer/qt/include/qt4/QtCore -I/Developer/qt/include/qt4/QtGui -I/Developer/qt/include/qt4/QtNetwork -I/Developer/qt/include/qt4/QtXml gui/src/SongEditor/SongEditor.cpp
In file included from gui/src/SongEditor/SongEditor.cpp:27:
libs/hydrogen/include/hydrogen/Song.h:27:19: error: QString: No such file or directory
In file included from libs/hydrogen/include/hydrogen/Song.h:31,
from gui/src/SongEditor/SongEditor.cpp:27:
libs/hydrogen/include/hydrogen/Object.h:31:17: error: QtGui: No such file or directory
In file included from gui/src/SongEditor/../Skin.h:26,
from gui/src/SongEditor/SongEditor.cpp:48:
libs/hydrogen/include/hydrogen/data_path.h:31:18: error: QtCore: No such file or directory
libs/hydrogen/include/hydrogen/Object.h:66: error: ISO C++ forbids declaration of ?list? with no type
libs/hydrogen/include/hydrogen/Object.h:66: error: typedef name may not be a nested-name-specifier
libs/hydrogen/include/hydrogen/Object.h:66: error: expected ?;? before ?<? token
libs/hydrogen/include/hydrogen/Object.h:80: error: expected ?,? or ?...? before ?&? token
libs/hydrogen/include/hydrogen/Object.h:80: error: ISO C++ forbids declaration of ?QString? with no type
libs/hydrogen/include/hydrogen/Object.h:106: error: ?queue_t? does not name a type
libs/hydrogen/include/hydrogen/Object.h:124: error: expected ?,? or ?...? before ?&? token
libs/hydrogen/include/hydrogen/Object.h:124: error: ISO C++ forbids declaration of ?QString? with no type
libs/hydrogen/include/hydrogen/Object.h:130: error: ISO C++ forbids declaration of ?QString? with no type
libs/hydrogen/include/hydrogen/Object.h:130: error: expected ?;? before ?&? token

and a lot more ... qt errors

joostjodel
Offline
Joined: 04/17/2010

> Can you please post the whole error message?
> And have you tried qmake instead of scons? I

building with scons
When building with scons I get stuck at this point:

[color=red]
macmichiel:win_port michiel$ sudo scons
Password:
scons: Reading SConscript files ...

scons: warning: The Options class is deprecated; use the Variables class instead.
File "/opt/local/var/macports/build/_Users_michiel_builds_audio_hydrogen/work/win_port/SConstruct", line 331, in
['./', 'gui/src/', '3rdparty/install/include', ['/opt/local/include', '/usr/local/include']]
* Downloading required 3rdparty libraries
Checking for C header file sndfile.h... (cached) yes
Checking for C header file zlib.h... (cached) yes
Checking for C header file libtar.h... (cached) yes
Checking for C header file FLAC/all.h... (cached) yes

=================================================================
Hydrogen build script

Revision: 1288M
Platform: darwin
Release build
Prefix: /usr/local
Destdir:
=================================================================
Feature Overview:

lash: disabled
oss: disabled
alsa: disabled
jack: disabled
libarchive: disabled
portaudio: disabled
portmidi: disabled
coreaudio: enabled

=================================================================

scons: warning: QTDIR variable is not defined, using moc executable as a hint (QTDIR=/opt/local/lib/qt4-mac)
File "/opt/local/var/macports/build/_Users_michiel_builds_audio_hydrogen/work/win_port/qt4.py", line 207, in _detect

scons: warning: QTDIR variable is not defined, using moc executable as a hint (QTDIR=/opt/local/lib/qt4-mac)
File "/opt/local/var/macports/build/_Users_michiel_builds_audio_hydrogen/work/win_port/qt4.py", line 207, in _detect
scons: done reading SConscript files.
scons: Building targets ...
g++ -o hydrogen -L/opt/local/lib -F/opt/local/lib -F/opt/local/lib/qt4-mac/lib -L/usr/local/lib -F/opt/local/lib/qt4-mac/lib -L/opt/local/lib/qt4-mac/lib -framework ApplicationServices -framework AudioUnit -framework Coreaudio --enable-stdcall-fixup -Wl, --enable-auto-import -Wl, --enable-runtime-pseudo-reloc -mthreads -Wl -Wl, --subsystem,darwin gui/src/SongEditor/SongEditor.o gui/src/AboutDialog.o gui/src/SoundLibrary/SoundLibraryImportDialog.o gui/src/SoundLibrary/SoundLibraryRepositoryDialog.o gui/src/PlayerControl.o gui/src/widgets/midiTable.o gui/src/ExportSongDialog.o gui/src/HelpBrowser.o gui/src/SplashScreen.o gui/src/HydrogenApp.o gui/src/InstrumentEditor/InstrumentEditor.o gui/src/Mixer/MixerLine.o gui/src/PatternPropertiesDialog.o gui/src/LadspaFXSelector.o gui/src/AudioEngineInfoForm.o gui/src/Mixer/Mixer.o gui/src/PreferencesDialog.o gui/src/InstrumentRack.o gui/src/SoundLibrary/SoundLibraryExportDialog.o gui/src/AudioFileBrowser/AudioFileBrowser.o gui/src/PatternEditor/PatternEditorInstrumentList.o gui/src/main.o gui/src/widgets/DownloadWidget.o gui/src/widgets/Button.o gui/src/widgets/Rotary.o gui/src/PatternEditor/PatternEditorPanel.o gui/src/widgets/ClickableLabel.o gui/src/PatternEditor/PatternEditorRuler.o gui/src/MainForm.o gui/src/PatternEditor/PianoRollEditor.o gui/src/SoundLibrary/SoundLibraryPropertiesDialog.o gui/src/SongPropertiesDialog.o gui/src/InstrumentEditor/WaveDisplay.o gui/src/PatternEditor/NotePropertiesRuler.o gui/src/widgets/PixmapWidget.o gui/src/SoundLibrary/FileBrowser.o gui/src/PatternFillDialog.o gui/src/widgets/LCDCombo.o gui/src/PatternEditor/DrumPatternEditor.o gui/src/SongEditor/SongEditorPanel.o gui/src/InstrumentEditor/LayerPreview.o gui/src/widgets/LCD.o gui/src/widgets/Fader.o gui/src/InstrumentEditor/InstrumentEditorPanel.o gui/src/widgets/MidiSenseWidget.o gui/src/SoundLibrary/SoundLibrarySaveDialog.o gui/src/widgets/MidiActivityWidget.o gui/src/SoundLibrary/SoundLibraryPanel.o gui/src/widgets/CpuLoadWidget.o gui/src/LadspaFXProperties.o gui/src/AudioFileBrowser/SampleWaveDisplay.o gui/src/SoundLibrary/SoundLibraryTree.o gui/src/PlaylistEditor/PlaylistDialog.o gui/src/SongEditor/moc_SongEditor.o gui/src/moc_AboutDialog.o gui/src/SoundLibrary/moc_SoundLibraryImportDialog.o gui/src/SoundLibrary/moc_SoundLibraryRepositoryDialog.o gui/src/moc_PlayerControl.o gui/src/widgets/moc_midiTable.o gui/src/moc_ExportSongDialog.o gui/src/moc_HelpBrowser.o gui/src/moc_SplashScreen.o gui/src/moc_HydrogenApp.o gui/src/InstrumentEditor/moc_InstrumentEditor.o gui/src/Mixer/moc_MixerLine.o gui/src/moc_PatternPropertiesDialog.o gui/src/moc_LadspaFXSelector.o gui/src/moc_AudioEngineInfoForm.o gui/src/Mixer/moc_Mixer.o gui/src/moc_PreferencesDialog.o gui/src/moc_InstrumentRack.o gui/src/SoundLibrary/moc_SoundLibraryExportDialog.o gui/src/AudioFileBrowser/moc_AudioFileBrowser.o gui/src/PatternEditor/moc_PatternEditorInstrumentList.o gui/src/widgets/moc_DownloadWidget.o gui/src/widgets/moc_Button.o gui/src/widgets/moc_Rotary.o gui/src/PatternEditor/moc_PatternEditorPanel.o gui/src/widgets/moc_ClickableLabel.o gui/src/PatternEditor/moc_PatternEditorRuler.o gui/src/moc_MainForm.o gui/src/SoundLibrary/moc_SoundLibraryPropertiesDialog.o gui/src/moc_SongPropertiesDialog.o gui/src/InstrumentEditor/moc_WaveDisplay.o gui/src/PatternEditor/moc_NotePropertiesRuler.o gui/src/SoundLibrary/moc_FileBrowser.o gui/src/moc_PatternFillDialog.o gui/src/widgets/moc_LCDCombo.o gui/src/PatternEditor/moc_DrumPatternEditor.o gui/src/SongEditor/moc_SongEditorPanel.o gui/src/InstrumentEditor/moc_LayerPreview.o gui/src/widgets/moc_LCD.o gui/src/widgets/moc_Fader.o gui/src/InstrumentEditor/moc_InstrumentEditorPanel.o gui/src/widgets/moc_MidiSenseWidget.o gui/src/SoundLibrary/moc_SoundLibrarySaveDialog.o gui/src/widgets/moc_MidiActivityWidget.o gui/src/SoundLibrary/moc_SoundLibraryPanel.o gui/src/widgets/moc_CpuLoadWidget.o gui/src/moc_LadspaFXProperties.o gui/src/AudioFileBrowser/moc_SampleWaveDisplay.o gui/src/SoundLibrary/moc_SoundLibraryTree.o gui/src/PlaylistEditor/moc_PlaylistDialog.o -L/opt/local/lib/qt4-mac/lib -L/opt/local/lib/qt4-mac/lib -L3rdparty/libsndfile-1.0.17/src -L/opt/local/lib -lQtCore -lQtGui -lQtNetwork -lQtXml libhydrogen.a -lsndfile -lFLAC -lFLAC++ -ltar -lz
ld: file not found:
collect2: ld returned 1 exit status
scons: *** [hydrogen] Error 1
scons: building terminated because of errors.
[/color]

I have modified the Sconstruct file a little as follows (lines 285-287) to try to deal with the previous error message from my last post saying "ld: unknown option: -enable-stdcall-fixup".

[color=red]
env.Append( LINKFLAGS = [ '--enable-stdcall-fixup','-Wl,' ] )
env.Append( LINKFLAGS = [ '--enable-auto-import','-Wl,' ] )
env.Append( LINKFLAGS = [ '--enable-runtime-pseudo-reloc','-mthreads','-Wl','-Wl,' ] )
[/color]

As you can see I added an extra "-" but now I get that error message "ld: file not found: ". Then I tried changing some things in the lines 288-290 because it seemed windows-like. Was:
[color=red]
env.Append( LINKFLAGS = [ '-subsystem,windows' ] )
env.Append( LIBPATH = '3rdparty\libsndfile-1_0_17' )
env.Append( LIBPATH = 'C:\Program Files\GnuWin32\lib' )
[/color]

changing into:
[color=red]
env.Append( LINKFLAGS = [ '--subsystem,darwin' ] )
env.Append( LIBPATH = '3rdparty/libsndfile-1.0.17/src' )
env.Append( LIBPATH = '/opt/local/lib' )
[/color]

But I keep getting the same error message "ld: file not found: ".

By the way, earlier I edited line 91 of the Sconstruct file to point to the QT path. This finally made compiling work but maybe I did it wrong, and now the linker is looking for a non-existing file?

ldflags.append( [ '-L/opt/local/lib', '-F/opt/local/lib', '-F/opt/local/lib/qt4-mac/lib', '-L/usr/local/lib' ] )

joostjodel
Offline
Joined: 04/17/2010

building with qmake
First I did:

[color=red]
macmichiel:win_port michiel$ qmake
Failure to open file: /opt/local/var/macports/build/_Users_michiel_builds_audio_hydrogen/work/win_port/Makefile
Unable to generate makefile for: /opt/local/var/macports/build/_Users_michiel_builds_audio_hydrogen/work/win_port/all.pro
macmichiel:win_port michiel$ sudo qmake
Password:
[/color]

...and got a Makefile in the root directory (see attachment). Then I try to compile with make and get the following error message:

[color=red]
macmichiel:win_port michiel$ sudo make
cd plugins/ && make -f Makefile
cd wasp/ && make -f Makefile
cd wasp_booster/ && make -f Makefile
make[3]: Nothing to be done for `first'.
cd wasp_noisifier/ && make -f Makefile
make[3]: Nothing to be done for `first'.
cd wasp_xshaper/ && make -f Makefile
make[3]: Nothing to be done for `first'.
cd libs/ && make -f Makefile
cd hydrogen/ && make -f Makefile
/usr/bin/g++-4.0 -c -include objs/libhydrogen -pipe -g -g -Wall -gdwarf-2 -fPIC -Wall -W -arch i386 -DLADSPA_SUPPORT -DFLAC_SUPPORT -DCOREAUDIO_SUPPORT -DCOREMIDI_SUPPORT -DQT_GUI_LIB -DQT_CORE_LIB -DQT_SHARED -I/opt/local/libexec/qt4-mac/mkspecs/macx-g++ -I. -I/opt/local/libexec/qt4-mac/lib/QtCore.framework/Versions/4/Headers -I/opt/local/libexec/qt4-mac/include/QtCore -I/opt/local/libexec/qt4-mac/lib/QtGui.framework/Versions/4/Headers -I/opt/local/libexec/qt4-mac/include/QtGui -I/opt/local/libexec/qt4-mac/include -I../.. -Iinclude -I. -I. -F/opt/local/libexec/qt4-mac/lib -o objs/hydrogen.o src/hydrogen.cpp
In file included from src/hydrogen.cpp:73:
src/IO/DiskWriterDriver.h:26:21: error: sndfile.h: No such file or directory
src/hydrogen.cpp: In function 'int H2Core::audioEngine_process(uint32_t, void*)':
src/hydrogen.cpp:885: warning: unused variable 'fLadspaTime'
make[2]: *** [objs/hydrogen.o] Error 1
make[1]: *** [sub-hydrogen-make_default] Error 2
make: *** [sub-libs-make_default] Error 2
[/color]

Now there seems an issue with sndfile..

joostjodel
Offline
Joined: 04/17/2010

Doing a fresh "port install hydrogen" (and commenting out the lines in the coreaudiodriver.cpp file) gives me the following error:

[color=red]
macmichiel:hydrogen michiel$ sudo port install hydrogen---> Fetching hydrogen---> Verifying checksum(s) for hydrogen---> Extracting hydrogen---> Configuring hydrogen
Error: Target org.macports.configure returned: configure failure: shell command " cd "/opt/local/var/macports/build/_Users_michiel_builds_audio_hydrogen/work/win_port" && ./configure " returned error 127
Command output: sh: ./configure: No such file or directory

Error: Status 1 encountered during processing.
macmichiel:hydrogen michiel$ cd "/opt/local/var/macports/build/_Users_michiel_builds_audio_hydrogen/work/win_port"
macmichiel:win_port michiel$
macmichiel:win_port michiel$
macmichiel:win_port michiel$
macmichiel:win_port michiel$ qmake
Failure to open file: /opt/local/var/macports/build/_Users_michiel_builds_audio_hydrogen/work/win_port/Makefile
Unable to generate makefile for: /opt/local/var/macports/build/_Users_michiel_builds_audio_hydrogen/work/win_port/all.pro
macmichiel:win_port michiel$ sudo qmake
macmichiel:win_port michiel$ make
cd plugins/ && /opt/local/lib/qt4-mac/bin/qmake plugins.pro -macx -o Makefile
Failure to open file: /opt/local/var/macports/build/_Users_michiel_builds_audio_hydrogen/work/win_port/plugins/Makefile
Unable to generate makefile for: plugins.pro
make: *** [plugins/Makefile] Error 5
macmichiel:win_port michiel$ sudo make
cd plugins/ && /opt/local/lib/qt4-mac/bin/qmake plugins.pro -macx -o Makefile
cd plugins/ && make -f Makefile
cd wasp/ && /opt/local/lib/qt4-mac/bin/qmake wasp.pro -macx -o Makefile
cd wasp/ && make -f Makefile
cd wasp_booster/ && /opt/local/lib/qt4-mac/bin/qmake wasp_booster.pro -macx -o Makefile
cd wasp_booster/ && make -f Makefile
gcc -c -pipe -g -gdwarf-2 -arch i386 -Wall -W -fPIC -I/opt/local/libexec/qt4-mac/mkspecs/macx-g++ -I. -I/opt/local/libexec/qt4-mac/include -I../include -I. -o booster.o booster.c
booster.c:46: warning: unused parameter 'Descriptor'
booster.c:46: warning: unused parameter 'SampleRate'
rm -f libwasp_booster.1.0.0.dylib libwasp_booster.dylib libwasp_booster.1.dylib libwasp_booster.1.0.dylib
/usr/bin/g++-4.0 -headerpad_max_install_names -arch i386 -single_module -dynamiclib -compatibility_version 1.0 -current_version 1.0.0 -install_name libwasp_booster.1.dylib -o libwasp_booster.1.0.0.dylib booster.o -L/opt/local/libexec/qt4-mac/lib
ln -s libwasp_booster.1.0.0.dylib libwasp_booster.dylib
ln -s libwasp_booster.1.0.0.dylib libwasp_booster.1.dylib
ln -s libwasp_booster.1.0.0.dylib libwasp_booster.1.0.dylib
rm -f ../../libwasp_booster.1.0.0.dylib
rm -f ../../libwasp_booster.dylib
rm -f ../../libwasp_booster.1.dylib
rm -f ../../libwasp_booster.1.0.dylib
mv -f libwasp_booster.1.0.0.dylib libwasp_booster.dylib libwasp_booster.1.dylib libwasp_booster.1.0.dylib ../../
cd wasp_noisifier/ && /opt/local/lib/qt4-mac/bin/qmake wasp_noisifier.pro -macx -o Makefile
cd wasp_noisifier/ && make -f Makefile
gcc -c -pipe -g -gdwarf-2 -arch i386 -Wall -W -fPIC -I/opt/local/libexec/qt4-mac/mkspecs/macx-g++ -I. -I/opt/local/libexec/qt4-mac/include -I../include -I. -o noisifier.o noisifier.c
noisifier.c:50: warning: unused parameter 'Descriptor'
noisifier.c:50: warning: unused parameter 'SampleRate'
rm -f libwasp_noisifier.1.0.0.dylib libwasp_noisifier.dylib libwasp_noisifier.1.dylib libwasp_noisifier.1.0.dylib
/usr/bin/g++-4.0 -headerpad_max_install_names -arch i386 -single_module -dynamiclib -compatibility_version 1.0 -current_version 1.0.0 -install_name libwasp_noisifier.1.dylib -o libwasp_noisifier.1.0.0.dylib noisifier.o -L/opt/local/libexec/qt4-mac/lib
ln -s libwasp_noisifier.1.0.0.dylib libwasp_noisifier.dylib
ln -s libwasp_noisifier.1.0.0.dylib libwasp_noisifier.1.dylib
ln -s libwasp_noisifier.1.0.0.dylib libwasp_noisifier.1.0.dylib
rm -f ../../libwasp_noisifier.1.0.0.dylib
rm -f ../../libwasp_noisifier.dylib
rm -f ../../libwasp_noisifier.1.dylib
rm -f ../../libwasp_noisifier.1.0.dylib
mv -f libwasp_noisifier.1.0.0.dylib libwasp_noisifier.dylib libwasp_noisifier.1.dylib libwasp_noisifier.1.0.dylib ../../
cd wasp_xshaper/ && /opt/local/lib/qt4-mac/bin/qmake wasp_xshaper.pro -macx -o Makefile
cd wasp_xshaper/ && make -f Makefile
gcc -c -pipe -g -gdwarf-2 -arch i386 -Wall -W -fPIC -I/opt/local/libexec/qt4-mac/mkspecs/macx-g++ -I. -I/opt/local/libexec/qt4-mac/include -I../include -I. -o xshaper.o xshaper.c
xshaper.c:78: warning: unused parameter 'Descriptor'
rm -f libwasp_xshaper.1.0.0.dylib libwasp_xshaper.dylib libwasp_xshaper.1.dylib libwasp_xshaper.1.0.dylib
/usr/bin/g++-4.0 -headerpad_max_install_names -arch i386 -single_module -dynamiclib -compatibility_version 1.0 -current_version 1.0.0 -install_name libwasp_xshaper.1.dylib -o libwasp_xshaper.1.0.0.dylib xshaper.o -L/opt/local/libexec/qt4-mac/lib
ln -s libwasp_xshaper.1.0.0.dylib libwasp_xshaper.dylib
ln -s libwasp_xshaper.1.0.0.dylib libwasp_xshaper.1.dylib
ln -s libwasp_xshaper.1.0.0.dylib libwasp_xshaper.1.0.dylib
rm -f ../../libwasp_xshaper.1.0.0.dylib
rm -f ../../libwasp_xshaper.dylib
rm -f ../../libwasp_xshaper.1.dylib
rm -f ../../libwasp_xshaper.1.0.dylib
mv -f libwasp_xshaper.1.0.0.dylib libwasp_xshaper.dylib libwasp_xshaper.1.dylib libwasp_xshaper.1.0.dylib ../../
cd libs/ && /opt/local/lib/qt4-mac/bin/qmake libs.pro -macx -o Makefile
cd libs/ && make -f Makefile
cd hydrogen/ && /opt/local/lib/qt4-mac/bin/qmake hydrogen.pro -macx -o Makefile
cd hydrogen/ && make -f Makefile
/usr/bin/g++-4.0 -pipe -g -g -Wall -gdwarf-2 -fPIC -Wall -W -arch i386 -DLADSPA_SUPPORT -DFLAC_SUPPORT -DCOREAUDIO_SUPPORT -DCOREMIDI_SUPPORT -DQT_GUI_LIB -DQT_CORE_LIB -DQT_SHARED -I/opt/local/libexec/qt4-mac/mkspecs/macx-g++ -I. -I/opt/local/libexec/qt4-mac/lib/QtCore.framework/Versions/4/Headers -I/opt/local/libexec/qt4-mac/include/QtCore -I/opt/local/libexec/qt4-mac/lib/QtGui.framework/Versions/4/Headers -I/opt/local/libexec/qt4-mac/include/QtGui -I/opt/local/libexec/qt4-mac/include -I../.. -Iinclude -I. -I. -F/opt/local/libexec/qt4-mac/lib -x c++-header -c src/precompiled.h -o objs/libhydrogen.gch/c++
gcc -pipe -g -gdwarf-2 -fPIC -Wall -W -arch i386 -DLADSPA_SUPPORT -DFLAC_SUPPORT -DCOREAUDIO_SUPPORT -DCOREMIDI_SUPPORT -DQT_GUI_LIB -DQT_CORE_LIB -DQT_SHARED -I/opt/local/libexec/qt4-mac/mkspecs/macx-g++ -I. -I/opt/local/libexec/qt4-mac/lib/QtCore.framework/Versions/4/Headers -I/opt/local/libexec/qt4-mac/include/QtCore -I/opt/local/libexec/qt4-mac/lib/QtGui.framework/Versions/4/Headers -I/opt/local/libexec/qt4-mac/include/QtGui -I/opt/local/libexec/qt4-mac/include -I../.. -Iinclude -I. -I. -F/opt/local/libexec/qt4-mac/lib -x objective-c++-header -c src/precompiled.h -o objs/libhydrogen.gch/objective-c++
/usr/bin/g++-4.0 -c -include objs/libhydrogen -pipe -g -g -Wall -gdwarf-2 -fPIC -Wall -W -arch i386 -DLADSPA_SUPPORT -DFLAC_SUPPORT -DCOREAUDIO_SUPPORT -DCOREMIDI_SUPPORT -DQT_GUI_LIB -DQT_CORE_LIB -DQT_SHARED -I/opt/local/libexec/qt4-mac/mkspecs/macx-g++ -I. -I/opt/local/libexec/qt4-mac/lib/QtCore.framework/Versions/4/Headers -I/opt/local/libexec/qt4-mac/include/QtCore -I/opt/local/libexec/qt4-mac/lib/QtGui.framework/Versions/4/Headers -I/opt/local/libexec/qt4-mac/include/QtGui -I/opt/local/libexec/qt4-mac/include -I../.. -Iinclude -I. -I. -F/opt/local/libexec/qt4-mac/lib -o objs/action.o src/action.cpp
In file included from src/action.cpp:27:
../../gui/src/HydrogenApp.h:26:20: error: config.h: No such file or directory
make[2]: *** [objs/action.o] Error 1
make[1]: *** [sub-hydrogen-make_default] Error 2
make: *** [sub-libs-make_default] Error 2
[/color]

joostjodel
Offline
Joined: 04/17/2010

By the way, just to see what would happen, I just successfully compiled Hydrogen trunk svn1288 (so not the win_ports branch version) on an old P3 Linux computer running Ubuntu. This was very easy to do with scons.

darthvim
Offline
Joined: 04/17/2010

i got now that far ;)

Feature Overview:

lash: disabled
oss: disabled
alsa: disabled
jack: enabled
libarchive: disabled
portaudio: disabled
portmidi: disabled
coreaudio: enabled

=================================================================

scons: done reading SConscript files.
scons: Building targets ...
g++ -o libs/hydrogen/src/IO/coreaudio_driver.o -c -O3 -fomit-frame-pointer -funroll-loops -DJACK_SUPPORT -DCOREAUDIO_SUPPORT -DLADSPA_SUPPORT -DQT_CORE_LIB -DQT_GUI_LIB -I. -Igui/src -I3rdparty/install/include -I/sw/include -I/usr/local/include -Ilibs/hydrogen/include -I/Developer/qt/include/qt4 -I/Developer/qt/include/qt4/QtCore -I/Developer/qt/include/qt4/QtGui libs/hydrogen/src/IO/coreaudio_driver.cpp
libs/hydrogen/src/IO/coreaudio_driver.cpp: In constructor ?H2Core::CoreAudioDriver::CoreAudioDriver(int (*)(uint32_t, void*))?:
libs/hydrogen/src/IO/coreaudio_driver.cpp:107: error: ?to_string? was not declared in this scope
libs/hydrogen/src/IO/coreaudio_driver.cpp:118: error: ?to_string? was not declared in this scope
libs/hydrogen/src/IO/coreaudio_driver.cpp:119: error: ?to_string? was not declared in this scope
libs/hydrogen/src/IO/coreaudio_driver.cpp:120: error: ?to_string? was not declared in this scope
libs/hydrogen/src/IO/coreaudio_driver.cpp:121: error: ?to_string? was not declared in this scope
libs/hydrogen/src/IO/coreaudio_driver.cpp:122: error: ?to_string? was not declared in this scope
libs/hydrogen/src/IO/coreaudio_driver.cpp:123: error: ?to_string? was not declared in this scope
scons: *** [libs/hydrogen/src/IO/coreaudio_driver.o] Error 1
scons: building terminated because of errors.

as far as i know i have installed xcode with coreaudio sdk... but why do i get this error message ...

darthvim
Offline
Joined: 04/17/2010

somehow i have to set the coreaudio framework and audiounits directory - HELP PLEASE ;)

joostjodel
Offline
Joined: 04/17/2010

@darthvim
If you would have taken the effort to read this thread you would have found the answer to your question already given by mauser a few posts back, because I posted exactly the same error report as you did! :-)

[i]
Or you can fix them by yourself: Open libs/hydrogen/src/IO/coreaudio_driver.cpp and remove all lines which include "to_string".
It was just used for debugging, so its safe to remove.
Remove this lines: 107 and 118 - 123
[/i]

What I did was commenting out these lines by putting "//" in front.
Good luck compiling!

darthvim
Offline
Joined: 04/17/2010

my eyes would ache ;)

thanks i will try that later

mauser
Offline
Joined: 03/30/2010

Hi,

the error is now fixed in trunk and the win_ports branche. It would be cool if someone could fetch the new code and see if it compiles without the need to remove stuff :)

If qmake says "config.h" not found, please run scons a single time, because config.h is a file which gets created by scons. Or copy it from an other folder , if you don't have deleted your scons tries..

if qmake says "sndfile.h" not found, this means that you have to provide the path of libsndfile to qmake. Just search for "sndfile" in the directory and you will find some example how to set the include AND libpath for sndfile.

Hope that helps,
Sebastian

darthvim
Offline
Joined: 04/17/2010

i used still the wolke brach, cause i want midi out ;)

after commenting out i get :

ranlib: file: libhydrogen.a(alsa_audio_driver.o) has no symbols
ranlib: file: libhydrogen.a(coremidi_driver.o) has no symbols
ranlib: file: libhydrogen.a(timehelper.o) has no symbols
....

which seems to be like a warning
and

....
QtNetwork -lQtXml libhydrogen.a -lsndfile -ljack -ltar -lz
ld: library not found for -lQtCore
collect2: ld returned 1 exit status
scons: *** [hydrogen] Error 1
scons: building terminated because of errors.

joostjodel
Offline
Joined: 04/17/2010

mauser wrote:
> the error is now fixed in trunk and the win_ports branche. It would be
> cool if someone could fetch the new code and see if it compiles without
> the need to remove stuff :)

The qmake ; make process of the win_ports branch (svn1290) leads to a similar error as I had earlier, in file src/IO/coremidi_driver.cpp, lines 49 and 80:
[color=red]
src/IO/coremidi_driver.cpp: In function 'void H2Core::midiProc(const MIDIPacketList*, void*, void*)':
src/IO/coremidi_driver.cpp:49: error: 'to_string' was not declared in this scope
src/IO/coremidi_driver.cpp:80: error: 'to_string' was not declared in this scope
[/color]

I commented these lines out, and the compiling could continue..

> if qmake says "sndfile.h" not found, this means that you have to provide the path of libsndfile to qmake. Just search for "sndfile" in the directory and you will find
> some example how to set the include AND libpath for sndfile.
These directions were a bit vague to me, what "directory" do you mean? How come libsndfile is in the 3rdparty directory but qmake/make can't find it? It took me a long time to find out what to do here. What finally worked for me was copying the header files from 3rdparty/install/include to libs/hydrogen/include and - just to be sure - to libs/hydrogen/libs.

Finally, all seems to compile, but again in the linking phase I get this error:
[color=red]
/usr/bin/g++-4.0 -headerpad_max_install_names -arch i386 -o ../Hydrogen.app/Contents/MacOS/Hydrogen objs/AboutDialog.o objs/version.o objs/AudioEngineInfoForm.o objs/ExportSongDialog.o objs/HelpBrowser.o objs/HydrogenApp.o objs/InstrumentRack.o objs/LadspaFXProperties.o objs/LadspaFXSelector.o objs/main.o objs/MainForm.o objs/PatternFillDialog.o objs/PatternPropertiesDialog.o objs/PlayerControl.o objs/PreferencesDialog.o objs/SongPropertiesDialog.o objs/SplashScreen.o objs/AudioFileBrowser.o objs/SampleWaveDisplay.o objs/InstrumentEditor.o objs/InstrumentEditorPanel.o objs/LayerPreview.o objs/WaveDisplay.o objs/Mixer.o objs/MixerLine.o objs/DrumPatternEditor.o objs/NotePropertiesRuler.o objs/PatternEditorInstrumentList.o objs/PatternEditorPanel.o objs/PatternEditorRuler.o objs/PianoRollEditor.o objs/PlaylistDialog.o objs/SongEditor.o objs/SongEditorPanel.o objs/FileBrowser.o objs/SoundLibraryExportDialog.o objs/SoundLibraryImportDialog.o objs/SoundLibraryPanel.o objs/SoundLibraryPropertiesDialog.o objs/SoundLibraryRepositoryDialog.o objs/SoundLibrarySaveDialog.o objs/SoundLibraryTree.o objs/Button.o objs/ClickableLabel.o objs/CpuLoadWidget.o objs/DownloadWidget.o objs/Fader.o objs/LCD.o objs/LCDCombo.o objs/MidiActivityWidget.o objs/MidiSenseWidget.o objs/midiTable.o objs/PixmapWidget.o objs/Rotary.o objs/moc_AboutDialog.o objs/moc_AudioEngineInfoForm.o objs/moc_ExportSongDialog.o objs/moc_HelpBrowser.o objs/moc_HydrogenApp.o objs/moc_InstrumentRack.o objs/moc_LadspaFXProperties.o objs/moc_LadspaFXSelector.o objs/moc_MainForm.o objs/moc_PatternFillDialog.o objs/moc_PatternPropertiesDialog.o objs/moc_PlayerControl.o objs/moc_PreferencesDialog.o objs/moc_SongPropertiesDialog.o objs/moc_SplashScreen.o objs/moc_AudioFileBrowser.o objs/moc_SampleWaveDisplay.o objs/moc_InstrumentEditor.o objs/moc_InstrumentEditorPanel.o objs/moc_LayerPreview.o objs/moc_WaveDisplay.o objs/moc_Mixer.o objs/moc_MixerLine.o objs/moc_DrumPatternEditor.o objs/moc_NotePropertiesRuler.o objs/moc_PatternEditorInstrumentList.o objs/moc_PatternEditorPanel.o objs/moc_PatternEditorRuler.o objs/moc_PlaylistDialog.o objs/moc_SongEditor.o objs/moc_SongEditorPanel.o objs/moc_FileBrowser.o objs/moc_SoundLibraryExportDialog.o objs/moc_SoundLibraryImportDialog.o objs/moc_SoundLibraryPanel.o objs/moc_SoundLibraryPropertiesDialog.o objs/moc_SoundLibraryRepositoryDialog.o objs/moc_SoundLibrarySaveDialog.o objs/moc_SoundLibraryTree.o objs/moc_Button.o objs/moc_ClickableLabel.o objs/moc_CpuLoadWidget.o objs/moc_DownloadWidget.o objs/moc_Fader.o objs/moc_LCD.o objs/moc_LCDCombo.o objs/moc_MidiActivityWidget.o objs/moc_MidiSenseWidget.o objs/moc_midiTable.o objs/moc_Rotary.o -F/opt/local/libexec/qt4-mac/lib -L/opt/local/libexec/qt4-mac/lib -framework AudioUnit -framework AudioToolbox -framework CoreServices -framework CoreAudio -framework CoreMidi ../libs/liblibhydrogen.a C:\Program\ Files\GnuWin32\lib\libarchive.lib C:\Qt\2009.03\mingw\lib\libpthread.a C:\Documents\ and\ Settings\sebastian\Desktop\hydrogen\3rdparty\libsndfile-1_0_17\libsndfile-1.dll -framework QtXml -L/opt/local/lib -L/opt/local/libexec/qt4-mac/lib -F/opt/local/libexec/qt4-mac/lib -framework QtGui -framework Carbon -framework AppKit -lpng -framework QtNetwork -framework SystemConfiguration -lssl -lcrypto -framework QtCore -lz -lm -framework ApplicationServices
i686-apple-darwin9-g++-4.0.1: C:Program FilesGnuWin32liblibarchive.lib: No such file or directory
i686-apple-darwin9-g++-4.0.1: C:Qt2009.03mingwliblibpthread.a: No such file or directory
i686-apple-darwin9-g++-4.0.1: C:Documents and SettingssebastianDesktophydrogen3rdpartylibsndfile-1_0_17libsndfile-1.dll: No such file or directory
make[1]: *** [../Hydrogen.app/Contents/MacOS/Hydrogen] Error 1
make: *** [sub-gui-make_default] Error 2
[/color]

It seems the make process is looking for some Windows paths and files which of course aren't there...

joostjodel
Offline
Joined: 04/17/2010

Here I get almost the same error as darthvim (except that in my case "ld" does not specify what file it cannot find):

[color=red]
g++ -o hydrogen -L/opt/local/lib -F/opt/local/lib -F/opt/local/lib/qt4-mac/lib -L/usr/local/lib -F/opt/local/lib/qt4-mac/lib -L/opt/local/lib/qt4-mac/lib -framework ApplicationServices -framework AudioUnit -framework Coreaudio --enable-stdcall-fixup -Wl, --enable-auto-import -Wl, --enable-runtime-pseudo-reloc -mthreads -Wl -Wl, --subsystem,darwin gui/src/SongEditor/SongEditor.o gui/src/AboutDialog.o gui/src/SoundLibrary/SoundLibraryImportDialog.o gui/src/SoundLibrary/SoundLibraryRepositoryDialog.o gui/src/PlayerControl.o gui/src/widgets/midiTable.o gui/src/ExportSongDialog.o gui/src/HelpBrowser.o gui/src/SplashScreen.o gui/src/HydrogenApp.o gui/src/InstrumentEditor/InstrumentEditor.o gui/src/Mixer/MixerLine.o gui/src/PatternPropertiesDialog.o gui/src/LadspaFXSelector.o gui/src/AudioEngineInfoForm.o gui/src/Mixer/Mixer.o gui/src/PreferencesDialog.o gui/src/InstrumentRack.o gui/src/SoundLibrary/SoundLibraryExportDialog.o gui/src/AudioFileBrowser/AudioFileBrowser.o gui/src/PatternEditor/PatternEditorInstrumentList.o gui/src/main.o gui/src/widgets/DownloadWidget.o gui/src/widgets/Button.o gui/src/widgets/Rotary.o gui/src/PatternEditor/PatternEditorPanel.o gui/src/widgets/ClickableLabel.o gui/src/PatternEditor/PatternEditorRuler.o gui/src/MainForm.o gui/src/PatternEditor/PianoRollEditor.o gui/src/SoundLibrary/SoundLibraryPropertiesDialog.o gui/src/SongPropertiesDialog.o gui/src/InstrumentEditor/WaveDisplay.o gui/src/PatternEditor/NotePropertiesRuler.o gui/src/widgets/PixmapWidget.o gui/src/SoundLibrary/FileBrowser.o gui/src/PatternFillDialog.o gui/src/widgets/LCDCombo.o gui/src/PatternEditor/DrumPatternEditor.o gui/src/SongEditor/SongEditorPanel.o gui/src/InstrumentEditor/LayerPreview.o gui/src/widgets/LCD.o gui/src/widgets/Fader.o gui/src/InstrumentEditor/InstrumentEditorPanel.o gui/src/widgets/MidiSenseWidget.o gui/src/SoundLibrary/SoundLibrarySaveDialog.o gui/src/widgets/MidiActivityWidget.o gui/src/SoundLibrary/SoundLibraryPanel.o gui/src/widgets/CpuLoadWidget.o gui/src/LadspaFXProperties.o gui/src/AudioFileBrowser/SampleWaveDisplay.o gui/src/SoundLibrary/SoundLibraryTree.o gui/src/PlaylistEditor/PlaylistDialog.o gui/src/SongEditor/moc_SongEditor.o gui/src/moc_AboutDialog.o gui/src/SoundLibrary/moc_SoundLibraryImportDialog.o gui/src/SoundLibrary/moc_SoundLibraryRepositoryDialog.o gui/src/moc_PlayerControl.o gui/src/widgets/moc_midiTable.o gui/src/moc_ExportSongDialog.o gui/src/moc_HelpBrowser.o gui/src/moc_SplashScreen.o gui/src/moc_HydrogenApp.o gui/src/InstrumentEditor/moc_InstrumentEditor.o gui/src/Mixer/moc_MixerLine.o gui/src/moc_PatternPropertiesDialog.o gui/src/moc_LadspaFXSelector.o gui/src/moc_AudioEngineInfoForm.o gui/src/Mixer/moc_Mixer.o gui/src/moc_PreferencesDialog.o gui/src/moc_InstrumentRack.o gui/src/SoundLibrary/moc_SoundLibraryExportDialog.o gui/src/AudioFileBrowser/moc_AudioFileBrowser.o gui/src/PatternEditor/moc_PatternEditorInstrumentList.o gui/src/widgets/moc_DownloadWidget.o gui/src/widgets/moc_Button.o gui/src/widgets/moc_Rotary.o gui/src/PatternEditor/moc_PatternEditorPanel.o gui/src/widgets/moc_ClickableLabel.o gui/src/PatternEditor/moc_PatternEditorRuler.o gui/src/moc_MainForm.o gui/src/SoundLibrary/moc_SoundLibraryPropertiesDialog.o gui/src/moc_SongPropertiesDialog.o gui/src/InstrumentEditor/moc_WaveDisplay.o gui/src/PatternEditor/moc_NotePropertiesRuler.o gui/src/SoundLibrary/moc_FileBrowser.o gui/src/moc_PatternFillDialog.o gui/src/widgets/moc_LCDCombo.o gui/src/PatternEditor/moc_DrumPatternEditor.o gui/src/SongEditor/moc_SongEditorPanel.o gui/src/InstrumentEditor/moc_LayerPreview.o gui/src/widgets/moc_LCD.o gui/src/widgets/moc_Fader.o gui/src/InstrumentEditor/moc_InstrumentEditorPanel.o gui/src/widgets/moc_MidiSenseWidget.o gui/src/SoundLibrary/moc_SoundLibrarySaveDialog.o gui/src/widgets/moc_MidiActivityWidget.o gui/src/SoundLibrary/moc_SoundLibraryPanel.o gui/src/widgets/moc_CpuLoadWidget.o gui/src/moc_LadspaFXProperties.o gui/src/AudioFileBrowser/moc_SampleWaveDisplay.o gui/src/SoundLibrary/moc_SoundLibraryTree.o gui/src/PlaylistEditor/moc_PlaylistDialog.o -L/opt/local/lib/qt4-mac/lib -L/opt/local/lib/qt4-mac/lib -L3rdparty/libsndfile-1.0.17/src -L/opt/local/lib -lQtCore -lQtGui -lQtNetwork -lQtXml libhydrogen.a -lsndfile -lFLAC -lFLAC++ -ltar -lz
ld: file not found:
collect2: ld returned 1 exit status
scons: *** [hydrogen] Error 1
scons: building terminated because of errors.
[/color]

mauser
Offline
Joined: 03/30/2010

@joostjoodel:

Just open all .pro files and look for the strings "libarchive.lib" etc. and delete them..

joostjodel
Offline
Joined: 04/17/2010

@mauser
Thanks for your guidance so far!!
Did what you suggested. I now get the following error (also after doing "make clean", "qmake", "make" again).

[color=red]
/usr/bin/g++-4.0 -headerpad_max_install_names -arch i386 -o ../Hydrogen.app/Contents/MacOS/Hydrogen objs/AboutDialog.o objs/version.o objs/AudioEngineInfoForm.o objs/ExportSongDialog.o objs/HelpBrowser.o objs/HydrogenApp.o objs/InstrumentRack.o objs/LadspaFXProperties.o objs/LadspaFXSelector.o objs/main.o objs/MainForm.o objs/PatternFillDialog.o objs/PatternPropertiesDialog.o objs/PlayerControl.o objs/PreferencesDialog.o objs/SongPropertiesDialog.o objs/SplashScreen.o objs/AudioFileBrowser.o objs/SampleWaveDisplay.o objs/InstrumentEditor.o objs/InstrumentEditorPanel.o objs/LayerPreview.o objs/WaveDisplay.o objs/Mixer.o objs/MixerLine.o objs/DrumPatternEditor.o objs/NotePropertiesRuler.o objs/PatternEditorInstrumentList.o objs/PatternEditorPanel.o objs/PatternEditorRuler.o objs/PianoRollEditor.o objs/PlaylistDialog.o objs/SongEditor.o objs/SongEditorPanel.o objs/FileBrowser.o objs/SoundLibraryExportDialog.o objs/SoundLibraryImportDialog.o objs/SoundLibraryPanel.o objs/SoundLibraryPropertiesDialog.o objs/SoundLibraryRepositoryDialog.o objs/SoundLibrarySaveDialog.o objs/SoundLibraryTree.o objs/Button.o objs/ClickableLabel.o objs/CpuLoadWidget.o objs/DownloadWidget.o objs/Fader.o objs/LCD.o objs/LCDCombo.o objs/MidiActivityWidget.o objs/MidiSenseWidget.o objs/midiTable.o objs/PixmapWidget.o objs/Rotary.o objs/moc_AboutDialog.o objs/moc_AudioEngineInfoForm.o objs/moc_ExportSongDialog.o objs/moc_HelpBrowser.o objs/moc_HydrogenApp.o objs/moc_InstrumentRack.o objs/moc_LadspaFXProperties.o objs/moc_LadspaFXSelector.o objs/moc_MainForm.o objs/moc_PatternFillDialog.o objs/moc_PatternPropertiesDialog.o objs/moc_PlayerControl.o objs/moc_PreferencesDialog.o objs/moc_SongPropertiesDialog.o objs/moc_SplashScreen.o objs/moc_AudioFileBrowser.o objs/moc_SampleWaveDisplay.o objs/moc_InstrumentEditor.o objs/moc_InstrumentEditorPanel.o objs/moc_LayerPreview.o objs/moc_WaveDisplay.o objs/moc_Mixer.o objs/moc_MixerLine.o objs/moc_DrumPatternEditor.o objs/moc_NotePropertiesRuler.o objs/moc_PatternEditorInstrumentList.o objs/moc_PatternEditorPanel.o objs/moc_PatternEditorRuler.o objs/moc_PlaylistDialog.o objs/moc_SongEditor.o objs/moc_SongEditorPanel.o objs/moc_FileBrowser.o objs/moc_SoundLibraryExportDialog.o objs/moc_SoundLibraryImportDialog.o objs/moc_SoundLibraryPanel.o objs/moc_SoundLibraryPropertiesDialog.o objs/moc_SoundLibraryRepositoryDialog.o objs/moc_SoundLibrarySaveDialog.o objs/moc_SoundLibraryTree.o objs/moc_Button.o objs/moc_ClickableLabel.o objs/moc_CpuLoadWidget.o objs/moc_DownloadWidget.o objs/moc_Fader.o objs/moc_LCD.o objs/moc_LCDCombo.o objs/moc_MidiActivityWidget.o objs/moc_MidiSenseWidget.o objs/moc_midiTable.o objs/moc_Rotary.o -F/opt/local/libexec/qt4-mac/lib -L/opt/local/libexec/qt4-mac/lib -framework AudioUnit -framework AudioToolbox -framework CoreServices -framework CoreAudio -framework CoreMidi ../libs/liblibhydrogen.a -framework QtXml -L/opt/local/lib -L/opt/local/libexec/qt4-mac/lib -F/opt/local/libexec/qt4-mac/lib -framework QtGui -framework Carbon -framework AppKit -lpng -framework QtNetwork -framework SystemConfiguration -lssl -lcrypto -framework QtCore -lz -lm -framework ApplicationServices
Undefined symbols:
"FLAC::Decoder::Stream::process_until_end_of_metadata()", referenced from:
vtable for H2Core::FLACFile_realin liblibhydrogen.a(flac_file.o)
"_tar_close", referenced from:
H2Core::Drumkit::install(QString const&)in liblibhydrogen.a(sound_library.o)
"_jack_transport_locate", referenced from:
H2Core::JackOutput::locate(unsigned long)in liblibhydrogen.a(jack_output.o)
"_jack_set_process_callback", referenced from:
H2Core::JackOutput::init(unsigned int)in liblibhydrogen.a(jack_output.o)
"_sf_close", referenced from:
H2Core::Sample::load_wave(QString const&)in liblibhydrogen.a(sample.o)
H2Core::diskWriterDriver_thread(void*) in liblibhydrogen.a(disk_writer_driver.o)
"FLAC::Decoder::Stream::set_metadata_ignore_all()", referenced from:
vtable for H2Core::FLACFile_realin liblibhydrogen.a(flac_file.o)
"_jack_transport_stop", referenced from:
H2Core::JackOutput::stop() in liblibhydrogen.a(jack_output.o)
"FLAC::Decoder::Stream::set_metadata_respond_application(unsigned char const*)", referenced from:
vtable for H2Core::FLACFile_realin liblibhydrogen.a(flac_file.o)
"_sf_format_check", referenced from:
H2Core::diskWriterDriver_thread(void*) in liblibhydrogen.a(disk_writer_driver.o)
"_jack_port_name", referenced from:
H2Core::JackOutput::connect() in liblibhydrogen.a(jack_output.o)
H2Core::JackOutput::connect() in liblibhydrogen.a(jack_output.o)
H2Core::JackOutput::connect() in liblibhydrogen.a(jack_output.o)
H2Core::JackOutput::connect() in liblibhydrogen.a(jack_output.o)

ld: symbol(s) not found
collect2: ld returned 1 exit status
make[1]: *** [../Hydrogen.app/Contents/MacOS/Hydrogen] Error 1
make: *** [sub-gui-make_default] Error 2
[/color]

mauser
Offline
Joined: 03/30/2010

Well it's all about setting the right libary paths in the qmake file.
For example if your flac-library lives in "/opt/flac/", add the line
LIBS += /opt/flac.
With an "Undefined reference" error the compiler wants to say that he can't find the library which includes the symbol it is looking for..
Btw. i'm a little bit confused why you're compiling with jack support. Was this intentional? You can emable / disable it in features.pri.
If you can't get flac to work, you can disable it there, too..

joostjodel
Offline
Joined: 04/17/2010

mauser you're the man! :-)
Thanks for your very helpful hints. I just did not properly understand which file I had to edit in order to include external libraries... (I kept messing around with the Sconstruct file, and trying to add paths via the terminal to my bash profile).
So, Hydrogen (svn1290 win_ports branch) now actually compiles when I add the following stuff to the "features.pri" file, run "qmake" and "make" again (after "make clean"):

[color=red]
macx-g++ {
LIBS += -framework AudioUnit -framework AudioToolbox \
-framework CoreServices -framework CoreAudio -framework CoreMidi
LIBS += /opt/local/lib/libFLAC.dylib
LIBS += /opt/local/lib/libFLAC++.dylib
LIBS += /opt/local/lib/libjack.dylib
LIBS += /opt/local/lib/libtar.dylib
LIBS += /opt/local/lib/libpng.dylib
LIBS += /opt/local/lib/libsndfile.dylib
[/color]

It compiles smoothly without any errors. (as an answer to your question: I wanted to add jack support since I like to be able to route audio output into other programs..).

Yet with one (hopefully last) big problem... The interface looks all garbled. It does not properly show images I believe (see attachment: screenshot). While trying some things out earlier. I did have one -lpng error in the last phase, could that be it? I hoped adding the "LIBS += /opt/local/lib/libpng.dylib" line would help. It does indeed stop the error about -lpng but the interface still looks shite...
And a minor problem: in the preferences > audio system it says for every type of output "not compiled". Audio works fine though, through Coreaudio at least (did not yet test jack).
And, ok, a very small problem: no application icon shows up in the final Hydrogen.app bundle (even after running ./macos/fixlibs.sh).

== EDIT ==
OK my bad, I found that I had to manually copy the folders "data", "plugins" and file icon into the app bundle. I now seem to have a running recent version of Hydrogen for mac intel!! :). The audio system error remains though...
I'll play with it some more, see if I run into quirks, and then put it online for all you guys to download...
Thanks again mauser!

mauser
Offline
Joined: 03/30/2010

Hi!

Wow, great. I would be glad to merge your efforts with the win_ports branche ( maybe i should rename it to "qmake"-branch). That would make it easier for other people to compile hydrogen on mac..

I think we should do the following steps:

1) make sure that the information ( how to compile it ) gets not lost, so we have to put it on the wiki or something..

2) push the changes to macports

3) maybe get access to macports??

mauser
Offline
Joined: 03/30/2010

Hi!

I've merged now some changes to the win_ports branch. Please complain if i missed something or if the build fails..

joostjodel
Offline
Joined: 04/17/2010

Hi!
Yes, great indeed, and very rewarding after this heap of effort :). Thanks again for your guidance!

I agree with your suggestions:

ad 1) Let me take care of this step. First I will retry this whole thing from scratch, see what I run into, and write all that down. Second, I will report to you the issues I found so you can merge these into a newer version of the win_ports branch (good idea to rename to "qmake": "win_ports" suggests it's for windows only). Third, I will write a step by step manual on the wiki how to compile Hydrogen on the mac, so that everyone can reproduce. Fourth, I'll upload this newly-built version to a server as a binary download and post the link here.

ad 2 + 3) That would be great too. But I don't know what the best strategy is here. I mean, the guys at Macports do not seem awfully responsive to the ticket I posted earlier about updating the Hydrogen portfile....

wolke
wolke's picture
Offline
Joined: 03/30/2010

hiho :DDD

i have just compiled hydrogen on windows xp using qmake and mingw32-make. i remove all version stuff and all scons config.h includes.

- flac
-ladspa
+portaudio
-portmidi
+libarchive
in moment h2 plays all wav based library's and can import sondlibrary's using the new import widget. h2 import successfully local and serverlist based library's.

:-D

i am just working on midi and flac support.

greetings wolke

darthvim
Offline
Joined: 04/17/2010

which library could be missing have no idea...

...ileBrowser/moc_SampleWaveDisplay.o gui/src/SoundLibrary/moc_SoundLibraryTree.o gui/src/PlaylistEditor/moc_PlaylistDialog.o -L/Developer/qt/lib -L/Developer/qt/lib -L3rdparty\libsndfile-1_0_17 -Lbuild\pthreads\lib -lQtCore -lQtGui -lQtNetwork -lQtXml libhydrogen.a -lsndfile -ljack -ltar -lz
ld: library not found for -lQtCore
collect2: ld returned 1 exit status
scons: *** [hydrogen] Error 1
scons: building terminated because of errors.