Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Recipe does not include "settings.compiler" #1

Open
amal-khailtash opened this issue Oct 4, 2021 · 4 comments
Open

Recipe does not include "settings.compiler" #1

amal-khailtash opened this issue Oct 4, 2021 · 4 comments

Comments

@amal-khailtash
Copy link

I used to have a conanfile.txt with this content:

SystemC/2.3.3@minres/stable
SystemC-CCI/1.0.0@minres/stable

Install:

$ conan install . --build=missing

Causes this error:

SystemC/2.3.3@minres/stable: Trying with 'conancenter'...
ERROR: Unable to find 'SystemC/2.3.3@minres/stable' in remotes

With the Jfrog binrtray change, I had to remove the minres remote and change the conanfile.txt to this:

systemc/2.3.3
systemc-cci/1.0.0

And try installing again:

$ conan install . --build=missing

Results this error:

ERROR: systemc/2.3.3: 'settings.compiler' value not defined

I am not sure what needs to change, but doing an inspect shows me this:

$ conan inspect systemc/2.3.3
name: systemc
version: 2.3.3
url: https://github.com/conan-io/conan-center-index
...
settings: ('os', 'arch', 'compiler', 'build_type')
...

It would be great to get the updated recipes and artifacts to get around this problem.

Regards,
-- Amal

@eyck
Copy link
Contributor

eyck commented Oct 4, 2021

JFrog canceled the bintray service. Since SystemC and CCI are available on conan-center we abandoned the packages. Using the conan center package it is highly advisable to update conan to at least version 1.34 or newer. Moreover you should run a

conan profile --detect --force default

to migrate the setting.
Actually we use those packages eg. at TGC-VP. In the HIFIVE1 VP you see how we used to use the conan center packages when using conanfile.txt

@amal-khailtash
Copy link
Author

amal-khailtash commented Oct 4, 2021

I have this:

$ conan --version
Conan version 1.40.3

$ conan profile --detect --force default
usage: conan profile [-h] {list,show,new,update,get,remove} ...
conan profile: error: argument subcommand: invalid choice: 'default' (choose from 'list', 'show', 'new', 'update', 'get', 'remove')
ERROR: Exiting with code: 2

I tried this, but it seems binary packages are not found.

$ conan install ../.. -s compiler=gcc -s compiler.version=4.8 -s compiler.cppstd=11 -s compiler.libcxx=libstdc++

conanfile.txt: Installing package
Requirements
    systemc/2.3.3 from 'conancenter' - Cache
    systemc-cci/1.0.0 from 'conancenter' - Cache
Packages
    systemc/2.3.3:f623881b8531d3b63e9d423ce2deb2ee83c2cc98 - Missing
    systemc-cci/1.0.0:cce498901f2ccfab8ed2fe11d806a9560ba8111a - Missing

Installing (downloading, building) binaries...
ERROR: Missing binary: systemc/2.3.3:f623881b8531d3b63e9d423ce2deb2ee83c2cc98
ERROR: Missing binary: systemc-cci/1.0.0:cce498901f2ccfab8ed2fe11d806a9560ba8111a

systemc/2.3.3: WARN: Can't find a 'systemc/2.3.3' package for the specified settings, options and dependencies:
- Settings: arch=x86_64, build_type=Release, compiler=gcc, compiler.cppstd=11, compiler.libcxx=libstdc++, compiler.version=4.8, os=Linux
- Options: disable_async_updates=False, disable_copyright_msg=False, disable_virtual_bind=False, enable_assertions=True, enable_immediate_self_notifications=False, enable_pthreads=False, fPIC=True, shared=False
- Dependencies: 
- Requirements: 
- Package ID: f623881b8531d3b63e9d423ce2deb2ee83c2cc98

ERROR: Missing prebuilt package for 'systemc/2.3.3', 'systemc-cci/1.0.0'
Try to build from sources with '--build=systemc --build=systemc-cci'
Use 'conan search <reference> --table table.html'
Or read 'http://docs.conan.io/en/latest/faq/troubleshooting.html#error-missing-prebuilt-package'

I could get around this issue with this:

$ conan install ../.. -s compiler=gcc -s compiler.version=4.8 -s compiler.cppstd=11 -s compiler.libcxx=libstdc++ --build=systemc --build=systemc-cci

Although, I am not sure how to fix the CMAKEFILE to add these options.

@eyck
Copy link
Contributor

eyck commented Oct 4, 2021

My bad, the command should read

conan profile new --detect --force default

(I missed to mention the new subcommand)

The question i show you use it in your CMakeLists.txt. You may use it from here: https://github.com/conan-io/cmake-conan where all settings become part of CMakeLists.txt
Or you update your profile (or re-create it) and just include the conanbuildinfo.cmake

@amal-khailtash
Copy link
Author

Thanks, but one more problem:

$ cmake -DCMAKE_BUILD_TYPE=Debug -DBUILD_SHARED_LIBS=ON ../..
...
ERROR: systemc-cci/1.0.0: Invalid configuration: Current cppstd (gnu98) is lower than the required C++ standard (11).
CMake Error at scc/cmake/Conan.cmake:64 (message):
  conan install command failed.
Call Stack (most recent call first):
  CMakeLists.txt:38 (setup_conan)

This seems to be systemc-cci/1.0.0 related.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants