<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
	<title type="html"><![CDATA[Linux Forum &mdash; Как собрать valgrind для ARM]]></title>
	<link rel="self" href="https://linuxforum.ru/extern.php?action=feed&amp;tid=27429&amp;type=atom" />
	<updated>2013-03-26T12:05:51Z</updated>
	<generator>PunBB</generator>
	<id>https://linuxforum.ru/viewtopic.php?id=27429</id>
		<entry>
			<title type="html"><![CDATA[Re: Как собрать valgrind для ARM]]></title>
			<link rel="alternate" href="https://linuxforum.ru/viewtopic.php?pid=336553#p336553" />
			<content type="html"><![CDATA[<div class="quotebox"><cite>srg_btl⇓ пишет:</cite><blockquote><p>переместил папку на ARM</p></blockquote></div><p>README читал?</p><div class="quotebox"><cite>README пишет:</cite><blockquote><p>Important!&nbsp; Do not move the valgrind installation into a place<br />different from that specified by --prefix at build time.&nbsp; This will<br />cause things to break in subtle ways, mostly when Valgrind handles<br />fork/exec calls.</p></blockquote></div><p>если не поможет, то посмотри <strong>strace</strong>&#039;ом, на чём валится...</p>]]></content>
			<author>
				<name><![CDATA[Fat-Zer]]></name>
				<uri>https://linuxforum.ru/profile.php?id=11911</uri>
			</author>
			<updated>2013-03-26T12:05:51Z</updated>
			<id>https://linuxforum.ru/viewtopic.php?pid=336553#p336553</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Как собрать valgrind для ARM]]></title>
			<link rel="alternate" href="https://linuxforum.ru/viewtopic.php?pid=336528#p336528" />
			<content type="html"><![CDATA[<p>Собирал таким способом:<br /></p><div class="codebox"><pre><code>./configure CC=arm-linux-gnueabi-gcc --target=arm-none-linux-gnueabi --host=armv7-none-linux-gnueabi --build=i686-linux --prefix=/home/lifeline/valgrind/

make
make install</code></pre></div><p>переместил папку на ARM<br />но опять трабл:<br /></p><div class="codebox"><pre><code> ./valgrind -v
valgrind: failed to start tool &#039;memcheck&#039; for platform &#039;arm-linux&#039;: No such file or directory</code></pre></div>]]></content>
			<author>
				<name><![CDATA[srg_btl]]></name>
				<uri>https://linuxforum.ru/profile.php?id=29019</uri>
			</author>
			<updated>2013-03-26T10:06:58Z</updated>
			<id>https://linuxforum.ru/viewtopic.php?pid=336528#p336528</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Как собрать valgrind для ARM]]></title>
			<link rel="alternate" href="https://linuxforum.ru/viewtopic.php?pid=336418#p336418" />
			<content type="html"><![CDATA[<div class="quotebox"><cite>srg_btl⇓ пишет:</cite><blockquote><p>Попробовал... Результат тот же...</p></blockquote></div><p>давай полный лог конфигурации...</p>]]></content>
			<author>
				<name><![CDATA[Fat-Zer]]></name>
				<uri>https://linuxforum.ru/profile.php?id=11911</uri>
			</author>
			<updated>2013-03-25T17:36:02Z</updated>
			<id>https://linuxforum.ru/viewtopic.php?pid=336418#p336418</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Как собрать valgrind для ARM]]></title>
			<link rel="alternate" href="https://linuxforum.ru/viewtopic.php?pid=336413#p336413" />
			<content type="html"><![CDATA[<div class="quotebox"><cite>Fat-Zer⇓ пишет:</cite><blockquote><p>и для чистоты эксперимента пробуй начинать с чистого дерева...</p></blockquote></div><p>Попробовал... Результат тот же...</p>]]></content>
			<author>
				<name><![CDATA[srg_btl]]></name>
				<uri>https://linuxforum.ru/profile.php?id=29019</uri>
			</author>
			<updated>2013-03-25T17:26:44Z</updated>
			<id>https://linuxforum.ru/viewtopic.php?pid=336413#p336413</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Как собрать valgrind для ARM]]></title>
			<link rel="alternate" href="https://linuxforum.ru/viewtopic.php?pid=336396#p336396" />
			<content type="html"><![CDATA[<div class="quotebox"><cite>srg_btl⇓ пишет:</cite><blockquote><p>Отредактировал configure, заменил armv7* на arm*. Пробую:</p></blockquote></div><div class="quotebox"><cite>srg_btl⇓ пишет:</cite><blockquote><p>./configure --host=arm-none-linux-gnueabi --prefix=/home/valgrind</p></blockquote></div><p><strong>-none</strong> лишний</p><p>и для чистоты эксперимента пробуй начинать с чистого дерева...</p>]]></content>
			<author>
				<name><![CDATA[Fat-Zer]]></name>
				<uri>https://linuxforum.ru/profile.php?id=11911</uri>
			</author>
			<updated>2013-03-25T15:48:50Z</updated>
			<id>https://linuxforum.ru/viewtopic.php?pid=336396#p336396</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Как собрать valgrind для ARM]]></title>
			<link rel="alternate" href="https://linuxforum.ru/viewtopic.php?pid=336392#p336392" />
			<content type="html"><![CDATA[<div class="codebox"><pre><code>arm-linux-gnueabi-gcc -v

Using built-in specs.
Target: arm-linux-gnueabi
Configured with: ../src/configure -v --enable-languages=c,c++ --prefix=/usr --enable-shared --with-system-zlib --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --enable-nls --with-gxx-include-dir=/usr/arm-linux-gnueabi/include/c++/4.2.4 --program-suffix=-4.2 --enable-clocale=gnu --enable-libstdcxx-debug --disable-libssp --disable-sjlj-exceptions --enable-checking=release --program-prefix=arm-linux-gnueabi- --includedir=/usr/arm-linux-gnueabi/include --build=i486-linux-gnu --host=i486-linux-gnu --target=arm-linux-gnueabi
Thread model: posix
gcc version 4.2.4 (Debian 4.2.4-6)</code></pre></div><p>Отредактировал <strong>configure</strong>, заменил <strong>armv7*</strong> на <strong>arm*</strong>. Пробую:<br /></p><div class="codebox"><pre><code>./configure --host=arm-none-linux-gnueabi --prefix=/home/valgrind
(...)
Maximum build arch: arm
         Primary build arch: arm
       Secondary build arch: 
                   Build OS: linux
       Primary build target: ARM_LINUX
     Secondary build target: 
           Platform variant: vanilla
      Primary -DVGPV string: -DVGPV_arm_linux_vanilla=1
         Default supp files: exp-sgcheck.supp xfree-3.supp xfree-4.supp glibc-2.X-drd.supp glibc-2.34567-NPTL-helgrind.supp glibc-2.X.supp </code></pre></div><div class="codebox"><pre><code>make
echo &quot;# This is a generated file, composed of the following suppression rules:&quot; &gt; default.supp
echo &quot;# &quot; exp-sgcheck.supp xfree-3.supp xfree-4.supp glibc-2.X-drd.supp glibc-2.34567-NPTL-helgrind.supp glibc-2.X.supp  &gt;&gt; default.supp
cat exp-sgcheck.supp xfree-3.supp xfree-4.supp glibc-2.X-drd.supp glibc-2.34567-NPTL-helgrind.supp glibc-2.X.supp  &gt;&gt; default.supp
make  all-recursive
make[1]: Entering directory `/home/lifeline/valgrind-3.8.1&#039;
Making all in include
make[2]: Entering directory `/home/lifeline/valgrind-3.8.1/include&#039;
make[2]: Nothing to be done for `all&#039;.
make[2]: Leaving directory `/home/lifeline/valgrind-3.8.1/include&#039;
Making all in VEX
make[2]: Entering directory `/home/lifeline/valgrind-3.8.1/VEX&#039;
make  all-am
make[3]: Entering directory `/home/lifeline/valgrind-3.8.1/VEX&#039;
gcc -DHAVE_CONFIG_H -I. -I..  -I.. -I../include -I../VEX/pub -DVGA_arm=1 -DVGO_linux=1 -DVGP_arm_linux=1 -DVGPV_arm_linux_vanilla=1 -Ipriv  -m32 -mpreferred-stack-boundary=2 -O2 -g -Wall -Wmissing-prototypes -Wshadow -Wpointer-arith -Wstrict-prototypes -Wmissing-declarations -Wno-format-zero-length -fno-strict-aliasing -fno-builtin -marm -mcpu=cortex-a8 -Wbad-function-cast -Wcast-qual -Wcast-align -fstrict-aliasing -Wno-long-long  -Wno-pointer-sign -fno-stack-protector -MT libvex_arm_linux_a-main_globals.o -MD -MP -MF .deps/libvex_arm_linux_a-main_globals.Tpo -c -o libvex_arm_linux_a-main_globals.o `test -f &#039;priv/main_globals.c&#039; || echo &#039;./&#039;`priv/main_globals.c
`-mcpu=&#039; is deprecated. Use `-mtune=&#039; or &#039;-march=&#039; instead.
cc1: error: unrecognized command line option &quot;-marm&quot;
priv/main_globals.c:1: error: bad value (cortex-a8) for -mtune= switch
make[3]: *** [libvex_arm_linux_a-main_globals.o] Error 1
make[3]: Leaving directory `/home/lifeline/valgrind-3.8.1/VEX&#039;
make[2]: *** [all] Error 2
make[2]: Leaving directory `/home/lifeline/valgrind-3.8.1/VEX&#039;
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/home/lifeline/valgrind-3.8.1&#039;
make: *** [all] Error 2</code></pre></div>]]></content>
			<author>
				<name><![CDATA[srg_btl]]></name>
				<uri>https://linuxforum.ru/profile.php?id=29019</uri>
			</author>
			<updated>2013-03-25T15:22:54Z</updated>
			<id>https://linuxforum.ru/viewtopic.php?pid=336392#p336392</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Как собрать valgrind для ARM]]></title>
			<link rel="alternate" href="https://linuxforum.ru/viewtopic.php?pid=336354#p336354" />
			<content type="html"><![CDATA[<div class="quotebox"><cite>srg_btl⇓ пишет:</cite><blockquote><p>1) Устанавливаю компилятор arm-linux-gnueabi-gcc:</p></blockquote></div><p>по идее с ним не должен заработать... valgrind портирован только под armv7 (cortex&#039;овские ядра)<br />покажи на всякий пожарный <strong>arm-linux-gnueabi-gcc -v</strong>.</p><p>у меня собрался для armv7a-hardfloat-linux-gnueabi. тулчейн собрал гентушным crossdev&#039;ом. где такой под deb-дистры такой взять я с ходу не скажу...<br />под qemu в user-mod&#039;е запускается, но падает на exec()&#039;е. полноценную виртуалку для теста оборудовать мне лень...</p><div class="quotebox"><cite>srg_btl⇓ пишет:</cite><blockquote><p>./configure --target=arm-none-linux-gnueabi --host=i686-linux</p></blockquote></div><p>нет, это собрался обычный valgrind под x86.<br />надо <strong>./configure --host=arm-none-linux-gnueabi</strong>. <br />но скорей всего выдаст ошибку, что такая архитектура не поддерживается... <br />можно подправить ./configure, но тогда скорей всего всё равно не соберётся...</p><p>ЗЫ: ещё при сборки надо указывать какой-нть --prefix, чтобы make install не загаживал систему...</p>]]></content>
			<author>
				<name><![CDATA[Fat-Zer]]></name>
				<uri>https://linuxforum.ru/profile.php?id=11911</uri>
			</author>
			<updated>2013-03-25T13:40:47Z</updated>
			<id>https://linuxforum.ru/viewtopic.php?pid=336354#p336354</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Как собрать valgrind для ARM]]></title>
			<link rel="alternate" href="https://linuxforum.ru/viewtopic.php?pid=336332#p336332" />
			<content type="html"><![CDATA[<p>Итак, значит опишу свои шаги:<br />1) Устанавливаю компилятор arm-linux-gnueabi-gcc:<br /></p><div class="codebox"><pre><code>export CROSS_COMPILE=arm-linux-gnueabi-
export ARCH=armel

echo &quot;deb http://www.emdebian.org/debian/ lenny main&quot; &gt;&gt; /etc/apt/sources.list
apt-get update
apt-get install gcc-4.3-arm-linux-gnueabi</code></pre></div><p>2) Пробую скомпилировать с помощью этого компилятора исходник <a href="http://valgrind.org/docs/manual/quick-start.html#quick-start.interpret">http://valgrind.org/docs/manual/quick-s … .interpret</a><br /></p><div class="codebox"><pre><code>arm-linux-gnueabi-gcc -g -o0 main.c -o run_arm
./run_arm 

bash: ./run_arm: cannot execute binary file</code></pre></div><p>Как понимаю все хорошо раз бинарник не запускаеться (т.к. он предназначен для АРМ-архитектуры</p><p>3) Устанавливаю valgrind:<br /></p><div class="codebox"><pre><code>./configure --target=arm-none-linux-gnueabi --host=i686-linux
make
make install</code></pre></div><p>Все нормально устанавливаеться.</p><p>4) Пробую потестить свой бинарник<br /></p><div class="codebox"><pre><code>valgrind --leak-check=yes ./run_arm
valgrind: failed to start tool &#039;memcheck&#039; for platform &#039;arm-linux&#039;: No such file or directory</code></pre></div><p>Бинарники собраные для нашей платформы тестяться нормально.</p><p>Какие параметры нужно указать в ./configure ?</p>]]></content>
			<author>
				<name><![CDATA[srg_btl]]></name>
				<uri>https://linuxforum.ru/profile.php?id=29019</uri>
			</author>
			<updated>2013-03-25T13:04:32Z</updated>
			<id>https://linuxforum.ru/viewtopic.php?pid=336332#p336332</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Как собрать valgrind для ARM]]></title>
			<link rel="alternate" href="https://linuxforum.ru/viewtopic.php?pid=335970#p335970" />
			<content type="html"><![CDATA[<div class="quotebox"><cite>srg_btl⇓ пишет:</cite><blockquote><p>Насколько я понимаю 1 параметр - это для какой машины собирается, 2 - на какой (т.е. мы используем i686-linux), 3 - немного не понятный, ну и 4 это мы указуем компилятор который будет собирать (в моем случае arm-linux-gcc)</p></blockquote></div><p>нет.... не так... практически до наоборот всё...<br />build - текущая система, на которой будет производиться сборка (обычно угадывается автоматически).<br />host - целевая система, на которой бинарники будут запускаться.<br />target - используется только при сборке тулчейна для кросс-компиляции.</p><div class="quotebox"><cite>srg_btl⇓ пишет:</cite><blockquote><p>Лог файлы к сожалению залить не могу так как пишу с телефона.</p></blockquote></div><p>без логов дальше и говорить особо не о чем...</p>]]></content>
			<author>
				<name><![CDATA[Fat-Zer]]></name>
				<uri>https://linuxforum.ru/profile.php?id=11911</uri>
			</author>
			<updated>2013-03-23T17:29:34Z</updated>
			<id>https://linuxforum.ru/viewtopic.php?pid=335970#p335970</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Как собрать valgrind для ARM]]></title>
			<link rel="alternate" href="https://linuxforum.ru/viewtopic.php?pid=335923#p335923" />
			<content type="html"><![CDATA[<p>Использую Debian, да кросс-компиляция, собрал gcc для ARM как описано по этой ссылке: <a href="https://code.google.com/p/uos-embedded/wiki/gcc_arm_ru">https://code.google.com/p/uos-embedded/wiki/gcc_arm_ru</a>.<br />Немного покопался по документации и немного запутался в параметрах <br /></p><div class="codebox"><pre><code>--target=
--host=
--build=
CC=</code></pre></div><p>Насколько я понимаю 1 параметр - это для какой машины собирается, 2 - на какой (т.е. мы используем i686-linux), 3 - немного не понятный, ну и 4 это мы указуем компилятор который будет собирать (в моем случае arm-linux-gcc)</p><p>Вот несколько ссылок по которым пробовал собирать:<br /><a href="http://blog.galemin.com/2010/10/how-to-build-valgrind-3-6-0-for-beagleboard-xm-on-ubuntu/">http://blog.galemin.com/2010/10/how-to- … on-ubuntu/</a><br /><a href="http://embetek.blogspot.com/2011/10/valgrind-for-arm.html">http://embetek.blogspot.com/2011/10/val … r-arm.html</a><br /><a href="http://www.mail-archive.com/valgrind-users@lists.sourceforge.net/msg01812.html">http://www.mail-archive.com/valgrind-us … 01812.html</a><br /><a href="https://sites.google.com/a/sangjin.info/information/valgrind-for-arm">https://sites.google.com/a/sangjin.info … nd-for-arm</a></p><p>Лог файлы к сожалению залить не могу так как пишу с телефона. <br />Если можно то на примере ARM9. Спасибо</p>]]></content>
			<author>
				<name><![CDATA[srg_btl]]></name>
				<uri>https://linuxforum.ru/profile.php?id=29019</uri>
			</author>
			<updated>2013-03-23T14:43:43Z</updated>
			<id>https://linuxforum.ru/viewtopic.php?pid=335923#p335923</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Как собрать valgrind для ARM]]></title>
			<link rel="alternate" href="https://linuxforum.ru/viewtopic.php?pid=335791#p335791" />
			<content type="html"><![CDATA[<p>рассказывай по порядку:<br />гда сборка происходит? кросс-компиляция? нативная? qemu?<br />если кросс-компиляция, то откуда тулчейн взял? тот же вопрос, про qemu, как настроил?</p><div class="quotebox"><cite>srg_btl⇓ пишет:</cite><blockquote><p>Находил некоторые руководства, но никак: то ошибки во время configure, то во время make. Сейчас все не перечислю.</p></blockquote></div><p>какие руководства? что делал? какие ошибки? лучше давай полные логи действий/сборки с нуля...</p><p>ну и для общей инфы: что за девайс?</p>]]></content>
			<author>
				<name><![CDATA[Fat-Zer]]></name>
				<uri>https://linuxforum.ru/profile.php?id=11911</uri>
			</author>
			<updated>2013-03-23T07:23:15Z</updated>
			<id>https://linuxforum.ru/viewtopic.php?pid=335791#p335791</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Как собрать valgrind для ARM]]></title>
			<link rel="alternate" href="https://linuxforum.ru/viewtopic.php?pid=335773#p335773" />
			<content type="html"><![CDATA[<p>В общем вопрос описан в теме. Находил некоторые руководства, но никак: то ошибки во время configure, то во время make. Сейчас все не перечислю.</p><p> Программирую на i686, но целевая машина работает на ARM архитектуре. В общем что мне понадобиться для этого?</p>]]></content>
			<author>
				<name><![CDATA[srg_btl]]></name>
				<uri>https://linuxforum.ru/profile.php?id=29019</uri>
			</author>
			<updated>2013-03-22T22:19:29Z</updated>
			<id>https://linuxforum.ru/viewtopic.php?pid=335773#p335773</id>
		</entry>
</feed>
