مترجم صغير C (TCC) و Winsock؟
سؤال
هل يمكنني استخدام مكتبة المقبس من TCC؟ لا يمكنني العثور على أي إشارة إلى Winsock أو Sys/Socket.h في الدليل.
إذا كنت أتذكر بشكل صحيح ، كان Winsock جزءًا من نظام Windows SDK (؟) إذا كان الأمر كذلك ، فهل يمكنني ربط ذلك باستخدام TCC؟
المحلول
يجب أن تجرب هذا:
tiny_impdef winsock.dll -o winsock.def
tcc yourcode.c winsock.def -o yourcode.exe
نصائح أخرى
يستخدم
tiny_impdef.exe
لتصدير التعريفات من ملف DLL باستخدام سطر الأوامر:
tiny_impdef.exe wsock32.dll -o .\lib\wsock32.def
ستحتاج أيضًا إلى ملفات الرأس حتى تتضمن رمز المصدر الخاص بك. منها Mingw (مثل
winsock2.h
,ws2tcpip.h
,ws2spi.h
...) يمكن إعادة استخدامها مع TCC.
يمكن تنزيل برنامج التحويل البرمجي Mingw من هنا. فقط انسخ الرؤوس التي تحتاجها من Mingw'sinclude
دليل إلى TCC'sinclude\winapi
الدليل.في وقت التجميع ، ستحتاج إلى إخبار المترجم الذي تستخدمه مكتبة Windows Socket:
tcc.exe path\to\code.c -lwsock32 -o path\to\program.exe
tiny_impdef winsock.dll
نسخ winsock.def إلى lib/
يجري:
tcc -lwinsock yourcode.c -o yourcode.exe