# Juce 1.42 Build Error (juce\_positionedrectangle.cpp)

**URL:** <https://forum.juce.com/t/juce-1-42-build-error-juce-positionedrectangle-cpp/1856>\
**Category:** Linux\
**Created:** [July 2, 2007, 7:18pm UTC](https://forum.juce.com/t/juce-1-42-build-error-juce-positionedrectangle-cpp/1856 "2007-07-02T19:18:46Z")\
**Posts on this page:** 19\
**Page:** 1

<div class="post-metadata">

**Author:** ![TheRedLed](https://avatars.discourse-cdn.com/v4/letter/t/9e8a1a/32.png) [@TheRedLed](https://forum.juce.com/u/TheRedLed)\
**Post date:** [July 2, 2007, 7:18pm UTC](https://forum.juce.com/t/juce-1-42-build-error-juce-positionedrectangle-cpp/1856/1 "2007-07-02T19:18:46Z")

</div>

Hello all

I have made a “make CONFIG=Release”, as explained in the doc, but it crashed with those lines :

`juce_PathStrokeType.cpp
juce_Point.cpp
make[1]: *** Pas de règle pour fabriquer la cible « ../../src/juce_appframework/gui/graphics/geometry/juce_positionedrectangle.cpp », nécessaire pour « ../../bin/intermediate_linux/Release/juce_positionedrectangle.o ». Arrêt.
make: *** [JUCE] Erreur 2
`  
(yes it’s in french, i am)

Sorry if this bug is already fixed, i’ve searched…

edit: i’m running Debian Etch

Thanks 🙂

---

<div class="post-metadata">

**Author:** ![kunitoki](https://sea2.discourse-cdn.com/flex026/user_avatar/forum.juce.com/kunitoki/32/15_2.png) [@kunitoki](https://forum.juce.com/u/kunitoki)\
**Post date:** [July 2, 2007, 9:08pm UTC](https://forum.juce.com/t/juce-1-42-build-error-juce-positionedrectangle-cpp/1856/2 "2007-07-02T21:08:29Z")

</div>

i think you should update to the latest svn version, or at least to 1.43…

---

<div class="post-metadata">

**Author:** ![TheRedLed](https://avatars.discourse-cdn.com/v4/letter/t/9e8a1a/32.png) [@TheRedLed](https://forum.juce.com/u/TheRedLed)\
**Post date:** [July 2, 2007, 10:17pm UTC](https://forum.juce.com/t/juce-1-42-build-error-juce-positionedrectangle-cpp/1856/3 "2007-07-02T22:17:30Z")

</div>

1.43 crashes too, with other messages :?  
I will try the latest versions, but i don’t know anything about SVN…

Where can i find svn versions ?

---

<div class="post-metadata">

**Author:** ![kunitoki](https://sea2.discourse-cdn.com/flex026/user_avatar/forum.juce.com/kunitoki/32/15_2.png) [@kunitoki](https://forum.juce.com/u/kunitoki)\
**Post date:** [July 2, 2007, 10:29pm UTC](https://forum.juce.com/t/juce-1-42-build-error-juce-positionedrectangle-cpp/1856/4 "2007-07-02T22:29:45Z")

</div>

something like this:

`$ apt-get install subversion
$ cd MyProjects && svn co https://juce.svn.sourceforge.net/svnroot/juce/trunk juce
`

hope this helps 🙂

---

<div class="post-metadata">

**Author:** ![Rock\_Hardbuns](https://avatars.discourse-cdn.com/v4/letter/r/41988e/32.png) [@Rock\_Hardbuns](https://forum.juce.com/u/Rock_Hardbuns)\
**Post date:** [July 3, 2007, 6:45am UTC](https://forum.juce.com/t/juce-1-42-build-error-juce-positionedrectangle-cpp/1856/5 "2007-07-03T06:45:11Z")

</div>

1.43 builds just fine here, also on debian etch.

Did you run the premake script again? Because the default one doesn’t always work for some reason.

---

<div class="post-metadata">

**Author:** ![TheRedLed](https://avatars.discourse-cdn.com/v4/letter/t/9e8a1a/32.png) [@TheRedLed](https://forum.juce.com/u/TheRedLed)\
**Post date:** [July 4, 2007, 10:05pm UTC](https://forum.juce.com/t/juce-1-42-build-error-juce-positionedrectangle-cpp/1856/6 "2007-07-04T22:05:20Z")

</div>

Thanks for your answers 🙂

[quote=“Rock Hardbuns”]1.43 builds just fine here, also on debian etch.

Did you run the premake script again? Because the default one doesn’t always work for some reason.[/quote]  
I have just installed premake, but the program itself doesn’t work

[quote]premake: /lib/tls/i686/cmov/libc.so.6: version `GLIBC\_2.4’ not found (required by premake)  
[/quote]  
I can’t find this package 😕

---

<div class="post-metadata">

**Author:** ![Rock\_Hardbuns](https://avatars.discourse-cdn.com/v4/letter/r/41988e/32.png) [@Rock\_Hardbuns](https://forum.juce.com/u/Rock_Hardbuns)\
**Post date:** [July 4, 2007, 10:27pm UTC](https://forum.juce.com/t/juce-1-42-build-error-juce-positionedrectangle-cpp/1856/7 "2007-07-04T22:27:05Z")

</div>

Download the source package and build it. It’s a simple build. Just unzip and type “make”… takes 2 seconds.

…and the take the binary from the bin dir and drop it in /usr/local/bin or where ever you like to keep local builds.

---

<div class="post-metadata">

**Author:** ![TheRedLed](https://avatars.discourse-cdn.com/v4/letter/t/9e8a1a/32.png) [@TheRedLed](https://forum.juce.com/u/TheRedLed)\
**Post date:** [July 5, 2007, 8:31pm UTC](https://forum.juce.com/t/juce-1-42-build-error-juce-positionedrectangle-cpp/1856/8 "2007-07-05T20:31:24Z")

</div>

[quote=“Rock Hardbuns”]Download the source package and build it. It’s a simple build. Just unzip and type “make”… takes 2 seconds.

…and the take the binary from the bin dir and drop it in /usr/local/bin or where ever you like to keep local builds.[/quote]  
I did it, and when i type “premake” or “premake [anything]”, it gives me the message above…

---

<div class="post-metadata">

**Author:** ![Rock\_Hardbuns](https://avatars.discourse-cdn.com/v4/letter/r/41988e/32.png) [@Rock\_Hardbuns](https://forum.juce.com/u/Rock_Hardbuns)\
**Post date:** [July 5, 2007, 8:58pm UTC](https://forum.juce.com/t/juce-1-42-build-error-juce-positionedrectangle-cpp/1856/9 "2007-07-05T20:58:05Z")

</div>

That’s odd. Are you certain that you don’t have the pre-built version loitering somewhere in the “path”.

I’m not sure how this stuff works, but I got the same message with the binary version, but the one I built my self worked. Probably because it linked against the version of Glib I have installed.

Having the build go all right, but then not run is sort off voodoo-ish, I think.

I suppose I could mail you my binary though. (But if your build went ok they should be identical, given that we are on the same distro, same GCC/Glib etc.)

---

<div class="post-metadata">

**Author:** ![TheRedLed](https://avatars.discourse-cdn.com/v4/letter/t/9e8a1a/32.png) [@TheRedLed](https://forum.juce.com/u/TheRedLed)\
**Post date:** [July 5, 2007, 10:34pm UTC](https://forum.juce.com/t/juce-1-42-build-error-juce-positionedrectangle-cpp/1856/10 "2007-07-05T22:34:54Z")

</div>

Wow, excuse me, it’s the binay version and not the built one that i have :oops:  
Don’t know what i had smoked when i’ve read your message 😕

(please tell me if you see some english parse errors in my posts :D)

---

<div class="post-metadata">

**Author:** ![TheRedLed](https://avatars.discourse-cdn.com/v4/letter/t/9e8a1a/32.png) [@TheRedLed](https://forum.juce.com/u/TheRedLed)\
**Post date:** [July 6, 2007, 9:51pm UTC](https://forum.juce.com/t/juce-1-42-build-error-juce-positionedrectangle-cpp/1856/11 "2007-07-06T21:51:10Z")

</div>

Well, it seems to be harder than that, I downloaded the sources of Premake (SVN version, as explained in the Premake version of SourceForge), and i found just one makefile, in a sub/sub/sub/sub/sub/sub directiry of the achive, and it doesn’t work at all 😛

Where did you find your Premake sources ?

---

<div class="post-metadata">

**Author:** ![Rock\_Hardbuns](https://avatars.discourse-cdn.com/v4/letter/r/41988e/32.png) [@Rock\_Hardbuns](https://forum.juce.com/u/Rock_Hardbuns)\
**Post date:** [July 6, 2007, 10:35pm UTC](https://forum.juce.com/t/juce-1-42-build-error-juce-positionedrectangle-cpp/1856/12 "2007-07-06T22:35:31Z")

</div>

LOL

go here:  
[http://sourceforge.net/project/showfiles.php?group\_id=71616](http://sourceforge.net/project/showfiles.php?group_id=71616)

Download the file called premake-src-3.3.1.zip

---

<div class="post-metadata">

**Author:** ![TheRedLed](https://avatars.discourse-cdn.com/v4/letter/t/9e8a1a/32.png) [@TheRedLed](https://forum.juce.com/u/TheRedLed)\
**Post date:** [July 7, 2007, 2:08pm UTC](https://forum.juce.com/t/juce-1-42-build-error-juce-positionedrectangle-cpp/1856/13 "2007-07-07T14:08:50Z")

</div>

Thanks, how did I do not to see it :roll: i probably thought “SRC” was an OS :shock:

Now Premake works !

So, let’s come back to Juce :  
in the directory juce/build/linux, i typed “premake --os linux --file juce\_premake.lua” ; eveyuthing seemed fine. Then I typed make CONFIG=Release, and here comes another errors huricane :

> [@](#):
>
> (…)  
> juce\_ThreadWithProgressWindow.cpp  
> juce\_TooltipWindow.cpp  
> juce\_TopLevelWindow.cpp  
> juce\_linux\_Audio.cpp  
> platform\_specific\_code/juce\_linux\_Audio.cpp:38:28: error: alsa/asoundlib.h: Aucun fichier ou répertoire de ce type  
> platform\_specific\_code/juce\_linux\_Audio.cpp:57: error: variable or field ‘getDeviceSampleRates’ declared void  
> platform\_specific\_code/juce\_linux\_Audio.cpp:57: error: ‘snd\_pcm\_t’ was not declared in this scope  
> platform\_specific\_code/juce\_linux\_Audio.cpp:57: error: ‘handle’ was not declared in this scope  
> platform\_specific\_code/juce\_linux\_Audio.cpp:57: error: expected primary-expression before ‘&’ token  
> platform\_specific\_code/juce\_linux\_Audio.cpp:57: error: ‘rates’ was not declared in this scope  
> platform\_specific\_code/juce\_linux\_Audio.cpp:57: error: initializer expression list treated as compound expression  
> platform\_specific\_code/juce\_linux\_Audio.cpp:58: error: expected ‘,’ or ‘;’ before ‘{’ token  
> platform\_specific\_code/juce\_linux\_Audio.cpp:74: error: variable or field ‘getDeviceNumChannels’ declared void  
> platform\_specific\_code/juce\_linux\_Audio.cpp:74: error: ‘snd\_pcm\_t’ was not declared in this scope  
> platform\_specific\_code/juce\_linux\_Audio.cpp:74: error: ‘handle’ was not declared in this scope  
> platform\_specific\_code/juce\_linux\_Audio.cpp:74: error: expected primary-expression before ‘unsigned’  
> platform\_specific\_code/juce\_linux\_Audio.cpp:74: error: expected primary-expression before ‘unsigned’  
> platform\_specific\_code/juce\_linux\_Audio.cpp:74: error: initializer expression list treated as compound expression  
> platform\_specific\_code/juce\_linux\_Audio.cpp:75: error: expected ‘,’ or ‘;’ before ‘{’ token  
> platform\_specific\_code/juce\_linux\_Audio.cpp: In function ‘void juce::getDeviceProperties(const juce::String&, unsigned int&, unsigned int&, unsigned int&, unsigned int&, juce::Array\<int, juce::DummyCriticalSection\>&)’:  
> platform\_specific\_code/juce\_linux\_Audio.cpp:93: error: ‘snd\_ctl\_t’ was not declared in this scope  
> platform\_specific\_code/juce\_linux\_Audio.cpp:93: error: ‘handle’ was not declared in this scope  
> platform\_specific\_code/juce\_linux\_Audio.cpp:95: error: ‘SND\_CTL\_NONBLOCK’ was not declared in this scope  
> platform\_specific\_code/juce\_linux\_Audio.cpp:95: error: ‘snd\_ctl\_open’ was not declared in this scope  
> platform\_specific\_code/juce\_linux\_Audio.cpp:97: error: ‘snd\_pcm\_info\_t’ was not declared in this scope  
> platform\_specific\_code/juce\_linux\_Audio.cpp:97: error: ‘info’ was not declared in this scope  
> platform\_specific\_code/juce\_linux\_Audio.cpp:98: error: ‘snd\_pcm\_info\_alloca’ was not declared in this scope  
> platform\_specific\_code/juce\_linux\_Audio.cpp:100: error: ‘SND\_PCM\_STREAM\_PLAYBACK’ was not declared in this scope  
> platform\_specific\_code/juce\_linux\_Audio.cpp:100: error: ‘snd\_pcm\_info\_set\_stream’ was not declared in this scope  
> platform\_specific\_code/juce\_linux\_Audio.cpp:101: error: ‘snd\_pcm\_info\_set\_device’ was not declared in this scope  
> platform\_specific\_code/juce\_linux\_Audio.cpp:102: error: ‘snd\_pcm\_info\_set\_subdevice’ was not declared in this scope  
> platform\_specific\_code/juce\_linux\_Audio.cpp:104: error: ‘snd\_ctl\_pcm\_info’ was not declared in this scope  
> platform\_specific\_code/juce\_linux\_Audio.cpp:106: error: ‘snd\_pcm\_t’ was not declared in this scope  
> platform\_specific\_code/juce\_linux\_Audio.cpp:106: error: ‘pcmHandle’ was not declared in this scope  
> platform\_specific\_code/juce\_linux\_Audio.cpp:107: error: ‘SND\_PCM\_ASYNC’ was not declared in this scope  
> platform\_specific\_code/juce\_linux\_Audio.cpp:107: error: ‘SND\_PCM\_NONBLOCK’ was not declared in this scope  
> platform\_specific\_code/juce\_linux\_Audio.cpp:107: error: ‘snd\_pcm\_open’ was not declared in this scope  
> platform\_specific\_code/juce\_linux\_Audio.cpp:109: error: ‘juce::getDeviceNumChannels’ cannot be used as a function  
> platform\_specific\_code/juce\_linux\_Audio.cpp:110: error: ‘juce::getDeviceSampleRates’ cannot be used as a function  
> platform\_specific\_code/juce\_linux\_Audio.cpp:112: error: ‘snd\_pcm\_close’ was not declared in this scope  
> platform\_specific\_code/juce\_linux\_Audio.cpp:116: error: ‘SND\_PCM\_STREAM\_CAPTURE’ was not declared in this scope  
> platform\_specific\_code/juce\_linux\_Audio.cpp:118: error: ‘snd\_ctl\_pcm\_info’ was not declared in this scope  
> platform\_specific\_code/juce\_linux\_Audio.cpp:120: error: ‘snd\_pcm\_t’ was not declared in this scope  
> platform\_specific\_code/juce\_linux\_Audio.cpp:120: error: ‘pcmHandle’ was not declared in this scope  
> platform\_specific\_code/juce\_linux\_Audio.cpp:121: error: ‘SND\_PCM\_ASYNC’ was not declared in this scope  
> platform\_specific\_code/juce\_linux\_Audio.cpp:121: error: ‘SND\_PCM\_NONBLOCK’ was not declared in this scope  
> platform\_specific\_code/juce\_linux\_Audio.cpp:121: error: ‘snd\_pcm\_open’ was not declared in this scope  
> platform\_specific\_code/juce\_linux\_Audio.cpp:123: error: ‘juce::getDeviceNumChannels’ cannot be used as a function  
> platform\_specific\_code/juce\_linux\_Audio.cpp:126: error: ‘juce::getDeviceSampleRates’ cannot be used as a function  
> platform\_specific\_code/juce\_linux\_Audio.cpp:128: error: ‘snd\_pcm\_close’ was not declared in this scope  
> platform\_specific\_code/juce\_linux\_Audio.cpp:132: error: ‘snd\_ctl\_close’ was not declared in this scope  
> platform\_specific\_code/juce\_linux\_Audio.cpp: At global scope:  
> platform\_specific\_code/juce\_linux\_Audio.cpp:328: error: ISO C++ forbids declaration of ‘snd\_pcm\_t’ with no type  
> platform\_specific\_code/juce\_linux\_Audio.cpp:328: error: expected ‘;’ before ‘\*’ token  
> platform\_specific\_code/juce\_linux\_Audio.cpp: In constructor ‘juce::ALSADevice::ALSADevice(const juce::String&, bool)’:  
> platform\_specific\_code/juce\_linux\_Audio.cpp:142: error: class ‘juce::ALSADevice’ does not have any field named ‘handle’  
> platform\_specific\_code/juce\_linux\_Audio.cpp:148: error: ‘handle’ was not declared in this scope  
> platform\_specific\_code/juce\_linux\_Audio.cpp:149: error: ‘SND\_PCM\_STREAM\_CAPTURE’ was not declared in this scope  
> platform\_specific\_code/juce\_linux\_Audio.cpp:149: error: ‘SND\_PCM\_STREAM\_PLAYBACK’ was not declared in this scope  
> platform\_specific\_code/juce\_linux\_Audio.cpp:150: error: ‘SND\_PCM\_ASYNC’ was not declared in this scope  
> platform\_specific\_code/juce\_linux\_Audio.cpp:150: error: ‘snd\_pcm\_open’ was not declared in this scope  
> platform\_specific\_code/juce\_linux\_Audio.cpp: In destructor ‘juce::ALSADevice::~ALSADevice()’:  
> platform\_specific\_code/juce\_linux\_Audio.cpp:155: error: ‘handle’ was not declared in this scope  
> platform\_specific\_code/juce\_linux\_Audio.cpp:156: error: ‘snd\_pcm\_close’ was not declared in this scope  
> platform\_specific\_code/juce\_linux\_Audio.cpp: In member function ‘bool juce::ALSADevice::setParameters(unsigned int, int, int)’:  
> platform\_specific\_code/juce\_linux\_Audio.cpp:161: error: ‘handle’ was not declared in this scope  
> platform\_specific\_code/juce\_linux\_Audio.cpp:164: error: ‘snd\_pcm\_hw\_params\_t’ was not declared in this scope  
> platform\_specific\_code/juce\_linux\_Audio.cpp:164: error: ‘hwParams’ was not declared in this scope  
> platform\_specific\_code/juce\_linux\_Audio.cpp:165: error: ‘snd\_pcm\_hw\_params\_alloca’ was not declared in this scope  
> platform\_specific\_code/juce\_linux\_Audio.cpp:167: error: ‘handle’ was not declared in this scope  
> platform\_specific\_code/juce\_linux\_Audio.cpp:167: error: ‘snd\_pcm\_hw\_params\_any’ was not declared in this scope  
> platform\_specific\_code/juce\_linux\_Audio.cpp:170: error: ‘handle’ was not declared in this scope  
> platform\_specific\_code/juce\_linux\_Audio.cpp:170: error: ‘SND\_PCM\_ACCESS\_RW\_NONINTERLEAVED’ was not declared in this scope  
> platform\_specific\_code/juce\_linux\_Audio.cpp:170: error: ‘snd\_pcm\_hw\_params\_set\_access’ was not declared in this scope  
> platform\_specific\_code/juce\_linux\_Audio.cpp:172: error: ‘SND\_PCM\_ACCESS\_RW\_INTERLEAVED’ was not declared in this scope  
> platform\_specific\_code/juce\_linux\_Audio.cpp:180: error: ‘SND\_PCM\_FORMAT\_FLOAT\_LE’ was not declared in this scope  
> platform\_specific\_code/juce\_linux\_Audio.cpp:181: error: ‘SND\_PCM\_FORMAT\_FLOAT\_BE’ was not declared in this scope  
> platform\_specific\_code/juce\_linux\_Audio.cpp:182: error: ‘SND\_PCM\_FORMAT\_S32\_LE’ was not declared in this scope  
> platform\_specific\_code/juce\_linux\_Audio.cpp:183: error: ‘SND\_PCM\_FORMAT\_S32\_BE’ was not declared in this scope  
> platform\_specific\_code/juce\_linux\_Audio.cpp:184: error: ‘SND\_PCM\_FORMAT\_S24\_LE’ was not declared in this scope  
> platform\_specific\_code/juce\_linux\_Audio.cpp:185: error: ‘SND\_PCM\_FORMAT\_S24\_BE’ was not declared in this scope  
> platform\_specific\_code/juce\_linux\_Audio.cpp:186: error: ‘SND\_PCM\_FORMAT\_S16\_LE’ was not declared in this scope  
> platform\_specific\_code/juce\_linux\_Audio.cpp:187: error: ‘SND\_PCM\_FORMAT\_S16\_BE’ was not declared in this scope  
> platform\_specific\_code/juce\_linux\_Audio.cpp:192: error: ‘handle’ was not declared in this scope  
> platform\_specific\_code/juce\_linux\_Audio.cpp:192: error: ‘\_snd\_pcm\_format’ was not declared in this scope  
> platform\_specific\_code/juce\_linux\_Audio.cpp:192: error: ‘snd\_pcm\_hw\_params\_set\_format’ was not declared in this scope  
> platform\_specific\_code/juce\_linux\_Audio.cpp:209: error: ‘snd\_pcm\_uframes\_t’ was not declared in this scope  
> platform\_specific\_code/juce\_linux\_Audio.cpp:209: error: expected `;' before ‘samplesPerPeriod’ platform_specific_code/juce_linux_Audio.cpp:211: error: ‘handle’ was not declared in this scope platform_specific_code/juce_linux_Audio.cpp:211: error: ‘snd_pcm_hw_params_set_rate_near’ was not declared in this scope platform_specific_code/juce_linux_Audio.cpp:212: error: ‘snd_pcm_hw_params_set_channels’ was not declared in this scope platform_specific_code/juce_linux_Audio.cpp:213: error: ‘snd_pcm_hw_params_set_periods_near’ was not declared in this scope platform_specific_code/juce_linux_Audio.cpp:214: error: ‘samplesPerPeriod’ was not declared in this scope platform_specific_code/juce_linux_Audio.cpp:214: error: ‘snd_pcm_hw_params_set_period_size_near’ was not declared in this scope platform_specific_code/juce_linux_Audio.cpp:215: error: ‘snd_pcm_hw_params’ was not declared in this scope platform_specific_code/juce_linux_Audio.cpp:220: error: ‘snd_pcm_sw_params_t’ was not declared in this scope platform_specific_code/juce_linux_Audio.cpp:220: error: ‘swParams’ was not declared in this scope platform_specific_code/juce_linux_Audio.cpp:221: error: ‘snd_pcm_sw_params_alloca’ was not declared in this scope platform_specific_code/juce_linux_Audio.cpp:223: error: ‘handle’ was not declared in this scope platform_specific_code/juce_linux_Audio.cpp:223: error: ‘snd_pcm_sw_params_current’ was not declared in this scope platform_specific_code/juce_linux_Audio.cpp:224: error: ‘snd_pcm_sw_params_set_silence_threshold’ was not declared in this scope platform_specific_code/juce_linux_Audio.cpp:225: error: ‘snd_pcm_sw_params_set_silence_size’ was not declared in this scope platform_specific_code/juce_linux_Audio.cpp:226: error: ‘samplesPerPeriod’ was not declared in this scope platform_specific_code/juce_linux_Audio.cpp:226: error: ‘snd_pcm_sw_params_set_start_threshold’ was not declared in this scope platform_specific_code/juce_linux_Audio.cpp:227: error: ‘snd_pcm_sw_params_set_stop_threshold’ was not declared in this scope platform_specific_code/juce_linux_Audio.cpp:228: error: ‘snd_pcm_sw_params’ was not declared in this scope platform_specific_code/juce_linux_Audio.cpp: In member function ‘bool juce::ALSADevice::write(float**, int)’: platform_specific_code/juce_linux_Audio.cpp:259: error: ‘snd_pcm_sframes_t’ was not declared in this scope platform_specific_code/juce_linux_Audio.cpp:259: error: expected `;’ before ‘num’  
> platform\_specific\_code/juce\_linux\_Audio.cpp:261: error: ‘num’ was not declared in this scope  
> platform\_specific\_code/juce\_linux\_Audio.cpp:270: error: ‘snd\_pcm\_sframes\_t’ was not declared in this scope  
> platform\_specific\_code/juce\_linux\_Audio.cpp:270: error: expected `;' before ‘num’ platform_specific_code/juce_linux_Audio.cpp:272: error: ‘num’ was not declared in this scope platform_specific_code/juce_linux_Audio.cpp:276: error: ‘handle’ was not declared in this scope platform_specific_code/juce_linux_Audio.cpp:276: error: ‘snd_pcm_prepare’ was not declared in this scope platform_specific_code/juce_linux_Audio.cpp: In member function ‘bool juce::ALSADevice::read(float**, int)’: platform_specific_code/juce_linux_Audio.cpp:294: error: ‘snd_pcm_sframes_t’ was not declared in this scope platform_specific_code/juce_linux_Audio.cpp:294: error: expected `;’ before ‘num’  
> platform\_specific\_code/juce\_linux\_Audio.cpp:296: error: ‘num’ was not declared in this scope  
> platform\_specific\_code/juce\_linux\_Audio.cpp:300: error: ‘handle’ was not declared in this scope  
> platform\_specific\_code/juce\_linux\_Audio.cpp:300: error: ‘snd\_pcm\_prepare’ was not declared in this scope  
> platform\_specific\_code/juce\_linux\_Audio.cpp:312: error: ‘snd\_pcm\_sframes\_t’ was not declared in this scope  
> platform\_specific\_code/juce\_linux\_Audio.cpp:312: error: expected `;’ before ‘num’  
> platform\_specific\_code/juce\_linux\_Audio.cpp:314: error: ‘num’ was not declared in this scope  
> platform\_specific\_code/juce\_linux\_Audio.cpp: In member function ‘bool juce::ALSADevice::failed(int)’:  
> platform\_specific\_code/juce\_linux\_Audio.cpp:345: error: ‘snd\_strerror’ was not declared in this scope  
> platform\_specific\_code/juce\_linux\_Audio.cpp: In member function ‘void juce::ALSAThread::open(const juce::BitArray&, const juce::BitArray&, double, int)’:  
> platform\_specific\_code/juce\_linux\_Audio.cpp:466: error: ‘class juce::ALSADevice’ has no member named ‘handle’  
> platform\_specific\_code/juce\_linux\_Audio.cpp:466: error: ‘class juce::ALSADevice’ has no member named ‘handle’  
> platform\_specific\_code/juce\_linux\_Audio.cpp:466: error: ‘snd\_pcm\_link’ was not declared in this scope  
> platform\_specific\_code/juce\_linux\_Audio.cpp:469: error: ‘class juce::ALSADevice’ has no member named ‘handle’  
> platform\_specific\_code/juce\_linux\_Audio.cpp:469: error: ‘snd\_pcm\_prepare’ was not declared in this scope  
> platform\_specific\_code/juce\_linux\_Audio.cpp:472: error: ‘class juce::ALSADevice’ has no member named ‘handle’  
> platform\_specific\_code/juce\_linux\_Audio.cpp:472: error: ‘snd\_pcm\_prepare’ was not declared in this scope  
> platform\_specific\_code/juce\_linux\_Audio.cpp: In member function ‘virtual void juce::ALSAThread::run()’:  
> platform\_specific\_code/juce\_linux\_Audio.cpp:560: error: ‘class juce::ALSADevice’ has no member named ‘handle’  
> platform\_specific\_code/juce\_linux\_Audio.cpp:560: error: ‘snd\_pcm\_wait’ was not declared in this scope  
> platform\_specific\_code/juce\_linux\_Audio.cpp:565: error: ‘class juce::ALSADevice’ has no member named ‘handle’  
> platform\_specific\_code/juce\_linux\_Audio.cpp:565: error: ‘snd\_pcm\_avail\_update’ was not declared in this scope  
> platform\_specific\_code/juce\_linux\_Audio.cpp: In member function ‘bool juce::ALSAThread::failed(int)’:  
> platform\_specific\_code/juce\_linux\_Audio.cpp:624: error: ‘snd\_strerror’ was not declared in this scope  
> platform\_specific\_code/juce\_linux\_Audio.cpp: In member function ‘virtual void juce::ALSAAudioIODeviceType::scanForDevices()’:  
> platform\_specific\_code/juce\_linux\_Audio.cpp:831: error: ‘snd\_ctl\_t’ was not declared in this scope  
> platform\_specific\_code/juce\_linux\_Audio.cpp:831: error: ‘handle’ was not declared in this scope  
> platform\_specific\_code/juce\_linux\_Audio.cpp:832: error: ‘snd\_ctl\_card\_info\_t’ was not declared in this scope  
> platform\_specific\_code/juce\_linux\_Audio.cpp:832: error: ‘info’ was not declared in this scope  
> platform\_specific\_code/juce\_linux\_Audio.cpp:833: error: ‘snd\_ctl\_card\_info\_alloca’ was not declared in this scope  
> platform\_specific\_code/juce\_linux\_Audio.cpp:839: error: ‘snd\_card\_next’ was not declared in this scope  
> platform\_specific\_code/juce\_linux\_Audio.cpp:844: error: ‘snd\_ctl\_open’ was not declared in this scope  
> platform\_specific\_code/juce\_linux\_Audio.cpp:846: error: ‘snd\_ctl\_card\_info’ was not declared in this scope  
> platform\_specific\_code/juce\_linux\_Audio.cpp:848: error: ‘snd\_ctl\_card\_info\_get\_id’ was not declared in this scope  
> platform\_specific\_code/juce\_linux\_Audio.cpp:857: error: ‘snd\_ctl\_pcm\_next\_device’ was not declared in this scope  
> platform\_specific\_code/juce\_linux\_Audio.cpp:865: error: ‘snd\_ctl\_card\_info\_get\_name’ was not declared in this scope  
> platform\_specific\_code/juce\_linux\_Audio.cpp:879: error: ‘snd\_ctl\_close’ was not declared in this scope  
> make[1]: \*\*\* […/…/bin/intermediate\_linux/Debug/juce\_linux\_Audio.o] Erreur 1  
> make: \*\*\* [JUCE] Erreur 2  
> johnny@debian:~/apps/juce/build/linux$

:?

---

<div class="post-metadata">

**Author:** ![jules](https://avatars.discourse-cdn.com/v4/letter/j/41988e/32.png) [@jules](https://forum.juce.com/u/jules)\
**Post date:** [July 7, 2007, 2:31pm UTC](https://forum.juce.com/t/juce-1-42-build-error-juce-positionedrectangle-cpp/1856/14 "2007-07-07T14:31:27Z")

</div>

Well presumably you’ve not got ALSA installed, because it can’t find the ALSA header file.

If you don’t want to build audio support, you can just turn off JUCE\_ALSA in the juce\_Config.h file.

---

<div class="post-metadata">

**Author:** ![TheRedLed](https://avatars.discourse-cdn.com/v4/letter/t/9e8a1a/32.png) [@TheRedLed](https://forum.juce.com/u/TheRedLed)\
**Post date:** [July 8, 2007, 1:41pm UTC](https://forum.juce.com/t/juce-1-42-build-error-juce-positionedrectangle-cpp/1856/15 "2007-07-08T13:41:28Z")

</div>

is there a way to get a complete list of Juce’s dependencies ?

---

<div class="post-metadata">

**Author:** ![Rock\_Hardbuns](https://avatars.discourse-cdn.com/v4/letter/r/41988e/32.png) [@Rock\_Hardbuns](https://forum.juce.com/u/Rock_Hardbuns)\
**Post date:** [July 8, 2007, 2:16pm UTC](https://forum.juce.com/t/juce-1-42-build-error-juce-positionedrectangle-cpp/1856/16 "2007-07-08T14:16:29Z")

</div>

Try this… (no openGL so either add those \*-dev packs or make sure it is not defined in the juce über header)

```auto

```

I’m not sure all of those are actually needed, but what the hell…

Also, if you like to keep track of stuff, like I do… save the output from apt so you can roll back the installation including dependencies. Deborphan is a helpful thing too.

---

<div class="post-metadata">

**Author:** ![TheRedLed](https://avatars.discourse-cdn.com/v4/letter/t/9e8a1a/32.png) [@TheRedLed](https://forum.juce.com/u/TheRedLed)\
**Post date:** [July 8, 2007, 4:05pm UTC](https://forum.juce.com/t/juce-1-42-build-error-juce-positionedrectangle-cpp/1856/17 "2007-07-08T16:05:44Z")

</div>

Nice !  
It works.  
the pb was that libasound2-dev was missing. Many thanks 🙂

Now Juce is built, shall I put some things in /usr/include or /usr/lib to make it usable ?

---

<div class="post-metadata">

**Author:** ![Rock\_Hardbuns](https://avatars.discourse-cdn.com/v4/letter/r/41988e/32.png) [@Rock\_Hardbuns](https://forum.juce.com/u/Rock_Hardbuns)\
**Post date:** [July 8, 2007, 4:27pm UTC](https://forum.juce.com/t/juce-1-42-build-error-juce-positionedrectangle-cpp/1856/18 "2007-07-08T16:27:07Z")

</div>

Include is for header files, lib is for libraries. But you don’t need to put juce there unless you really want to. Just keep it where ever is convenient for you an update the path in the premake file.

Since you typically link juce statically, it doesn’t really matter where it is as long as the linker finds it. (Actually the same is pretty much true for dynamically linked libraries)

Most people keep the Juce folder next to their own project folder I think. It simplifies things since you’ll need to rebuild it every so often.

---

<div class="post-metadata">

**Author:** ![jules](https://avatars.discourse-cdn.com/v4/letter/j/41988e/32.png) [@jules](https://forum.juce.com/u/jules)\
**Post date:** [May 12, 2017, 3:13pm UTC](https://forum.juce.com/t/juce-1-42-build-error-juce-positionedrectangle-cpp/1856/19 "2017-05-12T15:13:39Z")

</div>

Closed on May 12, 2017, 3:13pm UTC


