Am 22.03.2013 08:14, schrieb Peter Rosin:
Hi Andreas!
On 2013-03-21 15:41, Andreas Otto wrote:
Hi,
the following code has an error:
I don't think so, see below...
# func_convert_core_msys_to_w32 ARG
# Convert file name or path ARG from MSYS format to w32 format. Return
# result in func_convert_core_msys_to_w32_result.
func_convert_core_msys_to_w32 ()
{
$opt_debug
# awkward: cmd appends spaces to result
func_convert_core_msys_to_w32_result=`( cmd //c echo "$1" ) 2>/dev/null |
$SED -e 's/[ ]*$//' -e "$lt_sed_naive_backslashify"`
}
#end: func_convert_core_msys_to_w32
I need "...cmd /c ..." to get my stuff compiled
*snip*
$ cygpath -V
cygpath (cygwin) 1.7.17
cygpath? If you are reporting the cygpath version and say that
you need "...cmd /c..." instead of "...cmd //c...", then it
sounds as if you have confused MSYS and Cygwin. The function
func_convert_core_msys_to_w32 should only be used when you
are using MSYS. It's not for Cygwin.
On Cygwin, it is best to use a Cygwin-hosted cross compiler.
If you want to run a MinGW-hosted compiler, it's best to
use MSYS. But you still can (if you obey the rules) use
a MinGW-hosted compiler from Cygwin, but in that case you
want to use func_convert_file_cygwin_to_w32.
My advise is that you read this chapter carefully:
http://www.gnu.org/software/libtool/manual/libtool.html#File-name-conversion
Cheers,
Peter
Hi,
I'm working on cygwin no MSYS
I've done a freash cygwin installation
I'm using ONLY tools from cygwin
I use the compiler
$ export | grep w64
declare -x CC="x86_64-w64-mingw32-gcc"
declare -x CXX="x86_64-w64-mingw32-g++"
I use the
--build=x86_64-w64-mingw32
everything ONLY from cygwin
compile....
$ make -j 2
(CDPATH="${ZSH_VERSION+.}:" && cd /home/dev1usr/Project/NHI1 && /bin/bash
/home/dev1usr/Project/NHI1/missing --run autoheader)
rm -f stamp-h1
touch /home/dev1usr/Project/NHI1/mqconfig.h.in
cd . && /bin/bash ./config.status mqconfig.h
config.status: creating mqconfig.h
config.status: mqconfig.h is unchanged
make all-recursive
make[1]: Entering directory `/build/dev1usr/Main/thread'
Making all in theLink
make[2]: Entering directory `/build/dev1usr/Main/thread/theLink'
Making all in sqlite
make[3]: Entering directory `/build/dev1usr/Main/thread/theLink/sqlite'
/bin/sh ../../libtool --tag=CC --mode=compile x86_64-w64-mingw32-gcc
-std=gnu99 -DHAVE_CONFIG_H -I. -I/home/dev1usr/Project/NHI1/theLink/sqlite
-I../.. -D_DEBUG -D_HAVE_SQLITE_CONFIG_H -g -Wall -Wcast-align -g -O2 -MT
libtmp_la-sqlite3.lo -MD -MP -MF .deps/libtmp_la-sqlite3.Tpo -c -o
libtmp_la-sqlite3.lo `test -f 'sqlite3.c' || echo
'/home/dev1usr/Project/NHI1/theLink/sqlite/'`sqlite3.c
/bin/sh ../../libtool --tag=CC --mode=compile x86_64-w64-mingw32-gcc
-std=gnu99 -DHAVE_CONFIG_H -I. -I/home/dev1usr/Project/NHI1/theLink/sqlite
-I../.. -D_DEBUG -D_HAVE_SQLITE_CONFIG_H -static -g -Wall -Wcast-align -g
-O2 -MT libtmps_la-sqlite3.lo -MD -MP -MF .deps/libtmps_la-sqlite3.Tpo -c -o
libtmps_la-sqlite3.lo `test -f 'sqlite3.c' || echo
'/home/dev1usr/Project/NHI1/theLink/sqlite/'`sqlite3.c
libtool: compile: x86_64-w64-mingw32-gcc -std=gnu99 -DHAVE_CONFIG_H -I.
-I/home/dev1usr/Project/NHI1/theLink/sqlite -I../.. -D_DEBUG
-D_HAVE_SQLITE_CONFIG_H -g -Wall -Wcast-align -g -O2 -MT libtmps_la-sqlite3.lo
-MD -MP -MF .deps/libtmps_la-sqlite3.Tpo -c
/home/dev1usr/Project/NHI1/theLink/sqlite/sqlite3.c -o libtmps_la-sqlite3.o
libtool: compile: x86_64-w64-mingw32-gcc -std=gnu99 -DHAVE_CONFIG_H -I.
-I/home/dev1usr/Project/NHI1/theLink/sqlite -I../.. -D_DEBUG
-D_HAVE_SQLITE_CONFIG_H -g -Wall -Wcast-align -g -O2 -MT libtmp_la-sqlite3.lo
-MD -MP -MF .deps/libtmp_la-sqlite3.Tpo -c
/home/dev1usr/Project/NHI1/theLink/sqlite/sqlite3.c -DDLL_EXPORT -DPIC -o
.libs/libtmp_la-sqlite3.o
/home/dev1usr/Project/NHI1/theLink/sqlite/sqlite3.c: In function
'memTracePrint':
/home/dev1usr/Project/NHI1/theLink/sqlite/sqlite3.c:63824:5: warning: unknown
conversion type character 'l' in format
/home/dev1usr/Project/NHI1/theLink/sqlite/sqlite3.c:63824:5: warning: too many
arguments for format
/home/dev1usr/Project/NHI1/theLink/sqlite/sqlite3.c:63826:5: warning: unknown
conversion type character 'l' in format
/home/dev1usr/Project/NHI1/theLink/sqlite/sqlite3.c:63826:5: warning: too many
arguments for format
/home/dev1usr/Project/NHI1/theLink/sqlite/sqlite3.c: In function
'memTracePrint':
/home/dev1usr/Project/NHI1/theLink/sqlite/sqlite3.c:63824:5: warning: unknown
conversion type character 'l' in format
/home/dev1usr/Project/NHI1/theLink/sqlite/sqlite3.c:63824:5: warning: too many
arguments for format
/home/dev1usr/Project/NHI1/theLink/sqlite/sqlite3.c:63826:5: warning: unknown
conversion type character 'l' in format
/home/dev1usr/Project/NHI1/theLink/sqlite/sqlite3.c:63826:5: warning: too many
arguments for format
mv -f .deps/libtmp_la-sqlite3.Tpo .deps/libtmp_la-sqlite3.Plo
/bin/sh ../../libtool --tag=CC --mode=link x86_64-w64-mingw32-gcc -std=gnu99
-D_HAVE_SQLITE_CONFIG_H -g -Wall -Wcast-align -g -O2 -o libtmp.la
libtmp_la-sqlite3.lo
mv -f .deps/libtmps_la-sqlite3.Tpo .deps/libtmps_la-sqlite3.Plo
/bin/sh ../../libtool --tag=CC --mode=link x86_64-w64-mingw32-gcc -std=gnu99
-D_HAVE_SQLITE_CONFIG_H -static -g -Wall -Wcast-align -g -O2 -static -o
libtmps.la libtmps_la-sqlite3.lo
libtool: link: ar cru .libs/libtmps.a libtmps_la-sqlite3.o
libtool: link: ranlib .libs/libtmps.a
libtool: link: ( cd ".libs" && rm -f "libtmps.la" && ln -s "../libtmps.la"
"libtmps.la" )
HANG
now with a littel bit debugging
$ sh -xv ../../libtool --tag=CC --mode=link x86_64-w64-mingw32-gcc
-std=gnu99 -D_HAVE_SQLITE_CONFIG_H -g -Wall -Wcast-align -g -O2 -o
libtmp.la libtmp_la-sqlite3.lo
+ func_dirname_result=
+ xdir=
+ test .libs/libtmp_la-sqlite3.o '!=' none
+ pic_object=.libs/libtmp_la-sqlite3.o
+ test '' = dlfiles
+ test '' = dlprefiles
+ libobjs+=' .libs/libtmp_la-sqlite3.o'
+ arg=.libs/libtmp_la-sqlite3.o
+ test none '!=' none
+ non_pic_object=.libs/libtmp_la-sqlite3.o
+ non_pic_objects+=' .libs/libtmp_la-sqlite3.o'
+ test -n .libs/libtmp_la-sqlite3.o
+ compile_command+=' .libs/libtmp_la-sqlite3.o'
+ finalize_command+=' .libs/libtmp_la-sqlite3.o'
+ test 0 -gt 0
+ test -n ''
+ test no = yes
+ oldlibs=
+ func_basename libtmp.la
+ func_basename_result=libtmp.la
+ outputname=libtmp.la
+ libobjs_save=' .libs/libtmp_la-sqlite3.o'
+ test -n PATH
+ eval 'shlib_search_path=`$ECHO' '"${PATH}"' '|' '$SED' ''\''s/:/' '/g'\''`'
shlib_search_path=`$ECHO "${PATH}" | $SED 's/:/ /g'`
$ECHO "${PATH}" | $SED 's/:/ /g'
+++ printf '%s\n' '/usr/local/bin:/usr/bin:/cygdrive/c/Program Files/Common
Files/Microsoft Shared/Windows
Live:/cygdrive/c/Windows/system32:/cygdrive/c/Windows:/cygdrive/c/Windows/System32/Wbem:/cygdrive/c/Windows/System32/WindowsPowerShell/v1.0:/cygdrive/c/Program
Files/Broadcom/Broadcom 802.11/Driver:/cygdrive/c/Program Files (x86)/ATI
Technologies/ATI.ACE/Core-Static'
+++ /usr/bin/sed 's/:/ /g'
++ shlib_search_path='/usr/local/bin /usr/bin /cygdrive/c/Program Files/Common
Files/Microsoft Shared/Windows Live /cygdrive/c/Windows/system32
/cygdrive/c/Windows /cygdrive/c/Windows/System32/Wbem
/cygdrive/c/Windows/System32/WindowsPowerShell/v1.0 /cygdrive/c/Program
Files/Broadcom/Broadcom 802.11/Driver /cygdrive/c/Program Files (x86)/ATI
Technologies/ATI.ACE/Core-Static'
+ eval 'sys_lib_search_path="/usr/x86_64-w64-mingw32/lib64'
/usr/x86_64-w64-mingw32/sys-root/mingw/lib '"'
sys_lib_search_path="/usr/x86_64-w64-mingw32/lib64
/usr/x86_64-w64-mingw32/sys-root/mingw/lib "
++ sys_lib_search_path='/usr/x86_64-w64-mingw32/lib64
/usr/x86_64-w64-mingw32/sys-root/mingw/lib '
+ eval 'sys_lib_dlsearch_path="/lib' '/usr/lib"'
sys_lib_dlsearch_path="/lib /usr/lib"
++ sys_lib_dlsearch_path='/lib /usr/lib'
+ func_dirname libtmp.la / ''
+ case ${1} in
+ func_dirname_result=
+ output_objdir=.libs
+ func_to_tool_file .libs/
+ :
+ case ,$2, in
+ func_convert_file_msys_to_w32 .libs/
+ :
+ func_to_host_file_result=.libs/
+ test -n .libs/
+ func_convert_core_msys_to_w32 .libs/
+ :
( cmd //c echo "$1" ) 2>/dev/null |
$SED -e 's/[ ]*$//' -e "$lt_sed_naive_backslashify"
++ /usr/bin/sed -e 's/[ ]*$//' -e 's|\\\\*|\\|g;s|/|\\|g;s|\\|\\\\|g'
HANG
=> are you convinced?
mfg AO