Всем добра! Помогите пожалуйста откомпилить программу, ситуация такова что в новых проприетарных драйверах под графические карты отсутствует очень важная библиотека AMD ADL, что вместо нее для замены предложили АМДшники не ясно, библиотека не критична но важна - программы работающие с графикой работают и без нее но без нее они немогут управлять многими важными параметрами граф.карт - частотой вращения вентиляторов, частотами напряжениями и т.д. Данная библиотека выложена на сайте АМД в исходниках (Зайти туда с недавних пор можно только через VPN или Tor, наверно Роскомнадзор постарался) https://developer.amd.com/display-library-adl-sdk/ Скачиваю последнюю 10-ую версию, распаковываю, в папке ADLUTIL лежат сами исходники, В файле Linux build instructions.txt инструкция по компиляции:
makefile is for building in Linux environment. Run make to create executable file adlutil Run make clean to remove adlutil ( equivalent with rm adlutil)
Without the makefile, the easiest way to build this is to run the following command:
gcc main.c o adlutil DLINUX ldl I ../include/
-ldl (all lower cases), -I (capital i)
Результаты команды make: make: *** No targets specified and no makefile found. Stop.
Результаты команды gcc main.c -o adlutil.sln -DLINUX -ldl -I /home/user/ADL_SDK/include
In file included from ../include/adl_sdk.h:19:0,
from main.c:15:
../include/adl_structures.h:1757:2: error: unknown type name ‘wchar_t’
wchar_t strPathName[ADL_MAX_PATH];
^
../include/adl_structures.h:1759:2: error: unknown type name ‘wchar_t’
wchar_t strFileName[ADL_APP_PROFILE_FILENAME_LENGTH];
^
../include/adl_structures.h:1761:2: error: unknown type name ‘wchar_t’
wchar_t strTimeStamp[ADL_APP_PROFILE_TIMESTAMP_LENGTH];
^
../include/adl_structures.h:1763:2: error: unknown type name ‘wchar_t’
wchar_t strVersion[ADL_APP_PROFILE_VERSION_LENGTH];
^
../include/adl_structures.h:1775:5: error: unknown type name ‘wchar_t’
wchar_t strPathName[ADL_MAX_PATH];
^
../include/adl_structures.h:1777:5: error: unknown type name ‘wchar_t’
wchar_t strFileName[ADL_APP_PROFILE_FILENAME_LENGTH];
^
../include/adl_structures.h:1779:5: error: unknown type name ‘wchar_t’
wchar_t strTimeStamp[ADL_APP_PROFILE_TIMESTAMP_LENGTH];
^
../include/adl_structures.h:1781:5: error: unknown type name ‘wchar_t’
wchar_t strVersion[ADL_APP_PROFILE_VERSION_LENGTH];
^
../include/adl_structures.h:2554:13: error: unknown type name ‘bool’
bool qualityDetectionEnabled;
^
../include/adl_structures.h:2567:13: error: unknown type name ‘bool’
bool linkProtectionEnabled; // Read-only
^
main.c: In function ‘GetValue’:
main.c:814:17: warning: format ‘%d’ expects argument of type ‘int *’, but argument 4 has type ‘int’ [-Wformat=]
fscanf_s( file,"%32s %d\n", sField, 33, iValue);
^
main.c:814:17: warning: too many arguments for format [-Wformat-extra-args]
main.c: In function ‘GetHex’:
main.c:827:17: warning: format ‘%X’ expects argument of type ‘unsigned int *’, but argument 4 has type ‘int’ [-Wformat=]
fscanf_s( file,"%32s %X\n", sField, 33, iValue);
^
main.c:827:17: warning: too many arguments for format [-Wformat-extra-args]
main.c: In function ‘GetFloat’:
main.c:840:17: warning: format ‘%f’ expects argument of type ‘float *’, but argument 4 has type ‘int’ [-Wformat=]
fscanf_s( file,"%32s %f\n", sField, 33, fValue);
^
main.c:840:17: warning: too many arguments for format [-Wformat-extra-args]
Может поможет кто? Все необходимое для компиляции у меня установлено, чтото недумаю что АМД допустили где либо ошибки, но тем не менее чтото не так
И вот это место из библиотеки adl_structures.h на которой происходит ошибка
/////////////////////////////////////////////////////////////////////////////////////////////
///\brief Structure containing information about an application
///
/// This structure is used to store basic information of an application
/// \nosubgrouping
////////////////////////////////////////////////////////////////////////////////////////////
typedef struct _ADLApplicationDataX2
{
/// Path Name
wchar_t strPathName[ADL_MAX_PATH];
/// File Name
wchar_t strFileName[ADL_APP_PROFILE_FILENAME_LENGTH];
/// Creation timestamp
wchar_t strTimeStamp[ADL_APP_PROFILE_TIMESTAMP_LENGTH];
/// Version
wchar_t strVersion[ADL_APP_PROFILE_VERSION_LENGTH];
}ADLApplicationDataX2;