[CMake] Using CMake with ifort compiler
Alain Leblanc
aalebl at gmail.com
Thu May 3 10:26:23 EDT 2012
The cmake documentation for add_subdirectory() states that the
CMakeLists files in the subdirectories should contain their own
project() command invocation. Your build file in the subdirectory does
not contain one. I don't know that it will be automatically be seen by
CMake as a fortran project because this is what the project in the top
directory is.
Also I don't see the need for the two project files. I know this is what
is done in the tutorial, but you could put everything in the project
file from the top directory.
On 5/3/12 9:25 AM, Vivek Venugopal wrote:
> Thanks Kelly.
>
> But i still get this error:
> CMake cannot determine linker language for target:helloworld
>
> Thanks,
> Vivek
>
>
> --
> Vivek Venugopal
>
>
> On May 2, 2012, at 6:36 PM, "Thompson, Kelly G" <kgt at lanl.gov
> <mailto:kgt at lanl.gov>> wrote:
>
>> My bad. You need to tell CMake that this is a Fortran project. Try
>> this:
>>
>> # CMakeLists.txt
>>
>> cmake_minimum_required(VERSION 2.8.7)
>>
>> *project(helloworldproject Fortran)*
>>
>> add_subdirectory(src)
>>
>> # src/CMakeLists.txt
>>
>> cmake_minimum_required(VERSION 2.8.7)
>>
>> file(GLOB helloworld_SOURCES *.f90)
>>
>> add_executable(helloworld ${helloworld_SOURCES})
>>
>> -kt
>>
>> *From:*Vivek Venugopal [mailto:vivek.v80 at gmail.com]
>> *Sent:* Wednesday, May 02, 2012 11:45 AM
>> *To:* Thompson, Kelly G
>> *Subject:* Re: [CMake] Using CMake with ifort compiler
>>
>> I see an error during generate:
>>
>> CMake Error: CMake cannot determine linker language for target:helloworld
>>
>> CMake Error: Cannot determine link language for target "helloworld"
>>
>> --
>>
>> Vivek Venugopal
>>
>>
>>
>>
>> On May 2, 2012, at 12:45 PM, "Thompson, Kelly G" <kgt at lanl.gov
>> <mailto:kgt at lanl.gov>> wrote:
>>
>> Try this:
>>
>> # CMakeLists.txt
>>
>> cmake_minimum_required(VERSION 2.8.7)
>>
>> *project(helloworldproject)*
>>
>> add_subdirectory(src)
>>
>> # src/CMakeLists.txt
>>
>> cmake_minimum_required(VERSION 2.8.7)
>>
>> file(GLOB helloworld_SOURCES *.f90)
>>
>> add_executable(helloworld ${helloworld_SOURCES})
>>
>> -kt
>>
>> *From:*cmake-bounces at cmake.org <mailto:cmake-bounces at cmake.org>
>> [mailto:cmake-bounces at cmake.org]
>> <mailto:[mailto:cmake-bounces at cmake.org]> *On Behalf Of *Vivek
>> Venugopal
>> *Sent:* Wednesday, May 02, 2012 9:39 AM
>> *To:* cmake at cmake.org <mailto:cmake at cmake.org>
>> *Subject:* [CMake] Using CMake with ifort compiler
>>
>>
>> I am using CMake 2.8.7 on a Linux machine with Intel 11.0
>> compilers. I am trying to use CMake for the first time as I would
>> like to build this project on both Windows and Linux machines.
>>
>> I though of using a simple approach first and used a standard
>> Hello World example: My src/HelloWorld.f90:
>>
>>
>>
>> |!Test helloworld in Fortran using Cmake|
>>
>> |program hello|
>>
>> | print *, "Hello World!"|
>>
>> |end program hello|
>>
>> My main CMakeLists.txt:
>>
>>
>>
>> |# States that CMake required version must be greater than 2.8.7|
>>
>> |cmake_minimum_required(VERSION 2.8.7)|
>>
>> |enable_language (Fortran)|
>>
>> |project(helloworld Fortran)|
>>
>> |add_subdirectory(src)|
>>
>> |SET_TARGET_PROPERTIES(helloworld PROPERTIES LINKER_LANGUAGE FORTRAN)|
>>
>> My src/CMakeLists.txt:
>>
>>
>>
>> |cmake_minimum_required(VERSION 2.8.7)|
>>
>> | |
>>
>> |# Include the directory itself as a path to include directories|
>>
>> |set(CMAKE_INCLUDE_CURRENT_DIR ON)|
>>
>> | |
>>
>> |# For a large number of source files you can create it in a simpler way|
>>
>> |# using file() function:|
>>
>> |file(GLOB helloworld_SOURCES *.f90)|
>>
>> I still get an error which says CMAKE_FORTRAN_LINK_EXECUTABLE
>> variable missing. I looked at Abinader's CMake tutorial#1
>> <http://www.abinader.com.br/bruno/how-cmake-simplifies-the-build-process-part-1-basic-build-system/>,
>> but haven't had success so far.
>>
>> any suggestions?? Thanks in advance !
>>
>> ?]????B?
?[?
?
[OH???\?^?N?L?\
??Y?[Z[
N??][??\?X[ ?][?? ?][???[??\?\?Y??][?o(?[?H
?Y??\?[????[???[?Y
?[??HO??[?????????B??]??B??]??B??]??B?????][?O?B??]??B??]??B???
O?B??
[?B
>
>
> --
>
> Powered by www.kitware.com
>
> Visit other Kitware open-source projects at http://www.kitware.com/opensource/opensource.html
>
> Please keep messages on-topic and check the CMake FAQ at: http://www.cmake.org/Wiki/CMake_FAQ
>
> Follow this link to subscribe/unsubscribe:
> http://www.cmake.org/mailman/listinfo/cmake
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.cmake.org/pipermail/cmake/attachments/20120503/59d8a5c9/attachment-0001.htm>
More information about the CMake
mailing list