This repository was archived by the owner on Oct 3, 2024. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 1
WINBUILD FAIL #49
Copy link
Copy link
Open
Description
Для начала немного опишу процесс установки UniSched на чистую Windows XP.
Что надо скачать (одна из возможных конфигураций):
- git (http://msysgit.googlecode.com/files/Git-1.7.4-preview20110204.exe)
- MinGW (http://sourceforge.net/projects/mingw/files/Installer/mingw-get-inst)
- CMake (http://www.cmake.org/files/v2.8/cmake-2.8.8-win32-x86.exe)
- Boost
- Lua (http://luaforwindows.googlecode.com/files/LuaForWindows_v5.1.4-45.exe)
- readline (http://gnuwin32.sourceforge.net/packages/readline.htm)
- dlfcn-win32 (http://dlfcn-win32.googlecode.com/files/dlfcn-win32-static-r8.tar.bz2)
Ставим все следующим образом:
Z:/include/boost
Z:/MinGW
Z:/MinGW/include <-- .h / .hpp (herader)
Z:/MinGW/lib <-- .lib / .dll
Прописываем в PATH пути к Z:/MinGW/bin, "Z:/CMake 2.8/bin", Z:/Git/bin .
Конфигурируем CMake:
Снимаем все флаги (пока что пытаемся собрать по-минимуму).
Задаем значения для переменных:
- CMAKE_INSTALL_PREFIX = Z:/build
- Boost_DIR = Z:/include/boost
- READLINE_INCLUDE_DIR = Z/MinGW/include
- READLINE_LIBRARY = Z/MinGW/lib
- LUA_INCLUDE_DIR = Z/MinGW/include
- LUA_LIBRARY = Z/MinGW/lib
Клонируем репозиторий в Z:/UniSched .
CMake'у указываем опцию генерирования Makefile'а под MinGW (-G MinGW).
Запускаем mingw32-make.exe из директории Z:/build .
Если ничего не забыли, сразу получаем ошибку:
...
Creating library file: libcore.dll.a
CMakeFiles\core.dir/objects.a(abstractui.cpp.obj):abstractui.cpp:(.text+0x1f50):
undefined reference to `setenv(char const*, char const*, int)'
CMakeFiles\core.dir/objects.a(module.cpp.obj):module.cpp:(.text+0x1b2): undefine
d reference to `setenv(char const*, char const*, int)'
CMakeFiles\core.dir/objects.a(module.cpp.obj):module.cpp:(.text+0x444): undefine
d reference to `dlopen(char const*, int)'
CMakeFiles\core.dir/objects.a(module.cpp.obj):module.cpp:(.text+0x452): undefine
d reference to `dlerror()'
CMakeFiles\core.dir/objects.a(module.cpp.obj):module.cpp:(.text+0x4ac): undefine
d reference to `dlsym(void*, char const*)'
CMakeFiles\core.dir/objects.a(module.cpp.obj):module.cpp:(.text+0x4ba): undefine
d reference to `dlerror()'
CMakeFiles\core.dir/objects.a(module.cpp.obj):module.cpp:(.text+0x507): undefine
d reference to `dlclose(void*)'
CMakeFiles\core.dir/objects.a(module.cpp.obj):module.cpp:(.text+0x6cd): undefine
d reference to `dlclose(void*)'
collect2: ld returned 1 exit status
mingw32-make[2]: *** [src/core/libcore.dll] Error 1
mingw32-make[2]: Leaving directory `Z:/build'
mingw32-make[1]: *** [src/core/CMakeFiles/core.dir/all] Error 2
mingw32-make[1]: Leaving directory `Z:/build'
mingw32-make: *** [all] Error 2
mingw32-make: Leaving directory `Z:/build'