проект allegro5 в CLion, ld: ошибка библиотеки не найдена

Я делаю проект C++ и allegro5 для университета. Я скомпилировал библиотеку allegro, и, например, она хорошо работает в Xcode. Но я хотел сделать свой проект в CLion, и как только я пытаюсь собрать проект, включая аллегро, он выдает ошибку:

ld: library not found for -lallegro_acodec
clang: error: linker command failed with exit code 1 (use -v to see invocation)
make[2]: *** [TEST1] Error 1
make[1]: *** [CMakeFiles/TEST1.dir/all] Error 2
make: *** [all] Error 2

CMakeLists.txt:

cmake_minimum_required(VERSION 3.3)
project(TEST1)

set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11")

set(SOURCE_FILES main.cpp)
add_executable(TEST1 ${SOURCE_FILES})

INCLUDE_DIRECTORIES( /usr/local/Cellar/allegro/5.0.11/include )

LINK_DIRECTORIES( /usr/local/Cellar/allegro/5.0.11/lib )

TARGET_LINK_LIBRARIES(TEST1
        allegro_acodec
        allegro_audio
        allegro_color
        allegro_dialog
        allegro_image
        allegro_main
        allegro_memfile
        allegro_physfs
        allegro_primitives
        allegro_ttf
        allegro_font
        allegro)

основной.cpp:

#include <iostream>
#include <allegro5/allegro.h>

using namespace std;

int main(int argc, char **argv) {

    al_init();

    return 0;
}

Я работаю над OS X 10.11. Я не мог найти решение для моей проблемы. Я знаю, что allegro и CLion не так популярны. Может ли кто-нибудь помочь мне, что означает эта ошибка?


person marcin.qxv    schedule 25.10.2015    source источник
comment
Что находится в вашей папке /usr/local/Cellar/allegro/5.0.11/lib? .dylibс или .aс?   -  person WhiteViking    schedule 25.10.2015
comment
Есть .dylibs.   -  person marcin.qxv    schedule 25.10.2015


Ответы (1)


Вы должны выпустить link_directories до add_executable.

Из документации по link_directories:

Команда будет применяться только к целям, созданным после ее вызова.

person Tsyvarev    schedule 25.10.2015