Program won't link

Questions about Wine on Linux
Locked
blake1024
Level 1
Level 1
Posts: 5
Joined: Thu Nov 26, 2015 12:37 am

Program won't link

Post by blake1024 »

Greetings,

I have a Win32 application that was used for about 20 years in a commercial aplication.
I previously ported it to Wine many years ago. It worked fine.
I am now trying to refresh that port in 64-bit mode.

Wine 8.19
Fedora 38 64-bit Linux


I am building everything in 64 bits.

I am also using:

#define WINVER 0x0501
#define _WIN32_WINNT 0x0501



Everything compiles with no errors and I am able to build my libraries. However,
when I link I get:

Code: Select all

winegcc -I../../include -I/home/blake/Dynace/include -I/usr/include/wine/windows -I/usr/include/wine/msvcrt -fPIC -D_WINDOWS -D_WIN32 -D__WINE__ -fno-builtin -g -c main.c
echo '#include <winuser.h>' >temp.rc
echo '#include <commctrl.h>' >>temp.rc
cat main.rc >>temp.rc
wrc temp.rc
rm -f temp.rc
mv temp.res main.res
winegcc -g -o main main.o  main.res ../../lib/wds.a /home/blake/Dynace/lib/dynace.a -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lcomctl32 -ladvapi32 -lshell32 -lmpr -lmsvcrt -lmsimg32 -lm 
/usr/bin/ld: /usr/bin/../lib64/wine/x86_64-unix/libmsvcrt.a(msvcrt-000003ea.o): warning: relocation against `__wine$func$msvcrt$1109$strtol' in read-only section `.text'
/usr/bin/ld: main.o: in function `_vsnprintf':
/usr/include/wine/msvcrt/stdio.h:176: undefined reference to `__stdio_common_vsprintf'
/usr/bin/ld: ../../lib/wds.a(Application.o): in function `sprintf':
Application.c:(.text+0xe22): undefined reference to `__stdio_common_vsprintf'
/usr/bin/ld: ../../lib/wds.a(TextControl.o): in function `sprintf':
TextControl.c:(.text+0x11a2): undefined reference to `__stdio_common_vsprintf'
/usr/bin/ld: ../../lib/wds.a(TextControl.o): in function `fprintf':
TextControl.c:(.text+0x26e4): undefined reference to `__stdio_common_vfprintf'
/usr/bin/ld: ../../lib/wds.a(NumericControl.o): in function `sprintf':
NumericControl.c:(.text+0x103f): undefined reference to `__stdio_common_vsprintf'
/usr/bin/ld: ../../lib/wds.a(NumericControl.o): in function `fprintf':
NumericControl.c:(.text+0x1ee5): undefined reference to `__stdio_common_vfprintf'
/usr/bin/ld: ../../lib/wds.a(DateControl.o): in function `sprintf':
DateControl.c:(.text+0xea0): undefined reference to `__stdio_common_vsprintf'
/usr/bin/ld: ../../lib/wds.a(DateControl.o): in function `fprintf':
DateControl.c:(.text+0x2c73): undefined reference to `__stdio_common_vfprintf'
/usr/bin/ld: ../../lib/wds.a(Font.o): in function `sprintf':
Font.c:(.text+0x906): undefined reference to `__stdio_common_vsprintf'
/usr/bin/ld: ../../lib/wds.a(PushButton.o): in function `sprintf':
PushButton.c:(.text+0x9eb): undefined reference to `__stdio_common_vsprintf'
/usr/bin/ld: ../../lib/wds.a(PushButton.o): in function `fprintf':
PushButton.c:(.text+0xce3): undefined reference to `__stdio_common_vfprintf'
/usr/bin/ld: ../../lib/wds.a(CheckBox.o): in function `sprintf':
CheckBox.c:(.text+0x6ef): undefined reference to `__stdio_common_vsprintf'
/usr/bin/ld: ../../lib/wds.a(CheckBox.o): in function `fprintf':
CheckBox.c:(.text+0x168d): undefined reference to `__stdio_common_vfprintf'
/usr/bin/ld: ../../lib/wds.a(RadioButton.o): in function `sprintf':
RadioButton.c:(.text+0xdcf): undefined reference to `__stdio_common_vsprintf'
/usr/bin/ld: ../../lib/wds.a(RadioButton.o): in function `fprintf':
RadioButton.c:(.text+0x1f90): undefined reference to `__stdio_common_vfprintf'
/usr/bin/ld: ../../lib/wds.a(ListBox.o): in function `sprintf':
ListBox.c:(.text+0x11ed): undefined reference to `__stdio_common_vsprintf'
/usr/bin/ld: ../../lib/wds.a(ListBox.o): in function `fprintf':
ListBox.c:(.text+0x3a18): undefined reference to `__stdio_common_vfprintf'
/usr/bin/ld: ../../lib/wds.a(ComboBox.o): in function `sprintf':
ComboBox.c:(.text+0x9f7): undefined reference to `__stdio_common_vsprintf'
/usr/bin/ld: ../../lib/wds.a(ComboBox.o): in function `fprintf':
ComboBox.c:(.text+0x372c): undefined reference to `__stdio_common_vfprintf'
/usr/bin/ld: ../../lib/wds.a(ScrollBar.o): in function `sprintf':
ScrollBar.c:(.text+0x1e9): undefined reference to `__stdio_common_vsprintf'
/usr/bin/ld: ../../lib/wds.a(HelpSystem.o): in function `sprintf':
HelpSystem.c:(.text+0x2d0): undefined reference to `__stdio_common_vsprintf'
/usr/bin/ld: ../../lib/wds.a(ToolBar.o): in function `sprintf':
ToolBar.c:(.text+0x1d2c): undefined reference to `__stdio_common_vsprintf'
/usr/bin/ld: ../../lib/wds.a(SpinControl.o): in function `sprintf':
SpinControl.c:(.text+0xea): undefined reference to `__stdio_common_vsprintf'
/usr/bin/ld: ../../lib/wds.a(StaticTextControl.o): in function `fprintf':
StaticTextControl.c:(.text+0xcd1): undefined reference to `__stdio_common_vfprintf'
/usr/bin/ld: ../../lib/wds.a(RectControl.o): in function `sprintf':
RectControl.c:(.text+0x225a): undefined reference to `__stdio_common_vsprintf'
/usr/bin/ld: ../../lib/wds.a(RectControl.o): in function `fprintf':
RectControl.c:(.text+0x2977): undefined reference to `__stdio_common_vfprintf'
/usr/bin/ld: ../../lib/wds.a(LineControl.o): in function `sprintf':
LineControl.c:(.text+0x1241): undefined reference to `__stdio_common_vsprintf'
/usr/bin/ld: ../../lib/wds.a(LineControl.o): in function `fprintf':
LineControl.c:(.text+0x1561): undefined reference to `__stdio_common_vfprintf'
/usr/bin/ld: ../../lib/wds.a(FunctionList.o): in function `sprintf':
FunctionList.c:(.text+0x3d): undefined reference to `__stdio_common_vsprintf'
/usr/bin/ld: ../../lib/wds.a(DatePicker.o): in function `sprintf':
DatePicker.c:(.text+0x272): undefined reference to `__stdio_common_vsprintf'
/usr/bin/ld: ../../lib/wds.a(TimeControl.o): in function `sprintf':
TimeControl.c:(.text+0x11b5): undefined reference to `__stdio_common_vsprintf'
/usr/bin/ld: ../../lib/wds.a(TimeControl.o): in function `fprintf':
TimeControl.c:(.text+0x2cea): undefined reference to `__stdio_common_vfprintf'
/usr/bin/ld: ../../lib/wds.a(readres.o): in function `sprintf':
readres.c:(.text+0x3d): undefined reference to `__stdio_common_vsprintf'
/usr/bin/ld: ../../lib/wds.a(Window.o): in function `sprintf':
Window.c:(.text+0x6789): undefined reference to `__stdio_common_vsprintf'
/usr/bin/ld: ../../lib/wds.a(Window.o): in function `laterTime':
Window.c:(.text+0xa6ac): undefined reference to `_stat64i32'
/usr/bin/ld: Window.c:(.text+0xa6d5): undefined reference to `_stat64i32'
/usr/bin/ld: ../../lib/wds.a(Window.o): in function `fprintf':
Window.c:(.text+0xf533): undefined reference to `__stdio_common_vfprintf'
/usr/bin/ld: ../../lib/wds.a(StaticControl.o): in function `sprintf':
StaticControl.c:(.text+0x637): undefined reference to `__stdio_common_vsprintf'
/usr/bin/ld: ../../lib/wds.a(Printer.o): in function `sprintf':
Printer.c:(.text+0xc8a): undefined reference to `__stdio_common_vsprintf'
/usr/bin/ld: ../../lib/wds.a(Printer.o): in function `sscanf':
Printer.c:(.text+0x17a6): undefined reference to `__stdio_common_vsscanf'
/usr/bin/ld: ../../lib/wds.a(TreeView.o): in function `sprintf':
TreeView.c:(.text+0x674): undefined reference to `__stdio_common_vsprintf'
/usr/bin/ld: ../../lib/wds.a(ImageControl.o): in function `sprintf':
ImageControl.c:(.text+0x1cd9): undefined reference to `__stdio_common_vsprintf'
/usr/bin/ld: ../../lib/wds.a(ImageControl.o): in function `fprintf':
ImageControl.c:(.text+0x2148): undefined reference to `__stdio_common_vfprintf'
/usr/bin/ld: ../../lib/wds.a(ShortcutMenu.o): in function `sprintf':
ShortcutMenu.c:(.text+0x283): undefined reference to `__stdio_common_vsprintf'
/usr/bin/ld: ../../lib/wds.a(GenericControl.o): in function `fprintf':
GenericControl.c:(.text+0x292): undefined reference to `__stdio_common_vfprintf'
/usr/bin/ld: /usr/bin/../lib64/wine/x86_64-unix/libmsvcrt.a(msvcrt-00000327.o): in function `abs':
(.text+0x0): undefined reference to `__wine$func$msvcrt$912$abs'
/usr/bin/ld: /usr/bin/../lib64/wine/x86_64-unix/libmsvcrt.a(msvcrt-00000333.o): in function `atoi':
(.text+0x0): undefined reference to `__wine$func$msvcrt$925$atoi'
/usr/bin/ld: /usr/bin/../lib64/wine/x86_64-unix/libmsvcrt.a(msvcrt-00000352.o): in function `floor':
(.text+0x0): undefined reference to `__wine$func$msvcrt$956$floor'
/usr/bin/ld: /usr/bin/../lib64/wine/x86_64-unix/libmsvcrt.a(msvcrt-0000037a.o): in function `isdigit':
(.text+0x0): undefined reference to `__wine$func$msvcrt$996$isdigit'
/usr/bin/ld: /usr/bin/../lib64/wine/x86_64-unix/libmsvcrt.a(msvcrt-00000380.o): in function `isspace':
(.text+0x0): undefined reference to `__wine$func$msvcrt$1002$isspace'
/usr/bin/ld: /usr/bin/../lib64/wine/x86_64-unix/libmsvcrt.a(msvcrt-000003a4.o): in function `memcmp':
(.text+0x0): undefined reference to `__wine$func$msvcrt$1038$memcmp'
/usr/bin/ld: /usr/bin/../lib64/wine/x86_64-unix/libmsvcrt.a(msvcrt-000003a5.o): in function `memcpy':
(.text+0x0): undefined reference to `__wine$func$msvcrt$1039$memcpy'
/usr/bin/ld: /usr/bin/../lib64/wine/x86_64-unix/libmsvcrt.a(msvcrt-000003a7.o): in function `memmove':
(.text+0x0): undefined reference to `__wine$func$msvcrt$1041$memmove'
/usr/bin/ld: /usr/bin/../lib64/wine/x86_64-unix/libmsvcrt.a(msvcrt-000003a9.o): in function `memset':
(.text+0x0): undefined reference to `__wine$func$msvcrt$1043$memset'
/usr/bin/ld: /usr/bin/../lib64/wine/x86_64-unix/libmsvcrt.a(msvcrt-000003ae.o): in function `pow':
(.text+0x0): undefined reference to `__wine$func$msvcrt$1048$pow'
/usr/bin/ld: /usr/bin/../lib64/wine/x86_64-unix/libmsvcrt.a(msvcrt-000003ca.o): in function `sprintf':
(.text+0x0): undefined reference to `__wine$func$msvcrt$1077$sprintf'
/usr/bin/ld: /usr/bin/../lib64/wine/x86_64-unix/libmsvcrt.a(msvcrt-000003d1.o): in function `strcat':
(.text+0x0): undefined reference to `__wine$func$msvcrt$1084$strcat'
/usr/bin/ld: /usr/bin/../lib64/wine/x86_64-unix/libmsvcrt.a(msvcrt-000003d3.o): in function `strchr':
(.text+0x0): undefined reference to `__wine$func$msvcrt$1086$strchr'
/usr/bin/ld: /usr/bin/../lib64/wine/x86_64-unix/libmsvcrt.a(msvcrt-000003d4.o): in function `strcmp':
(.text+0x0): undefined reference to `__wine$func$msvcrt$1087$strcmp'
/usr/bin/ld: /usr/bin/../lib64/wine/x86_64-unix/libmsvcrt.a(msvcrt-000003d6.o): in function `strcpy':
(.text+0x0): undefined reference to `__wine$func$msvcrt$1089$strcpy'
/usr/bin/ld: /usr/bin/../lib64/wine/x86_64-unix/libmsvcrt.a(msvcrt-000003dc.o): in function `strlen':
(.text+0x0): undefined reference to `__wine$func$msvcrt$1095$strlen'
/usr/bin/ld: /usr/bin/../lib64/wine/x86_64-unix/libmsvcrt.a(msvcrt-000003df.o): in function `strncmp':
(.text+0x0): undefined reference to `__wine$func$msvcrt$1098$strncmp'
/usr/bin/ld: /usr/bin/../lib64/wine/x86_64-unix/libmsvcrt.a(msvcrt-000003e0.o): in function `strncpy':
(.text+0x0): undefined reference to `__wine$func$msvcrt$1099$strncpy'
/usr/bin/ld: /usr/bin/../lib64/wine/x86_64-unix/libmsvcrt.a(msvcrt-000003e4.o): in function `strrchr':
(.text+0x0): undefined reference to `__wine$func$msvcrt$1103$strrchr'
/usr/bin/ld: /usr/bin/../lib64/wine/x86_64-unix/libmsvcrt.a(msvcrt-000003e6.o): in function `strstr':
(.text+0x0): undefined reference to `__wine$func$msvcrt$1105$strstr'
/usr/bin/ld: /usr/bin/../lib64/wine/x86_64-unix/libmsvcrt.a(msvcrt-000003ea.o): in function `strtol':
(.text+0x0): undefined reference to `__wine$func$msvcrt$1109$strtol'
/usr/bin/ld: /usr/bin/../lib64/wine/x86_64-unix/libmsvcrt.a(msvcrt-000003fc.o): in function `toupper':
(.text+0x0): undefined reference to `__wine$func$msvcrt$1127$toupper'
/usr/bin/ld: /usr/bin/../lib64/wine/x86_64-unix/libmsvcrt.a(msvcrt-00000408.o): in function `vsprintf':
(.text+0x0): undefined reference to `__wine$func$msvcrt$1139$vsprintf'
/usr/bin/ld: /usr/bin/../lib64/wine/x86_64-unix/libmsvcrt.a(msvcrt-0000042a.o): in function `wcstombs':
(.text+0x0): undefined reference to `__wine$func$msvcrt$1173$wcstombs'
/usr/bin/ld: warning: creating DT_TEXTREL in a shared object
collect2: error: ld returned 1 exit status
make: *** [makefile:51: main] Segmentation fault (core dumped)
$
I think I either have an include issue or a library issue. I'd sure appreciate any help.

Thanks!

Blake McBride
Locked