Error building Ardour 2.5

I recently tried to build Ardour 2.5 but it gave the following error:
libs/ardour/globals.cc: In function ‘ARDOUR::microseconds_t ARDOUR::get_microseconds()’:
libs/ardour/globals.cc:386: error: ‘jack_get_time’ was not declared in this scope
scons: *** [libs/ardour/globals.os] Error 1
scons: building terminated because of errors.
Is this a syntax error or do I need a different version of g++?
Thanks in advance!

Before you do anything check your scons version. It should be 0.96 or 0.98.5. 0.96 is the recommended version (http://ardour.org/building) and I know 0.98.5 works (at least in openSUSE 11). 0.97 might also work but I haven’t tried it.

If you can get 0.105 for your distro you can try it (though I find it a bit strange 0.103 doesn’t work; it’s not that old) but you might need a newer one. I really don’t know.

To check out the latest jack make sure you have subversion installed and do a
‘svn co http://subversion.jackaudio.org/jack/trunk/jack
You’ll also need autoconf, automake and probably libtool (and perhaps m4) installed.
After that do a ./autogen.sh in the jack dir, and then the usual ‘./configure ; make ; make install’ (though I recommend the stow route I’ve described in this post: http://ardour.org/node/1921).

Hi,

What distro are you using? What version of scons? Supposedly one of the latest versions of scons can be buggy, I just successfully built Ardour 2.5 w/VST using scons 0.97 on Ubuntu Gutsy, took longer than usual…must be all that shiny new code! There have been mixed results with scons 0.98.3 and 0.98.5.

vst_sdk2_3.zip is not available anymore from steinberg’s website. They changed the default page and removed any sdk download links from their site.

Could you email or provide a link to download your copy? This information should really be relayed on ardour’s main page since vst support requires downloading it from steinberg’s website.

@crushkill,

Get the SDK here while you can…

http://ygrabit.steinberg.de/~ygrabit/public_html/vstsdk/Download/VST%20Plug-Ins%20SDK%202.3/

Thank you very much! I will mirror it to anyone who asks if/when this link is becomes unavailable – i will contact the port maintainer for FreeBSD

Thanks again!

To return to the original question about jack_get_time, make sure you got a reasonably recent version of jack, like 0.103 or preferably the latest svn (the released 0.109.2 has some issues).
I think that’s your problem (see this: http://tracker.ardour.org/view.php?id=2274).

I am using libjack-dev 0.103.0-6ubuntu1 on Ubuntu Studio 7.10 that I installed from Synaptic. How do I download and install the latest libjack-dev that will work with Ardour 2.5? And is it recommended to get a not so up-to-date version of libjack-dev for now (maybe 0.105 or something)? Thanks.

@linuckrox

I am also using Ubuntu 7.10, I have updated my libjack from this repo, it is a safe repo and a real goldmine for Ubuntu Audio apps
http://archive.ematech.fr/

I am pretty sure the maintainer of that site is a member here. Anyway I am using his version of JACK-dev 109.2 and scons 0.97 (the one in the regular Ubuntu repos)and as stated previously have had no issues compiling Ardour 2.5.

I did compile the latest JACK myself and found it to be unstable in comparison to the ematech one, I don’t know why that would be, but it is the case on my system.

@GMaq, thanks, that solved my problem. I added the repo, updated jack, and I guess that’s what I needed. I’m still using scons 0.97.
@peder, thanks for all your help too, I just don’t know linux well enough to try to mess around with dependencies and compiling each package separately. It seems like the dependency trees continue on forever, and as soon as you get something compiled, it breaks something else.

Hi, same problem on my side while installing 2.5 from source on Ubuntu 7.04 Feisty on Amilo Pro 2035 Laptop.

scons gave me this:

libs/ardour/globals.cc:386: error: ‘jack_get_time’ was not declared in this scope
scons: *** [libs/ardour/globals.os] Error 1
scons: building terminated because of errors.

I removed all old Jack-Components (apt-get remove --purge qjackctl jackd jackeq).

Now i need a new Jack.

I already got the Stuff from svn (first time svn-user), did ./autogen.sh, ./configure, make, make install, everything seemed quite alright to me, but a
jackd --version
gives me a
jackd: error while loading shared libraries: libjackserver.so.0: cannot open shared object file: No such file or directory

Which leads me back to the idea of installing a Jack-Package from the source you recommended (http://archive.ematech.fr/), i added this to my /etc/sources.list:
deb http://archive.ematech.fr feisty all
deb-src http://archive.ematech.fr feisty all
That made me able to chose a package in Synaptic that is called
ardour - 1:2.2+svn2912-ematech1 - Digital audio workstation (graphical gtk2 interface) - EMA Tech. Package
which again is dependent on
libjack >= 0.102.20
which again is not in the Ematech-Repositories, if i see that right.

I really feel like going back to my old Ardour right now. Any suggestions?

Peace,

;j

Update:
scons --version
SCons by Steven Knight et al.:
script: v0.96.93.D001, 2006/11/06 08:31:54, by knight on roxbury
engine: v0.96.93.D001, 2006/11/06 08:31:54, by knight on roxbury

You need to tell your system to look for the shared libraries in /usr/local/lib (which is the default installation path [/usr/local] when you run configure).

Not exactly sure about Ubuntu but if there’s a directory named /etc/ld.so.conf.d you (as root) can run echo /usr/local/lib > /etc/ld.so.conf.d/local.conf
If you don’t have that directory you can add /usr/local/lib to the end of the file /etc/ld.so.conf.

After that run ldconfig as root to update the cache and things should start working.

That made my day… ehm… night :wink:

Thanks Peder :wink:

More Questions soon… because… one self-compiled horror leads to another… like qjacktctl… qt4… realtime kernel… and whatever whyever i started this maelstrom - it took over my soul :]

Peace,

;j

Doh - still didn’t make it…

I compiled a new Jack, i compiled a new qjackctl, aubio, liblrdf. I installed a Realtime-Kernel (through this Repository: deb http://www.texware.it/ubuntu feisty/) and made some other changes:
changed /etc/security/limits.conf
@audio - rtprio 90
@audio - nice -10
@audio - memlock 4000000
Rebooted.
Since quite a while scons is running on ardour 2.5 in the background.

So i got some time to test the new jackd with qjackctl, which get’s me into new trouble, maybe someone can give a hint whicht trace to follow on this one :wink:
The Messages-Window of qjackctl give me this when i try to start:

— snip —
01:15:46.305 Startup script terminated with exit status=256.
01:15:46.307 JACK is starting…
01:15:46.310 /usr/local/bin/jackd -v -R -p128 -dalsa -r48000 -p1024 -n2 -D -Chw:1,0 -Phw:1,0 -S -i2 -o2
jackd: wait for startup process exit failed
getting driver descriptor from /usr/local/lib/jack/jack_alsa.so
getting driver descriptor from /usr/local/lib/jack/jack_dummy.so
getting driver descriptor from /usr/local/lib/jack/jack_oss.so
getting driver descriptor from /usr/local/lib/jack/jack_net.so
jackd 0.112.0
Copyright 2001-2005 Paul Davis and others.
jackd comes with ABSOLUTELY NO WARRANTY
This is free software, and you are welcome to redistribute it
under certain conditions; see the file COPYING for details
JACK compiled with System V SHM support.
server default' registered 01:15:46.454 JACK was started with PID=2275. loading driver .. apparent rate = 48000 creating alsa driver ... hw:1,0|hw:1,0|1024|2|48000|2|2|nomon|swmeter|-|16bit control device hw:1 ALSA lib confmisc.c:1286:(snd_func_refer) Unable to find definition 'defaults.namehint.extended' ALSA lib conf.c:3510:(_snd_config_evaluate) function snd_func_refer returned error: No such file or directory ALSA lib conf.c:3982:(snd_config_expand) Evaluate error: No such file or directory ALSA lib pcm.c:2144:(snd_pcm_open_noupdate) Unknown PCM hw:1,0 ALSA lib confmisc.c:1286:(snd_func_refer) Unable to find definition 'defaults.namehint.extended' ALSA lib conf.c:3510:(_snd_config_evaluate) function snd_func_refer returned error: No such file or directory ALSA lib conf.c:3982:(snd_config_expand) Evaluate error: No such file or directory ALSA lib pcm.c:2144:(snd_pcm_open_noupdate) Unknown PCM hw:1,0 ALSA: Cannot open PCM device alsa_pcm for playback. Falling back to capture-only mode cannot load driver module alsa registered builtin port type 32 bit float mono audio registere 01:15:46.748 JACK was stopped successfully. 01:15:46.750 Post-shutdown script... 01:15:46.752 killall jackd d builtin port type 8 bit raw midi clock source = system clock via clock_gettime required capabilities not available capabilities: = new client: alsa_pcm, id = 1 type 1 @ 0x804ebe8 fd = -1 starting server engine shutdown freeing shared port segments stopping server thread start poll on 3 fd's last xrun delay: 0.000 usecs max delay reported by backend: 0.000 usecs freeing engine shared memory max usecs: 0.000, engine deleted cleaning up shared memory cleaning up files unregistering serverdefault’
jackd: no process killed
01:15:47.376 Post-shutdown script terminated with exit status=256.
01:15:48.898 Could not connect to JACK server as client. - Overall operation failed. - Unable to connect to server. Please check the messages window for more info.
jackd: wait for startup process exit failed

— snap —

Something seems to go wrong with my ALSA badly - any ideas how to fix this?

Update:
Or might it be that i compiled JACK with the wrong flags?
I did it like this:
according to QUICK-INSTALL i tried like this (libcap installed over synaptic)

./configure --enable-capabilities --with-default-tmpdir=/mnt/ramfs


jack-audio-connection-kit 0.112.0 :

| Build with ALSA support… : true
| Build with old FireWire (FreeBob) support… : false
| Build with new FireWire (FFADO) support… : false
| Build with OSS support… : true
| Build with Sun audio support… : false
| Build with CoreAudio support… : false
| Build with PortAudio support… : false
| Build with NetJack support… : true
| Compiler optimization flags… : -DREENTRANT -O3 -fomit-frame-pointer -ffast-math -funroll-loops -march=i686 -mmmx -msse -mfpmath=sse
| Compiler full flags… : -I$(top_srcdir)/config -I$(top_srcdir) -I$(top_srcdir) -D_REENTRANT -D_POSIX_PTHREAD_SEMANTICS -Wall -g -g -O2
| Install dir for libjack + backends… : ${exec_prefix}/lib/jack
|
| Default driver backend… : “alsa”
| Shared memory interface… : “System V”
| IPC Temporary directory… : /mnt/ramfs
| Install prefix… : /usr/local
| Default tmp dir… : /mnt/ramfs

and it compiled fine. I created /mnt/ramfs in advance and wrote it to /etc/fstab, because JACK-README told me to do so if i am running on a non-ext2 filesystem, and i am on ext3.

I am not a pro-linux-admin, maybe a semi-pro-user - and this is really starting to get me confused and stopping me from producing music - which was the plan in the beginning :wink:

Any ideas?

Update2:
Okay - i made Jack rrrrrun ;)!))
All i had to do was to remove .asounrc and .asoundrc.asoundconf from my home directory to get alsa back running.
since then jack starts in RT :wink:
no xruns 'til now (i worked with thousands of xruns before…).
only thing missing - ardour ;]
it sconmpiled fine overnight, but i can’t find it - when i type “ardour” into the terminal i get only:
jobo@ybox:~$ ardour
The program ‘ardour’ can be found in the following packages:

  • ardour-gtk
  • ardour-gtk-i686
    Try: sudo apt-get install
    Make sure you have the ‘universe’ component enabled
    bash: ardour: command not found
    I used scons without flags/prefix, so where does it install by default?

Okay - did it done dididdididiiiiiiit - yippie-kaaaaa-yooooooooooo ;!

Back on Track

Praise to the Programmers

and Peace 2 All you people out there :wink:

P.S.: /usr/local/bin/ardour2