Я пытаюсь использовать:
#include "Resource.h"
#ifdef __x86_64
IDR_D3D9X43 BINARY "D3DX9_43_64.dll"#else
IDR_D3D9X43 BINARY "D3DX9_43_32.dll"#endif
в моем файле ресурсов (.rc). Когда я компилирую для x64, он должен включать ресурс x64. Когда я компилирую для x32, он должен включать ресурс x32. Тем не менее, это не ..
Он компилируется с использованием:
x86_64-w64-mingw32-g++.exe -Wall -fexceptions -O2 -m64 -std=c++11 -c C:\Users\School\Desktop\TestLoader\main.cpp -o obj\Release\main.o
windres.exe --target=pe-x86-64 -J rc -O coff -i C:\Users\School\Desktop\TESTLO~1\RESOUR~1\Resource.rc -o obj\Release\Resources\Resource.res
x86_64-w64-mingw32-g++.exe -o bin\Release\TestLoader.exe obj\Release\main.o obj\Release\Resources\Resource.res -s -m64 -static -static-libgcc -static-libstdc++
Выходной файл — bin \ Release \ TestLoader.exe размером 3,02 МБ.
для компиляции x64 и использует:
x86_64-w64-mingw32-g++.exe -Wall -fexceptions -O2 -m32 -std=c++11 -c C:\Users\School\Desktop\TestLoader\main.cpp -o obj\Release\main.o
windres.exe --target=pe-i386 -J rc -O coff -i C:\Users\School\Desktop\TESTLO~1\RESOUR~1\Resource.rc -o obj\Release\Resources\Resource.res
x86_64-w64-mingw32-g++.exe -o bin\Release\TestLoader.exe obj\Release\main.o obj\Release\Resources\Resource.res -s -m32 -static -static-libgcc -static-libstdc++
для компиляции x32.
Любые идеи, почему это не включает в себя конкретный ресурс? Он всегда включает первый ресурс в верхней части файла .. он же x64.
Задача ещё не решена.
Других решений пока нет …