あなたはsvnのtrunkからOpenOCDとUSB JTAGアダプタを持っている幸運に構築する勇気があるならあなたのようなものが表示されます良いチャンスがある /bin/sh ../libtool --tag=CC --mode=link gcc -std=gnu99 -g -O2 -I/root/Distr/ftd2/libftd2xx0.4.16 -Wall -Wstrict-prototypes -Wformat-security -Wextra -Wno-unused-parameter -Wbad-function-cast -Wcast-align -Wredundant-decls -Werror -o openocd main.o libopenocd.la -ldl /root/Distr/ftd2/libftd2xx0.4.16/static_lib/libftd2xx.a.0.4.16 -lpthread libtool: link: gcc -std=gnu99 -g -O2 -I/root/Distr/ftd2/libftd2xx0.4.16 -Wall -Wstrict-prototypes -Wformat-security -Wextra -Wno-unused-parameter -Wbad-function-cast -Wcast-align -Wredundant-decls -Werror -o .libs/openocd main.o /root/Distr/ftd2/libftd2xx0.4.16/static_lib/libftd2xx.a.0.4.16 ./.libs/libopenocd.so -ldl -lpthread ./.libs/libopenocd.so: undefined reference to `FT_GetLatencyTimer' ./.libs/libopenocd.so: undefined reference to `FT_Close' ./.libs/libopenocd.so: undefined reference to `FT_SetBitMode' ./.libs/libopenocd.so: undefined reference to `FT_GetDeviceInfo' ./.libs/libopenocd.so: undefined reference to `FT_OpenEx' ./.libs/libopenocd.so: undefined reference to `FT_Read' ./.libs/libopenocd.so: undefined reference to `FT_SetTimeouts' ./.libs/libopenocd.so: undefined reference to `FT_SetVIDPID' ./.libs/libopenocd.so: undefined reference to `FT_Write' ./.libs/libopenocd.so: undefined reference to `FT_SetLatencyTimer' ./.libs/libopenocd.so: undefined reference to `FT_ListDevices' ./.libs/libopenocd.so: undefined reference to `FT_Purge'
ここであることを修正する方法は次のとおりです。
あなたは慎重にログの最初の数行を見れば、問題の原因はlibtoolの出力であることがわかります。 手動でスワップした場合。/ .libs / libopenocd.soとlibftd2xx.a.0.4.16コマンドでそれだけで正常に動作します。 私はopenocdに付属している障害のあるlibtoolスクリプトを修正しようといくつかの時間を費やしたが、finelly私はおそらく私が今までやった非常識パッチシェルスクリプトコードのalmore 9000の壊れたロジックを理解し、実装するにはあまりにも怠惰なことに気づきました。 したがって、OpenOCDのソースツリー(NOT / usr / libにあるもの)に問題がオープンlibtoolスクリプトを修正し、どこかneareライン8044移動します。 これらのような行を見つける: *) new_libs="$new_libs $deplib" ;; esac done compile_deplibs="$new_libs" compile_command="$compile_command $compile_deplibs" finalize_command="$finalize_command $finalize_deplibs"
これらの行は、このコードを追加するには、右後: if test x"$compile_command" = x"gcc -std=gnu99 -g -O2 -I/root/Distr/ftd2/libftd2xx0.4.16 -Wall -Wstrict-prototypes -Wformat-security -Wextra -Wno-unused-parameter -Wbad-function-cast -Wcast-align -Wredundant-decls -Werror -o @OUTPUT@ main.o /root/Distr/ftd2/libftd2xx0.4.16/static_lib/libftd2xx.a.0.4.16 ./.libs/libopenocd.so -ldl -lpthread"; then compile_command='gcc -std=gnu99 -g -O2 -I/root/Distr/ftd2/libftd2xx0.4.16 -Wall-Wstrict-prototypes -Wformat-security -Wextra -Wno-unused-parameter -Wbad-function-cast -Wcast-align -Wredundant-decls -Werror -o @OUTPUT@ main.o ./.libs/libopenocd.so /root/Distr/ftd2/libftd2xx0.4.16/static_lib/libftd2xx.a.0.4.16 -ldl -lpthread' fi
その上の行のような...または何かが適切に、ソースのレイアウトやバージョンを表します。 このMOD、すべてがうまくコンパイルする必要があります後、makeを実行します。 それはダムだった。 しかし、それは働いた! ああ、もう一つ。 また、このエラーが表示されます場合: openocd.texi:12: @include `version.texi': No such file or directory.
そしてちょうどこのコンテンツを持つファイルのdoc / version.texiを作成します。 @set UPDATED 20 January 2009 @set UPDATED-MONTH January 2009 @set EDITION 0.1.0 @set VERSION 0.1.0
Ufff ...私は彼らがこのソフトウェアの優れた作品に多くのバグが実装されない限り、それだと願っています。 この記事は、で公開されているハードウェア 、 Linuxの 。 |