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

cannot build task from release tarball task-3.0.0.tar.gz #3294

Closed
fjaell opened this issue Mar 26, 2024 · 6 comments
Closed

cannot build task from release tarball task-3.0.0.tar.gz #3294

fjaell opened this issue Mar 26, 2024 · 6 comments
Assignees

Comments

@fjaell
Copy link

fjaell commented Mar 26, 2024

$:/tmp> tar -xf task-3.0.0.tar.gz
$:/tmp> cmake -S task-3.0.0 -B build
-- Configuring C++17
-- System: Linux
-- Looking for libshared
-- Found libshared
-- Looking for SHA1 references
-- Looking for libuuid
-- Found libuuid
-- Configuring cmake.h
-- Rust Target: x86_64-unknown-linux-gnu
-- Using Corrosion as a subdirectory
error: failed to load manifest for workspace member /tmp/task-3.0.0/taskchampion/integration-tests

Caused by:
failed to read /tmp/task-3.0.0/taskchampion/integration-tests/Cargo.toml

Caused by:
No such file or directory (os error 2)
CMake Error at /tmp/build/_deps/corrosion-src/cmake/CorrosionGenerator.cmake:24 (execute_process):
execute_process failed command indexes:

1: "Child return code: 101"

Call Stack (most recent call first):
/tmp/build/_deps/corrosion-src/cmake/CorrosionGenerator.cmake:217 (_cargo_metadata)
/tmp/build/_deps/corrosion-src/cmake/Corrosion.cmake:1098 (_generator_add_cargo_targets)
src/tc/CMakeLists.txt:11 (corrosion_import_crate)

-- Configuring incomplete, errors occurred!
$:/tmp>

@djmitche
Copy link
Collaborator

Thanks! That definitely seems like a bug in Corrosion.

@jschleus mentioned that just removing the offending line, pointing to taskchampion/integration-tests, from Cargo.toml fixed the issue, so perhaps that's a good workaround. I'm not sure how to actually solve the issue.

@djmitche
Copy link
Collaborator

It looks like the fix to this is to just edit the Cargo.toml during the release process. I'll make a note of this in the release instructions, so the next patch release will hopefully work better!

@djmitche
Copy link
Collaborator

I suspect #3209 is the long-term fix here, by the way.

@Theblackcat98
Copy link

After following @djmitche instructions (removing line 7 of file task-3.0.0/Cargo.toml)
And creating a "/build" folder outside of task-3.0.0.
I was successfully able to run:
cmake -S task-3.0.0 -B build
and then finally:
cd build/ & make install


Although this is not a solution to the problem, it is the first instance of instructions for building from source which have worked for me. Hopefully it helps someone.

@djmitche
Copy link
Collaborator

What error did you get without creating build/? It was OK for me:

✖ sofia ~/tmp
⸩ rm -rf build
✖ sofia ~/tmp
⸩ vi task-3.0.0/Cargo.toml 
✖ sofia ~/tmp
⸩ cmake -S task-3.0.0 -B build
-- The C compiler identification is GNU 9.4.0
-- The CXX compiler identification is GNU 9.4.0
-- Detecting C compiler ABI info
...
-- Using Corrosion as a subdirectory
-- Configuring man pages
-- Configuring done (1.8s)
-- Generating done (0.0s)
-- Build files have been written to: /home/dustin/tmp/build

@djmitche djmitche moved this from Backlog to In progress in Taskwarrior Development Mar 31, 2024
@djmitche
Copy link
Collaborator

I've confirmed that the manual step in releasing.md results in a build-able tarball.

@Theblackcat98 if you can reproduce the requirement to create the build directory, please open a new issue.

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

No branches or pull requests

3 participants